Народ, вопрос такой - есть проект моего товарища, который дергает с удаленного европейского сайта результаты онлайн-игр. Делает он это простейшим способом - cron'ом раз в минуту опрашивает файлики, которые бьют запросы. Причем, ситуация такова, что в файле 1.php, например, есть главный запрос ко всем играм, а потом в цикле по каждой игре дополнительные запросы к урлу, который отдает дополнительные поля. Выходит, что в 1 файле может быть 20-30 запросов. Если взять за расчет 1 сек - 1 запрос, то получается порядка 20-30 секунд на один файл парсинга.
Теперь встала задача все это ускорить, так как еще одна игра у него может в 1 файле создавать до 100 запросов, а тут уже в минуту не получится запускаться - 1 файл будет исполняться по 2 минуты, примерно.
Первое, что приходит в голову - асинхронные или параллельные запросы (это одно и то же ведь?)
Парсинг у него написан на php, я почитал в интернете - php для параллельных запросов, говорят, не очень хорош. В связи с тем несколько вопросов:
1) Действительно ли не php решить эту задачу - дохлый номер? Или просто заморочено? Знаю, что есть библиотеки, вроде GuzzleHTTP, у того же curl есть curl_multi_exec и вообще библиотек, заявляющих об асинхронности прилично, но то ли это, что мы ищем?
2) Знаю, что для подобных задач хорош node.js, так ли это? И еще то же слышал о python, написать daemon'а на нем и в ус не дуть. Какая их технологий справляется с этой задачей лучше? Мне бы предпочтительнее python, я его немного читал в свое время.
longclaps, а что тут опасного? Тот сайт сам отдает по json api данные, ограничивает ли он их каким-то количеством - не знаю, там нет доков толковых, это не спам. И помочь приятелю - простое и обычное дело. Мне же на этом форуме люди помогают - а они меня вообще не знают, а там человек хороший, положительный. Так что все пучком))