Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Jak zwiększyć czas wykonywania skryptu lub podzielić wykonywanie na kilka części, (bez ingerencji w pliki konfiguracyjne serwera)
marcin909090
post
Post #1





Grupa: Zarejestrowani
Postów: 27
Pomógł: 0
Dołączył: 4.11.2015

Ostrzeżenie: (0%)
-----


Witam, piszę wtyczką pod WooCommerce importującą produkty do sklepu internetowego z plików XML/CSV.
Problem nie dotyczy małej ilości produktów. Podczas gdy jest ich kilkaset lub kilka tysięcy skrypt potrzebuje określonego czasu, żeby je dodać.
Niestety w pewnym momencie się przerywa i wyrzuca komunikat "504 Gateway Time-out".
Działanie jakie wykonałem :
- Dodałem do moich plików php
  1. ini_set('memory_limit', '-1');
- Zwiększyłem limit pamięci w Wordpressie
- Zmieniłem max_execution_time na serwerze na 120

Zauważyłem, że jestem w stanie dodać około 300 produktów więcej co w całości daje około 700. Jest to zdecydowanie za mało.

Moje pytanie to, czy jest jakaś możliwość wydłużenia czasu działania skryptu bez ingerencji w serwer lub czy macie pomysł na inne rozwiązanie. Moja aplikacja to wtyczka więc różni ludzie na różnych serwerach będą z niej korzystali. Ma być uniwersalna i NIE może wymagać od użytkownika zmiany ustawień serwera.
Istnieje podobna amerykańska wtyczka (płatna), która oferuje takie działanie, a sposób importu produktów to dzielenie ich w części po 20 produktów, usuwanie informacji, import kolejnych 20, usuwanie informacji i tak do momentu zaimportowanie wszystkich produktów do sklepu WooCommerce.

Macie jakiś pomysł jak osiągnąć taki efekt lub sprawić, żeby nie było limitu czasowego przy działaniu skryptu nie ingerując w ustawienia serwera ?



Ten post edytował marcin909090 19.01.2016, 12:49:09
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
marcin909090
post
Post #2





Grupa: Zarejestrowani
Postów: 27
Pomógł: 0
Dołączył: 4.11.2015

Ostrzeżenie: (0%)
-----


Przeanalizuję to co napisałeś. Dodam, również że w CRONie aktualizacja zaimportowanych produktów ma działać np. codziennie, wtedy następuje edycja gdy zmieni się np. cena, stan magazynowy czy dodano do hurtowni nowy produkt. W takim razie czy takie rozwiązanie ma sens i zadziała w CRONie? Te Ajax'y i Javascript'y się nie zgubią jako zadanie CRON? Zadań CRON może być nawet kilka dla plików z różnych hurtowni.

Sprawdziłoby się tu Twoje rozwiązanie ?

Ten post edytował marcin909090 11.02.2016, 12:03:50
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 10.10.2025 - 09:28