Скрипт померает когда засыпает |

16.05.2010, 09:48
|
|
Новичок
Регистрация: 12.05.2010
Сообщений: 8
С нами:
8421593
Репутация:
0
|
|
Скрипт померает когда засыпает
на php делаю sleep(10*60) на 10 мин
на одних хостингах после выхода из сна скрипт продолжает работать, а на других он так и не продолжает работать
подозреваю здесь дело в настройках apacha, как нить это можно обойти?
или в чем еще может быть дело?
|
|
|

16.05.2010, 10:15
|
|
Постоянный
Регистрация: 26.07.2009
Сообщений: 321
С нами:
8838619
Репутация:
123
|
|
apache тут непричем
дело в настройках php.ini
должно быть
max_execution_time = 0
а там везде
max_execution_time = 30
и больше 30 сек скрипт работать не будет
|
|
|

16.05.2010, 10:50
|
|
Новичок
Регистрация: 12.05.2010
Сообщений: 8
С нами:
8421593
Репутация:
0
|
|
Сообщение от phpdreamer
apache тут непричем
дело в настройках php.ini
должно быть
max_execution_time = 0
а там везде
max_execution_time = 30
и больше 30 сек скрипт работать не будет
вроде функция sleep на подсчет времени работы скрипта не влияет
|
|
|

16.05.2010, 11:56
|
|
Познавший АНТИЧАТ
Регистрация: 01.12.2006
Сообщений: 1,769
С нами:
10233548
Репутация:
1118
|
|
Какую ошибку выдает при отваливании ?
|
|
|

16.05.2010, 16:27
|
|
Новичок
Регистрация: 12.05.2010
Сообщений: 8
С нами:
8421593
Репутация:
0
|
|
Сообщение от POS_troi
Какую ошибку выдает при отваливании ?
не знаю, хостинг не мой
в настройках апача есть timeout но он для соединений:
- The total amount of time it takes to receive a GET request.
- The amount of time between receipt of TCP packets on a POST or PUT request.
- The amount of time between ACKs on transmissions of TCP packets in responses.
время работы скрипта не видно
Последний раз редактировалось opticaltoxin; 16.05.2010 в 16:33..
|
|
|

16.05.2010, 16:39
|
|
Познавший АНТИЧАТ
Регистрация: 01.12.2006
Сообщений: 1,769
С нами:
10233548
Репутация:
1118
|
|
не в конфигах апача а в конфиге php.
<?php phpinfo(); ?>
max_execution_time = ?
max_input_time =?
memory_limit = ?
|
|
|

16.05.2010, 16:47
|
|
Новичок
Регистрация: 12.05.2010
Сообщений: 8
С нами:
8421593
Репутация:
0
|
|
Сообщение от POS_troi
не в конфигах апача а в конфиге php.
<?php phpinfo(); ?>
max_execution_time = ?
max_input_time =?
memory_limit = ?
Настройки на чужом сервере:
max_execution_time = 30 - при таких настройках на моем сервере скрипт работает нормально после sleep'а
max_input_time = 60
memory_limit = 64 - каким образом объем памяти влияет на время работы скрипта?
|
|
|

16.05.2010, 17:01
|
|
Познавший АНТИЧАТ
Регистрация: 01.12.2006
Сообщений: 1,769
С нами:
10233548
Репутация:
1118
|
|
Хм... Какой таймаут у апача, у сервака на котором все окей пашет?
Дело в том что если сервак рвет соединение то скрипт тоже завершится ибо результаты то отдавать некому будет.
есть в PHP параметр , что-то типо IgnoreUserAborted (или как-то так), если рвется соединение или ты нажал крестик в браузере то скрипт плюет на это, но вот не знаю толи в скрипте это прописывается толи в конфиге.
каким образом объем памяти влияет на время работы скрипта?
ОЗУ это все!
З.Ы. Я не знаток PHP и поэтому мои ответы не есть достоверными на все 100% а являются моими рассуждениями, основанными на тех знаниях что все-же есть.
Последний раз редактировалось POS_troi; 16.05.2010 в 17:03..
|
|
|

16.05.2010, 17:12
|
|
Новичок
Регистрация: 12.05.2010
Сообщений: 8
С нами:
8421593
Репутация:
0
|
|
Сообщение от POS_troi
Дело в том что если сервак рвет соединение то скрипт тоже завершится ибо результаты то отдавать некому будет.
на моем сервере в httpd.conf и инклудах не нашел параметра timeout, видимо он выставляеца по дефолту если не прописан
Сообщение от POS_troi
есть в PHP параметр , что-то типо IgnoreUserAborted (или как-то так), если рвется соединение или ты нажал крестик в браузере то скрипт плюет на это, но вот не знаю толи в скрипте это прописывается толи в конфиге.
у меня стоит в скрипте: ignore_user_abort(true);
по-идее после разрыва соединения скрипт должен продолжать работать
|
|
|

16.05.2010, 17:27
|
|
Новичок
Регистрация: 12.10.2009
Сообщений: 20
С нами:
8726363
Репутация:
41
|
|
Винда?
Note: The set_time_limit() function and the configuration directive max_execution_time only affect the execution time of the script itself. Any time spent on activity that happens outside the execution of the script such as system calls using system(), stream operations, database queries, etc. is not included when determining the maximum time that the script has been running. This is not true on Windows where the measured time is real.
|
|
|
|
 |
|
Похожие темы
|
| Тема |
Автор |
Раздел |
Ответов |
Последнее сообщение |
|
Скрипт цитатника
|
just_shark |
PHP |
0 |
18.09.2009 20:45 |
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|