Всем привет, есть задача, например раз в минуту доставать из базы все документы с определенным статусом, обращаться по каждому к 3d party api - проверять не изменился ли у них статус, и если изменился, стучаться в еще одно 3d party api и обновлять их статус в бд. Решение в лоб - заскедулить кроном, доставать все доки и по каждому осуществлять необходимые действия - понятно. Но мне кажется это плохой путь, особенно если учесть, что кол-во таких документов может расти и до сотен, и до тысяч, а 3d party api позволяет проверить только статус одного документа за один запрос. Может кто-то встречал или знает какие-то более оптимальные и производительные решения подобных задач? Буду благодарен за любые наводки, спасибо. Из первого что приходит в голову - писать под это отдельный микросервис и скейлить инстансами в зависимости от количества доков, но раньше ничего подобного не делал
Доброго! Якщо в БД є щось типу "id" документів, то може варто глянути в сторону "витягуваннятільки id-шок". За умови великих документів, може вийти доволі великий трафік до обміну з БД. В ряді БД є "аналог" циклу - курсор і певні БД з "вміють" працювати з http-запитами як в ролі сервера, так і клієнта. І запускати "сервіс" мабуть варто "поближче" до БД, якщо контроль за ними є...