Как организовать архитектуру проекта с 1000 api?

Подскажите как организовать проект если есть база и 1000+ endpoint api ( в каждом endpoint несколько десятков вызовов ) которые надо дёргать и наполнять эту базу.
Некоторые апи дёргать надо редко 1 раз в сутки , некоторые надо каждую секунду выполнять.
Есть которые выполняются по от 30 сек. и выше. Есть которые моментально отдают ответ.
Все api сторонние и повлиять на них нет возможности. Подскажите как лучше организовать проект.
У меня в голове только на каждый api делать свой скрипт и засовывать его в крон.
Но мне кажется эт не очень хорошим решением и соединения с базой будут на каждый скрипт и менеджерить всё это, думается, будет сложно, но как сделать лучше не могу придумать. :(
  • Вопрос задан
  • 986 просмотров
Пригласить эксперта
Ответы на вопрос 2
Gomonov
@Gomonov
Используйте очереди. Консьюмеры, обрабатывающие сообщения из очереди, будут держать соединение с бд, чего Вы так боитесь. Продюсеры могут вызываться из крона (определённое время запуска), а могут и из отдельного воркера (запуски через малые промежутки времени)
Ответ написан
Комментировать
@3draven
Есть готовые интеграционные системы типа tiid или апачевского них. Там все уже сделано. Либо можно взять брокер очередей типа кафки или рэббита и спокойно написать гору консюмеров продюссеров с переиспользованием кода...и свагеровским описанием клиентов что бы не помереть от бесконечного их описания...и у многих сервисов свагер готовый пошукать или на стороне что бы клиентов нагенерить.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы