在 Windows Server 2008 R2 上强制重试传送而不重新启动 SMTP 服务

在 Windows Server 2008 R2 上强制重试传送而不重新启动 SMTP 服务

我有一个 Windows Server 2008 R2 盒,其中托管 3 个虚拟 SMTP 服务器;vSMTP01、vSMTP02 和 vSMTP03。

前两个配置为将所有消息传递到专用智能主机,而最后一个设置为仅自行传递消息。所有其他传递设置均为默认设置

                                    ----(vSMTP01)-----> {SMARTHST01}
                                   /
----Inbound mail--->---SMTPSRV01---[----(vSMTP02)-----> {SMARTHST02}
                                   \
                                    ----(vSMTP03)-----> { Internet }

现在我想将其取出SMARTHST01进行维护,但我不想vSMTP01在维护期间拒绝提交,所以我只是让它继续运行。

SMARTHST01不再响应时,vSMTP01 将消息排队并等待第一次重试间隔过去(15 分钟)。到目前为止一切顺利。

假设SMARTHST0120 分钟后再次上线。第一个间隔已过去,我必须再等待 25 分钟才能通过第二个重试间隔。

如果我停止并启动 SMTP 服务(Services.msc -> 简单邮件传输协议服务 -> 停止),服务器将重试所有传送,但这会导致计算机上所有虚拟 SMTP 服务器的服务中断,这是非常不可取的。

如何在不中断 vSMTP02 和 vSMTP03 的服务的情况下手动强制 vSMTP01 重试传递所有排队消息?

答案1

马蒂亚斯,

您需要做的就是打开 IIS 并停止单个 vSMTP01,但实际上在您的情况下您可能想要暂停它。

在 中IIS Manager,展开本地计算机,右键单击 SMTP 虚拟服务器,然后单击Pause

暂停会阻止新的客户端连接,但允许虚拟服务器继续处理现有的客户端连接并传递排队的消息。

或者如果您声明要强制 vSMTP01 立即再次启动其队列处理,那么您可以重新启动 SMTP 虚拟服务器而不会影响 vSMTP02 或 03。

更多信息请见此处:http://technet.microsoft.com/en-us/library/cc784055%28v=ws.10%29.aspx

相关内容