Страница 1 из 1

Проблема с доставкой письма с большим количеством получателе

Добавлено: 2008-09-08 14:17:50
Za...
Проблема
Отправляют письмо где в поле кому указан 81 получатель. Отправляем через провайдера. Проблема вследующем что письмо не уходит. С меньшим количеством получателей уходит, а когда их пачка нет!

Если в перечисление пользаков висять наши получатели(нашего домена), то они сразу улетают, а другие так и остаются висеть в очереди.
Конфиг транспорта

Код: Выделить всё

remote_smtp:
  driver   = smtp
  connection_max_messages = 20
  tls_certificate=/etc/exim4/exim.crt
  tls_privatekey=/etc/exim4/exim.key
  headers_add   = "X-Descriptions: powered by www.lissyara.su, build Artem Za... \n X-Bounce-ID: $primary_hostname"
  hosts_avoid_esmtp   =  ${lookup mysql{INSERT IGNORE INTO `sended_list` \
         (`user_from`, `user_to`, `added_timestamp`, \
         `last_mail_timestamp`, `mail_count`) VALUES \
         (LCASE('${quote_mysql:$sender_address}'), \
         LCASE('${quote_mysql:$local_part@$domain}'), \
         UNIX_TIMESTAMP(), UNIX_TIMESTAMP(), '1') ON DUPLICATE \
         KEY UPDATE `last_mail_timestamp` = UNIX_TIMESTAMP(), \
         `mail_count` = `mail_count` + 1}}
Конфиг роутера

Код: Выделить всё

goldentelecom:
  driver = manualroute
  domains = ! +local_domains
  transport = remote_smtp
  route_list = *  smtp.gldn.net
Лог

Код: Выделить всё

2008-09-08 14:50:46 1KceKU-00063D-3N <= murzakaeva@forestspb.ru H=(forest137) [192.168.1.100] P=esmtp S=7094 id=00dc01c911a1$2d4763f0$87d62bd0$@ru from <murz
akaeva@forestspb.ru> for 11041944@mail.ru 341598@mail.ru 69307@rambler.ru agemarvd@mail.ru agromash@khn.ru Alexey.Bogdanov@traktorodetal.ru amatveev@td.gzocm
.ru andyloyko@yahoo.com anna_enerprom@mail.ru av.bersenev@ssmtm.ru avers_hydraulic@mail.ru azpmaz@mail.ru baza-07@list.ru belaz-trade@bk.ru bktim@belmail.ru
chelarti@mail.ru dbt2@mail.ru distek1@rambler.ru frotec@mail.ru gcsplav@yandex.ru gena@mail.esoo.ru gidromir@list.ru gidro-omsk71@mail.ru Gidrosoyuz@yandex.r
u glavnmech@yandex.ru glavrukav@inbox.ru hydromarket@mail.ru isal@atnet.ru kadisheva@ocm.ru karcher@chp.ru klimov@hydrocomtk.ru kochetov@hydrocomplant.ru Kor
s-Tatyana@yandex.ru kubr@kubr.ru la.78@mail.ru lesotex1@kosnet.ru lests@atnet.ru lm70@mail.ru mail@scspecmash.com Marketing@npo-prostor.ru mayak@po-mayak.ru
megagidravlika@rambler.ru mehkomplekt-s@yandex.ru mnsbyt@radnet.ru montazhlux@mail.ru nefteplast@maik.ru nefteplast@mail.ru omt@tsgroup.ru omts@b-vrz.ru oood
iz@yandex.ru ots-2002@mail.ru Praktika@jiguli.ru promrvd@mail.ru promsnab-2000@mail.ru radik2100@yandex.ru RVD@mail.ru rvd@vth.ru rvdplus@fromru.com rvdplus@
nm.ru sales@td.gzocm.ru sales@vitriol-tpk.ru secr@utk.sozvezdie.biz serduk@hydravia.ru sleonov@umail.ru smatyuh@gmail.com Stroikompleks@bk.ru szllinin@expo-t
rade.ru tehnocom@tehnocom.net trak@e-sky.ru transoil-ufa@mail.ru ural-trak@tagnet.ru usenko@kubr.ru valian@list.ru vehi@kmtn.ru vkurakin@kld.lukoil.ru vladim
-art@yandex.ru vostokgidravlik@mail.ru VostokTehRezerv@yandex.ru vtcink@yandex.ru west-kom@onego.ru zaugarov@metacom.ru
....
....
....
2008-09-08 14:55:47 1KceKU-00063D-3N == 11041944@mail.ru R=goldentelecom T=remote_smtp defer (110): Connection timed out: SMTP timeout while connected to smt
p.gldn.net [194.67.1.209] after MAIL FROM:<murzakaeva@forestspb.ru> SIZE=8352
2008-09-08 14:55:47 1KceKU-00063D-3N == 341598@mail.ru R=goldentelecom T=remote_smtp defer (110): Connection timed out: SMTP timeout while connected to smtp.
gldn.net [194.67.1.209] after MAIL FROM:<murzakaeva@forestspb.ru> SIZE=8352
2008-09-08 14:55:47 1KceKU-00063D-3N == 69307@rambler.ru R=goldentelecom T=remote_smtp defer (110): Connection timed out: SMTP timeout while connected to smt
p.gldn.net [194.67.1.209] after MAIL FROM:<murzakaeva@forestspb.ru> SIZE=8352
2008-09-08 14:55:47 1KceKU-00063D-3N == agemarvd@mail.ru R=goldentelecom T=remote_smtp defer (110): Connection timed out: SMTP timeout while connected to smt
p.gldn.net [194.67.1.209] after MAIL FROM:<murzakaeva@forestspb.ru> SIZE=8352
2008-09-08 14:55:47 1KceKU-00063D-3N == agromash@khn.ru R=goldentelecom T=remote_smtp defer (110): Connection timed out: SMTP timeout while connected to smtp
.gldn.net [194.67.1.209] after MAIL FROM:<murzakaeva@forestspb.ru> SIZE=8352
2008-09-08 14:55:47 1KceKU-00063D-3N == alexey.bogdanov@traktorodetal.ru <Alexey.Bogdanov@traktorodetal.ru> R=goldentelecom T=remote_smtp defer (110): Connec
tion timed out: SMTP timeout while connected to smtp.gldn.net [194.67.1.209] after MAIL FROM:<murzakaeva@forestspb.ru> SIZE=8352
2008-09-08 14:55:47 1KceKU-00063D-3N == amatveev@td.gzocm.ru R=goldentelecom T=remote_smtp defer (110): Connection timed out: SMTP timeout while connected to
 smtp.gldn.net [194.67.1.209] after MAIL FROM:<murzakaeva@forestspb.ru> SIZE=8352
