多くの人は、この問題は同期バックグラウンドプロセスのブロック、特に重いcronジョブに関連する可能性があることを示唆しています。
trueの場合、gielfeldt *が積極的に開発中のモジュールのペアが存在します。このモジュールは、この問題を完全に解決するか、少なくともいくつかの手がかりを提供し、サイトビルダーが特定の犯人を診断および治療するのに役立ちます。どちらもブロッキング同期のプロセスを非ブロッキング非同期HTTPまたはコマンドに置き換え、両方とも問題のあるプロセスを特定できる関連レポートを提供します。
- バックグラウンドプロセスとそのバンドルモジュールにより、Drupalのバックグラウンドプロセスキューを非同期で処理できるため、ブロックされません。これにより問題が停止する可能性があります。また、最新の開発にバンドルされたバックグラウンドプロセスApacheサーバーモジュールには、これらのプロセスの開始時間と進行状況を監視、ロック解除、検査する機能を備えた基本的で改善されたUIレポートがあります。これにより、問題のプロセスを特定できます。
- Ultimate Cronは、バックグラウンドプロセスに基づいて構築され、cronでトリガーされたタスクが独自の個別の非同期スケジュールを持つことができます。各非同期スケジュールは、UIで監視および停止できます。定期的な低オーバーヘッドクリーンアップからヘビーデューティパフォーマンスマッピングタスクを分離するのに最適であるだけでなく、個々のcronトリガータスクの実行時間、最後の実行日時、現在のステータス、これにより、問題のプロセスからブロックを削除したり、問題のプロセスを特定したりできます。
とにかく両方とも非常に便利なモジュールです。この問題のために、それらは、ブロッキングが同期ブロッキングプロセスまたはcronの実行によって引き起こされるという(非常にもっともらしい)理論をテストするために使用できます。潜在的には、これらを同期的にではなく非同期的に実行することで問題を解決でき、また、特定のプロセスがホールドアップを引き起こしていることについての手がかりを提供する可能性もあります。(彼らのドキュメントは非常に進行中の作業であることに注意してください...
ただし、まったく役立つように構成できない場合は、単なる同期バックグラウンドプロセス以上の問題があることを示唆しています。FWIW、これらのモジュールが適切に動作するようになったので、サイトでこの特定の問題は一度もありませんでした(しかし、木に触れます)-私は以前に自分のサイトで、そして野生のライブDrupalサイトでそれを見ました。
また、現在開発中の他の関連プラグインモジュールにも注意してください。たとえば、複雑な高強度の場合、しきい値ベースのスロットルを可能にするUltimate Cron Queue Scalerは、cron関連のパフォーマンスの問題を軽減するのに役立ちます。
* 所属なし、私は彼らの仕事に非常に感銘を受けたユーザーです