Возникла такая интересная задача. Нужен некий HTTP-демон (конвертер) который может сделать вот такое:
- На определенный урл поступает HTTP запрос;
- Конвертер сохраняет запрос вместе с его сокетом в буфер с определенным идентификатором (сохраняя открытым входящее HTTP соединение);
- Запрос с присоединенным идентификатором входящего запроса передается в модуль асинхронной обработки (обычный fastcgi который регистрирует запрос в очереди на обработку и закрывает коннект);
- По окончанию обработки, модуль асинхронной обработки отправляет на второй определенный урл (урл конвертера) через HTTP запрос, идентификатор входящего запроса из п.2 и результатирующий ответ на входящий запрос;
- Конвертер извлекает из буфера ждущих соединений нужный сокет и отдает в него полученный в п.4 ответ.
По идее, это задача очень подходящая для модуля nginx. Но я не слышал о существовании такого модуля. Может кто-то в курсе по этому поводу и может дать наводку?
Может есть другие решения такой задачи?