0

重い処理を行うスクリプトがあります (コマンド ラインから実行します)。

このスクリプトはトランザクションを使用して、トランザクションが正常に完了するか、失敗した場合はデータベースをそのままにしておくようにします。

このスクリプトは、同じデータベースにもログを記録します。ログはリアルタイムである必要があり (ユーザーが進行状況を確認できるように Web サイトに表示するため)、データが処理されてトランザクションがコミット (またはロールバック) された後にログを収集して永続化することはできません。

私の質問は、Symfony 2.1 で同じデータベースに対して 2 つのエンティティ マネージャーを取得するにはどうすればよいですか?

私は、データベースへの 2 つの接続が必要であり、それぞれのログ挿入ステートメントを独自のトランザクションに配置し、別のトランザクションでデータ処理を行うことができるという前提で作業しています。

助けてくれてありがとう。ジェームズ・ベンチ

4

1 に答える 1

1

そのスクリプトで、データベースにデータを書き込むためのサブタスクと、ログを記録するためのサブタスクを作成できます。The Process Componentを使用できます。

于 2015-03-19T13:40:20.710 に答える