Sys-Admin Forum

Помогите с построением архитектуры веб-сервиса

прошу помочь с определением архитектуры процесса API с выборкой из БД

Суть в чем, есть шлюзы которые производят звонки. Когда очередь на конкретном шлюзе заканчивается - он обращается на API, которое в свою очередь берет новые коммуникации в базе данных и возвращает очередь. При этом в БД проставляется статус что эти контакты в работе.

Бывает такое, что на нескольких шлюзах одновременно заканчивается очередь и они обращаются одновременно на API, которое в свою очередь возвращает им одинаковые списки.

Сейчас я решил проблему тем, что под каждый шлюз создал отдельную папку, которая наполняется текстовыми файлами в офлайне, а потом шлюз через ftp берет эти файлы. Как по мне это ужасно неудобно и не гибко.

Помогите пожалуйста составить архитектуру такого процесса…

API написано на PHP, БД PostgreSQL Размер таблицы >2млн записей, первичный ключ номер телефона (строка)

Привет, это немного не совсем бизнес-процесс, но…

Я бы поставил перед твоим апи прокси или шлюз, который бы отдавал запрашиваемому сервису свободный ответ от апи ресурса.

Как у тебя оно там работает непонятно, поэтому для гибкости можно было бы написать простую обвязку, например на nodejs, который бы “разруливал” входящие запросы с фронта в зависимости от загруженности бэекэнда (твоего апи сервиса)

Самое верное в твоем взгляде на ситуацию - фтп прошлый век, да.