Forum Webscript.Ru
Программирование => Perl => Тема начата: xalex от 08 Сентября 2003, 19:11:02
-
Добрый день.
Есть база данных с web-интерфейсом. Есть опция "отправить письма пользователям".
Процедура реализована с помощью sendmail.
Примерно до 100 пользователей отправляется нормально, если больше, IE не дожидается ответа сервера и выдает "Страница не доступна". Можно ли как-то ускорить этот процесс, может быть поставить письма в очередь?
-
1. Письма все отсылаются?
2. Ускорить нельзя - они и так в очереди.
3. Как вариант - положить отправку писем в дочерний процесс а главным его контролировать.
-
NeoNox:
1. Письма все отсылаются?
3. Как вариант - положить отправку писем в дочерний процесс а главным его контролировать.
Письма отсылаются частично, сколько успеют до обрубания браузера.
А где можно почитать по процессам?
-
perldoc perlipc
-
Но похоже это срабатывает таймаут на выполнение скрипта.
Уточните у хостера этот момент.
-
вообще у броузера тоже есть таймаут на соединение с сервером (скриптом).
Чтобы соединение не прерывалось скрипт должен какой-то "левый" ХТТП-заголовок отсылать во время работы, тем самым поддерживая соединение (похожее видел в пхпМайАдмин в скрипте создания дампа БД).
-
Скорее всего NeoNox прав, скрипт по любому должен заканчивать работу. Даже если браузер прерывает соединение по таймауту. Помниться, я, чтобы особо не заморачиваться, на каждой итерации цикла писал в скрипте: print "
что сейчас сделалось хорошее..."; А браузер принимал и по мере поступления выводил на экран.