質問: 'error'){ console.log(json.message); $.eventsource('close', 'evt'); } } }); }); }); })(window.jquery, window, document); joomlaはすべてのエコーをバッファーに取り込み、出力をクライアントに提示します。これは、私が望んでいたものとは逆です。このバッファを回避してエコーをストリーミングする方法はありますか?
回答: デフォルトでは、joomlaはコントローラーを実行し、定義された方法でページをレンダリングして、単一の出力でのバッファリングを最適化します。ルーチンは異なる方法で機能し、出力とブラウザーチャネルを制御します。バッファリングの問題に加えて、長時間実行されるphpスクリプトの主な問題は、webサーバーのセッションタイムアウト(max_execution_time)です。詳細な手法でブラウザに定期的な出力を返す場合でも、セッションはmax_execution_timeより前にページが完了した場合は強制終了されます。max_execution_timeを定義できない場合、またはパフォーマンス上の理由でmax_execution_timeを短くする必要がある場合は、非同期コールバックでタスクを中断し、実行時間を共通のページと同じ順序に保つことをお勧めします。