Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / (apache) Ошибки 70007 и 70014 при удалённом коннекте / 4 сообщений из 4, страница 1 из 1
17.08.2014, 13:23
    #38721897
Cyrax_02
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
(apache) Ошибки 70007 и 70014 при удалённом коннекте
Сервер: Linux VPS, Apache 2.2, Debian6, CGI/FastCGI
Клиентское приложение удалённо выполняет импорт данных на сервер посредством запуска серверных скриптов (с передачей ему данных). Элементы импортируются на сервер не все сразу, а поочерёдно: сколько элементов нужно импортировать, столько раз вызывается серверный скрипт. Время импорта одного элемента - 1 сек.

Алгоритм работы клиентского приложения асинхронный:
- серверу отправляется запрос с параметрами
- в цикле: ожидание ответа от сервера с обработкой событий ОС (аналог doEvents)
- при получении ответа от сервера, либо по истечении клиентского таймаута, на клиенте соединение сбрасывается

Клиентский таймаут: 30 сек
Серверный таймаут: 180 сек:
Файл httpd.conf:
Код: php
1.
2.
3.
4.
5.
<IfModule mod_fcgid.c>
    FcgidIOTimeout 180
    FcgidConnectTimeout 180    
    FcgidIdleTimeout 180
</IfModule>


Файл php.ini
Код: php
1.
max_execution_time= 180


В произвольные моменты времени и на разных импортируемых элементах наблюдаются следующие 2 серверные ошибки:

1. (70014)End of file found: mod_fcgid: can't get data from http client
Эта ошибка наблюдается в те моменты, когда клиент фиксирует собственный таймаут. Данную ошибку можно объяснить так:
- из-за некачественного Интернет-соединения данные от клиента до сервера не доходят, либо доходят частично
- сервер ждёт получения всех данных от клиента
- клиент ждёт ответа от сервера
- через 30 сек клиент фиксирует собственный таймаут и сбрасывает соединение
- из-за сброса клиентом соединения сервер фиксирует "End of file found"

2. (70007)The timeout specified has expired: mod_fcgid: can't get data from http client
При возникновении данной ошибки клиент получает от сервера сообщение "500 Internal Server Error" .
Данная ошибка генерируется сервером через 10-15 сек после отправки клиентом запроса. Этот период меньше клиентского таймаута и меньше серверного таймаута. Тем не менее, сервер ругается на какой-то таймаут, когда все серверные таймауты у меня установлены в 180 сек.
Если сразу после возникновения этой ошибки, клиент отправляет тот же самый запрос серверу повторно, то сервер запрос обрабатывает нормально. Т.е. ошибка плавающая.

Чем объяснить эту ошибку ? О каком таймауте идёт речь в тексте этой ошибки ?
Это глюки у хостера (VPS) ?
...
Рейтинг: 0 / 0
17.08.2014, 13:28
    #38721898
Cyrax_02
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
(apache) Ошибки 70007 и 70014 при удалённом коннекте
автор2. (70007)The timeout specified has expired: mod_fcgid: can't get data from http client
При возникновении данной ошибки клиент получает от сервера сообщение "500 Internal Server Error".
Данная ошибка генерируется сервером через 10-15 сек после отправки клиентом запроса. Этот период меньше клиентского таймаута и меньше серверного таймаута. Тем не менее, сервер ругается на какой-то таймаут, когда все серверные таймауты у меня установлены в 180 сек.
Если сразу после возникновения этой ошибки, клиент отправляет тот же самый запрос серверу повторно, то сервер запрос обрабатывает нормально. Т.е. ошибка плавающая.Если предположить, что и в данном случае до сервера доходят не все клиентские данные, то почему сервер фиксирует у себя таймаут через 10-15 сек после инициализации соединения, а не через 180 сек ?
Идём дальше. Если предположить, что у сервера имеется ещё какой-то внутренний таймаут, связанный с ожиданием данных от клиента, то почему этот таймаут (10-15 сек) не срабатывает в первом случае (ошибка 70014) ?
...
Рейтинг: 0 / 0
03.10.2014, 19:29
    #38766605
Cyrax_02
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
(apache) Ошибки 70007 и 70014 при удалённом коннекте
Ау... Отпуск закончился.
...
Рейтинг: 0 / 0
03.10.2014, 20:39
    #38766631
Cyrax_02
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
(apache) Ошибки 70007 и 70014 при удалённом коннекте
Или снова все на Донбасс убежали ? Тогда респект - аэропорт нужно зачистить... от фашистов.
...
Рейтинг: 0 / 0
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / (apache) Ошибки 70007 и 70014 при удалённом коннекте / 4 сообщений из 4, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]