Я работаю над проектом, который требует совершать несколько тысяч вызовов API Facebook в день. Все эти данные должны храниться в базе данных, которую затем может использовать веб-сайт на основе PHP Laravel. Тем не менее, я боюсь, что PHP не является подходящим языком для этого, потому что в основном я хочу делать столько звонков в час, сколько позволяет Facebook, но распределяется так, чтобы нагрузка была хорошей и сбалансированной.
Я слышал о Ruby в сочетании с Sidekiq, но я действительно не знаком с преимуществами и недостатками этого метода. Это то, что я ищу? Или есть другой подход, который бы лучше подходил моим потребностям?
Если вы хотите «shardability» (то есть вы хотите равномерно распределить нагрузку между несколькими процессами), то PHP на самом деле, вероятно, не тот язык. Но, я думаю, это зависит от того, сколько и насколько сложных вызовов вы пытаетесь обработать.
Я пошел для решения аналогичной задачи с комбинацией
Хорошая вещь об использовании NodeJS и MongoDB в качестве компонентов заключается в том, что они оба могут иметь дело с результатами JSON из Graph API внутренним способом, что означает, что вам не нужно обязательно каким-либо образом преобразовывать данные JSON перед использованием / хранением Это. Это хороший момент для скорости, и с асинхронной природой цикла событий NodeJS вы, вероятно, сможете справиться с гораздо большей нагрузкой, чем с процессом PHP.
Других решений пока нет …