Post
#1
|
|
|
Grupa: Zarejestrowani Postów: 898 Pomógł: 48 Dołączył: 2.11.2005 Skąd: Poznań Ostrzeżenie: (0%)
|
Mam mały problem - moja aplikacja łączy się z zewnętrznym serwerem i pobiera/wysyła do niego dane. Tak więc w czasie gdy oczekuje odpowiedzi z serwera skrypt nic nie robi. Problem jest taki, że takich zapytań muszę wykonać kilka-kilkadziesiąt tysięcy w możliwie krótkim czasie.
Pomysł jest taki, że chciałbym uruchomić skrypt "równolegle" kilkukrotnie - taki pseudokod Oczywiście file_get_contents używam, jako przykład - w rzeczywistości będzie to wywołanie metody klasy, która odpowiada za łączność z serwerem. Powyższy pseudokod wykona się po kolei - ja chciałbym aby wszystkie te połączenia wykonały się równolegle - czyli, żeby drugie wywołanie nie czekało aż skończy się pierwsze itd. Ograniczenia jakie mam: - nie mogę używać skryptów cli - musi to działać w miarę standardowej konfiguracji serwera bez konieczności instalowania egzotycznych dodatków - skrypt główny musi być wywoływany z cron'a więc wszelkie javascriptowe sztuczki też odpadają Dodam, że skrypt będzie działał w oparciu o Symfony2 - może jest tam jakieś rozwiązanie pozwalające na to. |
|
|
|
![]() |
Post
#2
|
|
|
Grupa: Zarejestrowani Postów: 898 Pomógł: 48 Dołączył: 2.11.2005 Skąd: Poznań Ostrzeżenie: (0%)
|
@python_000 - niestety tutaj sprawa jest bardziej złożona bo nie znam z góry kiedy i ile razy będę musiał proces wywołać - to zależy od tego co user będzie miał w bazie. Niektórzy mogą mieć 100-500 wywołań, a inni liczone w setkach tysięcy + to będą akcje "jednorazowe" - zazwyczaj wykonywane raz lub dwa razy w tygodniu - przez pozostałą część czasu apka będzie bezczynna. Można by robić jakieś kolejki typu najpierw wywoływać skrypt A, który oblicza ilość potrzebnych wywołań i wrzuca to do kolejki i potem jakoś tą kolejkę obsługuje, ale trochę tu za dużo zabawy.
@phpion - o to też ciekawe rozwiązanie. Myślę, że na początek spróbuję to zrobić za pomocą poleceń CLI, ale całą logikę wrzucę do Services - jak ludzie będą zgłaszać, że nie mogą na swoich serwerach działać za pomocą CLI to dopiszę coś webowego - tu to curl_multi_exec wygląda obiecująco. Dzięki wszystkim za pomoc. |
|
|
|
athabus Wywoływanie równolegle skryptu z różnymi parametrami 2.12.2015, 13:42:23
redeemer Cytat(athabus @ 2.12.2015, 13:42:23 )... 2.12.2015, 13:50:08
athabus Z crona chcę wywołać skrypt webowy - z tego co wie... 2.12.2015, 13:54:49
redeemer Nie spotkałem się z czymś takim (może chodzi Ci o ... 2.12.2015, 14:07:25
athabus Czyli co twierdzisz, że takie blokowanie cli się p... 2.12.2015, 14:25:14
Pyton_000 Wrzuć sobie requesty do jakiegoś zew. systemu kole... 2.12.2015, 14:44:32
phpion Rozważ użycie curl_multi, przykład całości w manua... 2.12.2015, 15:11:57
Pyton_000 No i co z tego. W swojej aplikacji podczas wywoływ... 2.12.2015, 16:32:31
athabus A widzisz, to chyba nie wiem o czym piszesz ;-)
... 2.12.2015, 16:44:19 ![]() ![]() |
|
Aktualny czas: 28.12.2025 - 00:04 |