1

cliでphpを実行するcronジョブがいくつかあり、それらは大量の新しいエンティティを作成して保存します。

私のスクリプトは非常に時間がかかっていたので、データを保存するためにDoctrineを使用する代わりに(永続化してからフラッシュ)、いくつかの単純なSQL挿入コマンドを記述し、パフォーマンスが大幅に向上しました。以前は15秒かかっていたものが0.3秒かかりました。

私はこれを見つけました:

http://www.doctrine-project.org/blog/doctrine-performance-revisited.html

したがって、この記事では基本的に、PDOは「オブジェクトの作成、結果行からのオブジェクトのハイドレーション、ID管理、変更の追跡、何も行わない」ため、DoctrineはPDOよりもはるかに優れていると述べています。

私のプロジェクトはDoctrineに大きく依存していて、それが大好きですが、一部のバッチ作業では非常に遅いので、大量の処理をしているときに、Doctrineに上記の良いことを一時的に行わないようにする方法があるかどうか疑問に思いました。データの。

言い換えれば、水分補給、ID管理、変更追跡などを時々オフにすることは可能ですか?または、必要に応じてSQLコマンドを引き続き使用することをお勧めしますか。

4

0 に答える 0