3

Quartz を使用して 20 秒ごとにドメイン クラスをループする grails アプリがあります。

Quartz ジョブが実行されるたびに、Mongo への別の接続が確立されます。以前のものは何らかの理由で閉じられないため、11 回の接続の後、ジョブは動作を停止します (接続タイムアウト)。アクションで呼び出されるサービス メソッドで URL を呼び出すという別のアプローチを試みましたが、接続数は依然として増加し続けています。Quartz ジョブを実行せずに URL を繰り返し呼び出すと、新しい接続は 4 つしか作成されず、それ以上は作成されません。

これについてどうすればいいですか?

Grails 2.1.2、MongoDB プラグイン 1.1.0、Quartz 1.0

4

1 に答える 1

3

私にとっては、次の回避策で機能します。実行コードを[SomeDomain].withNewSession { }呼び出しでラップします。

Userドメインの例

def execute() {
   User.withNewSession {
      //your code
   }
}
于 2013-04-05T19:33:39.703 に答える