Я отвечаю за бэкэнд API, написанный на PHP, который в основном используется Flash-клиентом. Сейчас происходит следующее: клиент Flash выполняет вызов, серверная часть загружает необходимые данные, выполняет всю необходимую обработку и последующую обработку, ведение журнала и кэширование, а затем возвращает результат клиенту.
То, что я хотел бы, чтобы это произошло, - вернуть данные клиенту как можно скорее, закрыть соединение, а затем выполнить все то, что клиенту не нужно заботиться. Это может сделать API более гибким. Следуя предложениям здесь:
http://php.net/manual/en/features.connection-handling.php
на самом деле работает, за исключением того, что я должен отключить кодировку gzip, чтобы заставить это работать, что не очень практично. Мы используем mod_deflate в apache, поэтому решение, которое работает с этим, было бы идеальным, но я бы также рассмотрел другой метод для сжатия нашего контента, если это необходимо.
Это кажется как будто должен быть способ сообщить Apache: «Я отправил вам все данные, которые собираюсь отправить», но я не могу найти ничего подобного.
Для тех, кто интересуется, да, я могу сбросить результаты раньше, но клиент Flash не будет обрабатывать их, пока не будет закрыто соединение.