2010-01-15 42 views
4

假設我將隨機數據從PHP傳遞給瀏覽器。隨機數據的總量約爲XGb,並且回聲在YKb塊中完成。 ob_start()未使用。在PHP和Apache緩衝區已滿(客戶端無法以與生成的速度相同的速度消費數據)後,會不會呼叫回聲?如果是這樣,那麼PHP和Apache的緩衝區大小有多大?我的理解是否正確,過程如下:如何在PHP/Apache中輸出緩衝塊?

  • PHP echo將發送字節到php輸出緩衝區,直到它已滿。之後,回聲開始阻塞,直到某些緩衝區發送到Apache並因此被清除爲止
  • PHP正在從其輸出緩衝區發送數據,直到Apache緩衝區已滿。之後,Apache停止從PHP接收數據並等待,直到部分緩衝區被髮送到客戶端並被清除。

P.S.如果您對我將要實現的任務的愚蠢感到驚訝,我可以說,我正在爲適用於特定交通規則的專用服務器撰寫小流量平衡腳本(輸入/輸出流量比率應保持在一定值) 。

回答