![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 80 Pomógł: 0 Dołączył: 15.10.2011 Ostrzeżenie: (0%) ![]() ![]() |
Witam. Napisałem skrypt który ma za zadanie przeszukiwać ftp w poszukiwaniu plików (fakt faktem trwa to długo jednak) udaje się tylko wtedy
gdy w funkcji szukającej dodam cokolwiek z echo np. Gdy tego nie ma TIME OUT.
p.s w logach wywala Script timed out before returning headers |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 486 Pomógł: 101 Dołączył: 27.06.2010 Ostrzeżenie: (0%) ![]() ![]() |
funkcje mają za zadanie zwracać wartość, a nie echować więc się nie dziw. spróbuj zamienić echo na return a w miejscu wyświetlania funkcji dodaj echo search_files(coś)
|
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 80 Pomógł: 0 Dołączył: 15.10.2011 Ostrzeżenie: (0%) ![]() ![]() |
echo($obj -> search_files(ftp_nlist($id, "."))); // wyszukanie
niestety time out (IMG:style_emoticons/default/sad.gif) echo ""; JAK DAŁEM tak w miejsce returna również nie działa echo musi coś dawać bez sensu ;( Zmierzyłem czas w jakim to sie dzieje:
Nie jest to przecież nie wiadomo jak długo.. p.s zastanawiałem się czy może w jakiś sposób nie zrobić jakiegoś skryptu java który wyświetla "pseudo" pasek postępu. Wtedy być może nie wywali time outa? |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 1 233 Pomógł: 87 Dołączył: 6.03.2009 Ostrzeżenie: (40%) ![]() ![]() |
Widocznie serwer ubija procesy które zbyt długo nic nie wywalają na wyjście..
|
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 80 Pomógł: 0 Dołączył: 15.10.2011 Ostrzeżenie: (0%) ![]() ![]() |
No dobrze ale jest chyba jakiś sposób na poradzenie sobie z tym? Np. echo działa ale musi printować coś na ekran.. (niestety)
|
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 1 233 Pomógł: 87 Dołączył: 6.03.2009 Ostrzeżenie: (40%) ![]() ![]() |
|
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 80 Pomógł: 0 Dołączył: 15.10.2011 Ostrzeżenie: (0%) ![]() ![]() |
Jakieś konkrety z łaski swej?
|
|
|
![]()
Post
#8
|
|
Grupa: Moderatorzy Postów: 15 467 Pomógł: 1451 Dołączył: 25.04.2005 Skąd: Szczebrzeszyn/Rzeszów ![]() |
O, to widzę, że nie ma co się o płace w IT martwić, skoro nikt nie nawet nie raczy zajrzeć do dokumentacji: http://pl.php.net/manual/en/function.ftp-connect.php
Więcej nie podpowiem, to już byłaby kpina z mojej strony. |
|
|
![]()
Post
#9
|
|
Grupa: Zarejestrowani Postów: 80 Pomógł: 0 Dołączył: 15.10.2011 Ostrzeżenie: (0%) ![]() ![]() |
ustawiałem już to na 900 jednak brak poprawy jakieś pomysły jeszcze?
Wiem że jest możliwe zrobienie coś takiego bo już gdzieś to widziałem ale w jaki sposób? Myslałem coś w stylu uruchamiania skryptu skryptem? Np. ktoś naciska guzik "uruchom" na stronie X, wtedy uruchamia sie stona Y w tle która synchronizuje dane ftp wtedy być może time outa by nie było? mhm Ten post edytował dram 4.01.2012, 21:40:04 |
|
|
![]()
Post
#10
|
|
Grupa: Moderatorzy Postów: 15 467 Pomógł: 1451 Dołączył: 25.04.2005 Skąd: Szczebrzeszyn/Rzeszów ![]() |
A jakie pingi masz między tymi serwerami?
|
|
|
![]()
Post
#11
|
|
Grupa: Zarejestrowani Postów: 80 Pomógł: 0 Dołączył: 15.10.2011 Ostrzeżenie: (0%) ![]() ![]() |
30-60 skrypt wykonuje się mniej więcej tyle co normalnie tj. tyle co by szukał tych plików tyle ze zamiast wyników szukania wyskakuje timeout oczywiście gdy daje echo tego problemu NIE ma...
(IMG:style_emoticons/default/sciana.gif) (IMG:style_emoticons/default/sciana.gif) |
|
|
![]()
Post
#12
|
|
Grupa: Moderatorzy Postów: 15 467 Pomógł: 1451 Dołączył: 25.04.2005 Skąd: Szczebrzeszyn/Rzeszów ![]() |
Bo echo nie wykorzystuje połączenia z serwerem, które może być spowolnione z różnych czynników...
|
|
|
![]()
Post
#13
|
|
Grupa: Zarejestrowani Postów: 80 Pomógł: 0 Dołączył: 15.10.2011 Ostrzeżenie: (0%) ![]() ![]() |
To niech mi ktoś chole** poda rozwiązanie tego problemu bo mam go dosyć. próbowałem chyba już wszystkiego. Moze ktoś zna coś innego wzamian za echo?
|
|
|
![]()
Post
#14
|
|
Grupa: Zarejestrowani Postów: 319 Pomógł: 4 Dołączył: 7.02.2009 Skąd: pless Ostrzeżenie: (0%) ![]() ![]() |
Prawdopodobnie nie chodzi tu o zbyt długi czas wykonywania skryptu a raczej o zbyt długi czas nie zwracania żadnej wartości do przeglądarki.
Sam mam skrypt który wykonuje się ok. 30 minut przeprowadzając na kilku tysiącach obiektów kilka operacji w tym synchronizację danych z innymi serwerami po WebAPI. Właśnie w tym wypadku miałem kiedyś problem, że taki komunikat wyskakiwał. Nie pamiętam już nazwy zmiennej której wartość trzeba zmienić w php.ini, ale jest taka możliwość. e.w. tak jak ja robię obecnie (skrypt wykonuje się w cronie) przy każdej operacji zwracam informację o powodzeniu/niepowodzeniu operacji oraz e.w. szczegóły błędu. Dzięki temu błąd nie wyskakuje a ja mam logi na podstawie których mogę naprawiać ew. błędy. Sprawdź to-> http://php.net/manual/pl/features.connection-handling.php |
|
|
![]()
Post
#15
|
|
Grupa: Zarejestrowani Postów: 1 233 Pomógł: 87 Dołączył: 6.03.2009 Ostrzeżenie: (40%) ![]() ![]() |
|
|
|
![]()
Post
#16
|
|
Grupa: Zarejestrowani Postów: 80 Pomógł: 0 Dołączył: 15.10.2011 Ostrzeżenie: (0%) ![]() ![]() |
Tak próbowałem bo to raz...
i nie pomaga:( |
|
|
![]() ![]() |
![]() |
Aktualny czas: 22.08.2025 - 21:25 |