2008-09-08 14:55:47 1KceKU-00063D-3N == andyloyko@yahoo.com R=goldentelecom T=remote_smtp defer (110): Connection timed out: SMTP timeout while connected to
smtp.gldn.net [194.67.1.209] after MAIL FROM:<murzakaeva@forestspb.ru> SIZE=8352
2008-09-08 14:55:47 1KceKU-00063D-3N == anna_enerprom@mail.ru R=goldentelecom T=remote_smtp defer (110): Connection timed out: SMTP timeout while connected t
o smtp.gldn.net [194.67.1.209] after MAIL FROM:<murzakaeva@forestspb.ru> SIZE=8352
2008-09-08 14:55:47 1KceKU-00063D-3N == av.bersenev@ssmtm.ru R=goldentelecom T=remote_smtp defer (110): Connection timed out: SMTP timeout while connected to
 smtp.gldn.net [194.67.1.209] after MAIL FROM:<murzakaeva@forestspb.ru> SIZE=8352
2008-09-08 14:55:47 1KceKU-00063D-3N == avers_hydraulic@mail.ru R=goldentelecom T=remote_smtp defer (110): Connection timed out: SMTP timeout while connected
 to smtp.gldn.net [194.67.1.209] after MAIL FROM:<murzakaeva@forestspb.ru> SIZE=8352
2008-09-08 14:55:47 1KceKU-00063D-3N == azpmaz@mail.ru R=goldentelecom T=remote_smtp defer (110): Connection timed out: SMTP timeout while connected to smtp.
gldn.net [194.67.1.209] after MAIL FROM:<murzakaeva@forestspb.ru> SIZE=8352
2008-09-08 14:55:47 1KceKU-00063D-3N == baza-07@list.ru R=goldentelecom T=remote_smtp defer (110): Connection timed out: SMTP timeout while connected to smtp
.gldn.net [194.67.1.209] after MAIL FROM:<murzakaeva@forestspb.ru> SIZE=8352
...
...
...

Re: Проблема с доставкой письма с большим количеством получателе

Добавлено: 2008-09-08 14:34:53
Alex Keda
ограничить число получателей.
если боавлены как скрытые - в bcc, то экзим умеет такие письма разбивать

Re: Проблема с доставкой письма с большим количеством получателе

Добавлено: 2008-09-08 14:42:34
Za...
Были и скрытые, но тоже не отправлялись, а как ограничить число получателей, тупо сказать пользаку или exim-ом, если последним, то как!

А вообще может екзим разбить очередь на маленькие, если да то как.

Re: Проблема с доставкой письма с большим количеством получателе

