Я недавно создал систему webhook, основанную на триггерах в базе данных (PostgreSQL).
Когда действие выполняется, оно записывает в конкретную таблицу информацию о произошедшем.
Существует скрипт php, запускаемый через cron каждую минуту (минимально допустимое время), этот скрипт выполняет вызовы через cURL на адреса, настроенные для получения уведомлений через webhook.
Я создал триггеры на основе, потому что в системе есть несколько мест, в которые вводятся / изменяются данные, и сложно хранить в каждом из них специальный код для webhook.
Проблема в том, что cron запускается каждую минуту, а для получения важной информации одна минута может занять много времени для получения уведомлений.
Есть ли способ быстро прочитать эти данные из моей базы данных, не влияя на производительность приложения?
Некоторое время назад в проекте я пытался использовать LISTEN / NOTIFY в PostgreSQL + NodeJS, однако соединение базы данных с PostgreSQL + NodeJS было нестабильным, и после длительного периода соединения он отключился. Поэтому я решил не использовать его в текущем проекте.