Мой веб-сервис Plack регистрирует через TCP-соединение с fluentD, и я хотел бы выполнить свой код регистрации после Я отправил ответ клиенту. Это уменьшит время отклика (предположим, что это сервис с большим объемом запросов, где такая оптимизация производительности стоит делать).
По крайней мере еще одна веб-платформа, экспресс для nodejs, поддерживает это, позволяя промежуточным программам добавлять обработчик события on-end для объекта запроса . Я посмотрел на интерфейсы Plack :: Request и Plack :: Response и не увидел аналогичного перехвата событий.
Я думаю, что смогувероятно, сделайте локальное переопределение метода finalize в моем промежуточном программном обеспечении, чтобы заставить фреймворк вести мою регистрацию после того, как ответ завершен, но я бы хотел, если это возможно, избежать работы с внутренностями Plack.
Есть ли лучший способ отложить выполнение некоторого кода до тех пор, пока клиенту не будет отправлен ответ?