Добавлено: 2008-09-09 7:55:31
Za...
Прочитал в Доках по Exim:
....
Если сообщение содержит несколько различных адресов, все с теми же самыми характеристиками (например, тот же отправитель конверта), резольвящимися к тем же самым наборам хостов, в том же самом порядке, посылаются в одной SMTP транзакции, даже если они для различных доменов, не более чем позволяет установка опции “max_rcpts” в транспорте “smtp”, в случае чего они разделяются на группы содержащие не более чем “max_rcpts” адресов в каждой. Если “remote_max_parallel” - больше одного, каждая группа может быть послана в параллельных сессиях. Порядок хостов с идентичными значениями MX - не существеннен при проверке, могут ли адреса быть пакетными в этом способе.
....
У меня так ине получилось прикрутить

Код: Выделить всё

max_rcpts
remote_max_parallel
exim ругается

Код: Выделить всё

'option "max_rcpts" unknown'

Re: Проблема с доставкой письма с большим количеством получателе

Добавлено: 2008-09-09 7:57:28
Alex Keda
1. доке полтора года.
2. куда именно крутил и где вычитал?

Re: Проблема с доставкой письма с большим количеством получателе

Добавлено: 2008-09-09 8:36:11
Za...
Крутил в транспорте, пробыл и в главной части, не получалось

Код: Выделить всё

remote_smtp:
  driver   = smtp
  connection_max_messages = 10
#  max_rcpts = 10
#  remote_max_parallel = 1
  tls_certificate=/etc/exim4/exim.crt
  tls_privatekey=/etc/exim4/exim.key
Вот тут читал:
http://www.lissyara.su/?id=1244#44.1

Re: Проблема с доставкой письма с большим количеством получателе

Добавлено: 2008-09-09 9:08:37
Za...
В офф доке вот что написанно
30.1 Multiple messages on a single connection

The sending of multiple messages over a single TCP/IP connection can arise in two ways:

*

If a message contains more than max_rcpt (see below) addresses that are routed to the same host, more than one copy of the message has to be sent to that host. In this situation, multiple copies may be sent in a single run of the smtp transport over a single TCP/IP connection. (What Exim actually does when it has too many addresses to send in one message also depends on the value of the global remote_max_parallel option. Details are given in section 45.1.)
*

When a message has been successfully delivered over a TCP/IP connection, Exim looks in its hints database to see if there are any other messages awaiting a connection to the same host. If there are, a new delivery process is started for one of them, and the current TCP/IP connection is passed on to it. The new process may in turn send multiple copies and possibly create yet another process.

For each copy sent over the same TCP/IP connection, a sequence counter is incremented, and if it ever gets to the value of connection_max_messages, no further messages are sent over that connection.
Переходим на секцию 45.1
If a message contains a number of different addresses, all those with the same characteristics (for example, the same envelope sender) that resolve to the same set of hosts, in the same order, are sent in a single SMTP transaction, even if they are for different domains, unless there are more than the setting of the max_rcpts option in the smtp transport allows, in which case they are split into groups containing no more than max_rcpts addresses each. If remote_max_parallel is greater than one, such groups may be sent in parallel sessions. The order of hosts with identical MX values is not significant when checking whether addresses can be batched in this way.
У меня получилось прикрутить опцию max_rcpt в транспорте, а remote_max_parallel так и не удалось как в глобальном так и в транспорте!

Re: Проблема с доставкой письма с большим количеством получателе

Добавлено: 2008-09-09 10:06:56
dikens3
Почему? В основном конфиге нужно делать.
# exim -bP | grep parallel
remote_max_parallel = 15

Re: Проблема с доставкой письма с большим количеством получателе

Добавлено: 2008-09-09 10:24:04
Za...
Да сейчас смотрю все уходит помогла опция max_rcpt в описание транспорта smtp, и еще может быть опция connection_max_messages

Код: Выделить всё

remote_smtp:
  driver   = smtp
  connection_max_messages = 10
  max_rcpt = 5
  tls_certificate=/etc/exim4/exim.crt
  tls_privatekey=/etc/exim4/exim.key
  headers_add   = "X-Descriptions: powered by www.lissyara.su, build Artem Za... \n X-Bounce-ID: $primary_hostname"
  hosts_avoid_esmtp   =  ${lookup mysql{INSERT IGNORE INTO `sended_list` \
         (`user_from`, `user_to`, `added_timestamp`, \
         `last_mail_timestamp`, `mail_count`) VALUES \
         (LCASE('${quote_mysql:$sender_address}'), \
         LCASE('${quote_mysql:$local_part@$domain}'), \
         UNIX_TIMESTAMP(), UNIX_TIMESTAMP(), '1') ON DUPLICATE \
         KEY UPDATE `last_mail_timestamp` = UNIX_TIMESTAMP(), \
         `mail_count` = `mail_count` + 1}}