4

Suppose I am echoing random data from PHP to browser. Total amount of random data is about XGb and echo is done in YKb chunks. ob_start() is not used. Will echo calls block after PHP and Apache buffers are full (client is not capable of consuming data with the same speed it is generated)? If so, how much in size PHP and Apache buffers? Do I understand correctly, the process:

  • PHP echo is sending bytes to php output buffer until it is full. After that echo starts to block until some buffer is sent to Apache and thus cleared
  • PHP is sending data from it's output buffer until Apache buffer is full. After that Apache stops receiving data from PHP and waits, until part the buffer is sent to client and cleared.

P.S. If you are suprised by the stupidity of the task I am going to achieve, I can say, that I am writting small traffic balancing script for a dedicatied server with certain traffic rules applied (IN/OUT traffic ratio should be kept at certain value).

1 Answer 1

4

This can be related to the SendBufferSize Directive.

Maybe this will help http://fplanque.com/dev/linux/why-echo-is-slow-in-php-how-to-make-it-really-fast

Sign up to request clarification or add additional context in comments.

1 Comment

Yes, that clarifies thing a little. Thanks.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.