Когда я должен отправить QUIT на SMTP-сервер? и как долго я должен держать сеанс? - PullRequest
3 голосов
/ 18 марта 2010

Я программирую отправителя smtp на отправку большого количества отдельных писем (не спама). Поскольку есть много адресов назначения, которые от общего провайдера, как hotmail.com/gmail.com. Я хотел бы объединить соединения TCP для повторного использования сеанса. Это хорошая практика? Или я должен отключиться и подключиться, чтобы вместо этого отправлять отдельные письма?

Поскольку количество абонентов велико, пул соединения может сохраняться в течение длительного времени (например, 1 час), стоит ли в какой-то момент активно разорвать соединение?

Последнее, что меня смутило, это IP-адреса назначения, так как я обнаружил, что на hotmail.com много mx-серверов (не менее 12). Будет ли что-то отличаться, если я отправлю большинство писем только на один сервер или отделю их и отправлю на все серверы?

Извините, что задаю несколько вопросов одновременно, и очень ценю ваше мнение и ответ.

Ответы [ 2 ]

1 голос
/ 18 марта 2010

Подключение, отправка X писем для цели, отключение. ИМХО должно быть где-то около 16-64 - некоторым почтовым серверам не нравится слишком много в одном соединении, и иначе вас выкинет.

Вы должны / можете сделать заказ по месту назначения, чтобы не держать сеансы открытыми слишком долго, и вы ДОЛЖНЫ правильно обрабатывать принудительные отключения.

Используйте записи MX по своему усмотрению. Нет необходимости разбивать ваши электронные письма на несколько целевых серверов.

0 голосов
/ 18 марта 2010

Первое ИМХО поддерживает соединение живым, когда оно не используется, дольше, чем время, необходимое для того, чтобы указанное соединение было плохим. Мало того, что вы поддерживаете его в бесполезном режиме, так как вы можете препятствовать доступу другого пользователя к службе.

Подключение к SMTP-серверу достаточно просто, чтобы сделать, отправить необходимые элементы и закрыть соединение.

Если я не ошибаюсь, даже Outlook открывает соединение для каждой отправляемой им почты.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...