Покажи Публикации - trout
* Виж публикациите на потр. | Виж темите на потр. | Виж прикачените файлове на потр
Страници: [1]
1  Програмиране / Web development / Re: Тест за jQuery & Ajax. Защо фейлва на Хром? -: Jun 05, 2013, 13:02
Проблема определено не е от кеша и според мен.

Да пазиш междинния резултат от броенето на файловете в базата е тъпо наистина - доста даже :)
Мястото му е в сесията определено под една или друга форма

незнам за пхп - ако беше java щеше да направиш един обект с променлива за броя преброени файлове, ще го запишеш в сесията, пускаш нишка да ги брои и и подаваш обекта да записва в него колко е преброила, а в poll script-a го вадиш от сесията да видиш на тая променлива стойността - общо взето каквото правиш и ти.
2  Програмиране / Web development / Re: Тест за jQuery & Ajax. Защо фейлва на Хром? -: Jun 05, 2013, 12:27
Здравей,

тествах скрипта - наистина и при мен, когато dbRebuild.php се вика от мозила не дава грешка за разлика от хром.

С предварителната уговорка, че нямам никакъв опит с PHP, така че може и да греша но:

Освен, че забелязах в лог-а на апацхе следната грешка понякога :

PHP Fatal error:  Maximum execution time of 240 seconds exceeded in /usr/share/phpinfo/dbRebuild.php

мисля, че принципно не е добра идея изобщо да използваш нишката породена от http request-a за обработване на дълги операции.
Незнам как е в ПХП, но предполагам, че може да ти създаде доста други проблеми (примерно чисто хипотетично незнам какво става ако клиента или някой NAT реши да затвори тцп сокета - примерно поради неактивност, да не говорим за самото апаче и пхп които не случайно имат параметър за max-time-execution).

Според мен правилния подход е в dbRebuild.php да стартираш background нишка, а после от poll скрипта проверявай докъде е стигнала и евентуално върни на клиента
съобщение да спре да poll-ва като види, че операцията е приключила + резултата.
Страници: [1]