私は現在、リアルタイム分析システムの一部を形成するイベント ログ システムに取り組んでいます。個々のイベントは、rpc を介してメイン アプリケーションから別のサーバーに送信されます。別のサーバーでは、apache で実行されている別の php スクリプトがイベント データを処理します。
現在、受信サーバーの PHP スクリプトは、イベント データを AMQP 交換/キューに渡します。ここから、Java アプリケーションがキューからイベントをポップし、それらをバッチ処理して、バッチ db 挿入を実行します。
これにより優れたスケーラビリティが提供されますが、コストは複雑だと思います。
私は今、物事を少し単純化しようとしているので、私の質問は次のとおりです。
AMQP キューを削除し、受信側サーバーの PHP スクリプト内から db にイベントのバッチ処理と挿入を直接実行することは可能でしょうか?
もしそうなら、イベントをバッチ処理するためにある種の中間データベースが必要ですか、それとも PHP 内からバッチ処理を行うことができますか?
前もって感謝します
編集:
時間を割いて回答していただきありがとうございます。具体的に説明してください。複数の http 要求を処理するように Apache で実行されている PHP スクリプトを構成することは可能ですか?
では、Apache が子プロセスを生成すると、これらのプロセスのそれぞれが、たとえば 1000 個の http リクエストを受け入れ、それらを処理してからシャットダウンするように構成されますか?