Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Problem z CRON, Cron przerywa przed ukończeniem wszystkich zadań.
Damian4000
post
Post #1





Grupa: Zarejestrowani
Postów: 5
Pomógł: 0
Dołączył: 4.04.2017

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


Witam wszystkich forumowiczów ;-)

Mam do was ogromną prośbę. Chciałbym abyście pomogli mi w rozwiązaniu problemu, na jaki trafiłem. Zasugerowali jakieś rozwiązanie, bo z pewnością istnieje ;-)

Problem dotyczy zadań cron. Generalnie importuje on dane z pliku xml do bazy danych.
Wszystko działa jak powinno, natomiast pojawił się problem, gdy przyszło mu zaimportować duże pliki. Przestał on pracować, mimo że nie skończył zadania.

Próbowałem użyć ini_set('max_execution_time', 0); i pisałem nawet do pomocy hostingu. Otrzymałem odpowiedź, że domyślny wynosi limit max_execution_time = 30.
I wygląda, że jest zbyt krótki.

Szukam więc rozwiązania na obejście tego problemu.
Teoretycznie jednym z pomysłów jest serwer dedykowany, ale są to spore koszty jak na początek, brać serwer dedykowany tylko z tego powodu to chyba przesada.

Może to głupie pytanie, ale nie można napisać jakiegoś skryptu, który będzie uruchamiany przez cron ale będzie działał w tle do zakończenia całej pracy?

Z góry dziękuję za opdowiedź.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
adbacz
post
Post #2





Grupa: Zarejestrowani
Postów: 532
Pomógł: 24
Dołączył: 15.04.2011
Skąd: Kalisz

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


Zrób to na dwa razy:

1. Załaduj plik XML - ładowanie pliku nie zajmie dużo, PHP ładnie z tym działa - i podziel go na paczki po 10, 100, 500 rekordów do osobnych plików XML. nastepny raz zrobi to, gdy nie będzie juz żadnych plików podzielonych.
2. Zapodaj CRONa który będzie sprawdzał czy są te małe paczki w katalogu. Pobierze pierwszy plik, zapisze jego dane do DB i go usunie i tak dopóki katalog będzie pusty.
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: 24.12.2025 - 08:48