0

私はPlayFrameworkプロジェクトに慌てており、プロジェクトの一部では、指定された時間間隔で大量のデータを挿入する必要があります。

ここで2つの問題があります:

1-できるだけ早く一括挿入を完了する必要があります2-一括挿入ジョブが実行されている場合、サーバーの応答時間に大きく影響します。私はそれがplay-frameworkや私の問題であるかどうかわかりません。

これが私の現在の一括挿入コードです:

      org.hibernate.Session session = 
            (org.hibernate.Session)SomeEntityModel.em().getDelegate(); 
  Transaction tx = session.beginTransaction();
  int i = 0;
  for(Inventory o:inventories)
      {
        returnList.add(SomeEntityModel.getInstance(o));
          i++;
          if(i%100==0)
          {
              tx.commit();
              session.flush();
              session.clear();
              tx=session.beginTransaction();
          }
      }

getInstanceモデルは、「o」オブジェクトをエンティティモデルに変換します。

「o」オブジェクトはWebサービスから大量に取得されており、それらを「SomeEntityModel」に変換してからgetInstanceメソッドに保存します。

一括挿入メソッドを実行するためのより良い、より高速な方法があるかどうか、およびジョブの実行中にサーバーの応答時間を使用または最適化するためのより良い方法があるかどうかを知る必要があります。

助けてくれてありがとう。

4

1 に答える 1

1

アッカを見たことがありますか?Play 2.0で強力にサポートされています(使用している場合はPlay 1.xでモジュールがサポートされています)。Akkaは、ユースケースの1つがバッチ/バルクである高性能同時実行パッケージとして設計されています。

于 2012-06-30T12:19:11.167 に答える