「深入 Exchange 2013」17 队列 part2

队列速率

大多数新手管理员都能理解“队列”是某种系统或者组件的性能指标。比如磁盘I/O队列,CPU队列等等。Exchange 2013中邮件队列的运行效率是通过队列的三个属性来计算的。传入率(IncomingRate)和传出率(OutgoingRate)属性代表邮件进入和离开邮件的速率。速率(Velocity)为传出率减去传入率得到的队列消耗速率值。除了以上三个值,还应当考虑邮件数量(MessageCount)属性,该属性显示一个队列中的邮件数量。管理员应该将这些属性综合起来判断一个队列是否正常。

传入率和传出率通过计算最后60秒内每5秒传入/传出邮件的数量的平均值来得出。咱们可以举个例子来帮助理解,下表为过去60秒中,每5秒进入队列和离开队列的邮件数量。


时间


5s


10s


15s


20s


25s


30s


35s


40s


45s


50s


55s


60s


总共


进入队列


12


3


5


7


14


4


1


3


2


7


9


5


72


离开队列


4


8


1


2


6


10


5


7


8


3


4


1


59

进入队列的数值取平均值,即72/12为6,离开队列的平均值为59/12为4.9,那么这时的队列速率为4.9-6= -1.1,也就是说队列速率为负值,进入队列的量大于离开队列的值,这就会导致该队列永远不会被清空,就像是一个水池里,放水的速度小于灌水的速度,那么这个水池永远不会空。这个时候再加上队列里的邮件数量属性加以考虑,如果队列里已经堆积了一定数量邮件,但是队列速率趋近于0,那么说明该队列虽繁忙,但是一直是有效的在处理邮件。而如果说一个队列的Velocity为很大的负值,而且MessageCount值又特别大的话,那就说明这个队列的邮件流是有问题的。

查看队列

一般来说,邮件在Exchange中的处理是非常迅速的,如果队列里出现了十几封甚至几十封邮件排队的情况的时候,就说明该当前服务器或者网络处于一个比较高的负载。这时候你可以使用队列查看器或者是Get-Queue命令来查看单独服务器上的队列,也可以使用Get-QueueDigest汇总查看多台服务器上的队列情况。

Get-Queue

下面是一个Get-Queue命令在一台全角色的Exchange服务器上的输出,按MessageCount按升序排列。如果不在命令后面用-Server指定服务器的话,该命令就只返回当前Powershell连接的服务器的队列信息。

命令当中-SortOrder后边接的是按那种属性排序,属性前面的“+”号代表以升序排列,如果是“-”号则是以降序排列。还可以使用-Filiter参数来匹配一些过滤条件,比如:

Get-Queues -Server EX01 -Filter {MessageCount -gt 20} -SortOrder: -MessageCount

可以注意到,Ex2013的Get-Queue命令会详细告诉你队列速率(上面讲过的Velocity)。这与Ex2010不同,还有其他地方的不同则是等到后面讲邮件路由和传递组的时候会提到。

Exchange中的队列会在没有邮件进出的情况下被关闭,所以你可能在某工作日的高峰期看到队列里出现数据库队列和一堆SMTP目标域队列,也可能在深夜的时候发现其他的队列全消失,只剩下一个提交队列在那。另一种队列清除的情况就是邮件超时,即默认一封邮件如果超过2天没有传递成功,那么就会发送NDR给发件人,至于为啥默认是两天,微软认为超过两天之久的邮件再进行重试发送就没啥意义了,还不如返回给发件人让发件人以另外的方式联系收件人。

为了保证队列的唯一性,传输系统在建立队列的时候会用服务器名加上一个每次增加的数字以区分每个队列,这个数字会在传输服务重启的时候重置掉。

Get-QueueDigest

这条命令前边儿已经提过了,可以将多台服务器上的队列一起汇总显示,算是一个不错的改进。这里多台服务器可以是同一个林中的服务器,或者是同一DAG、同一AD站点的成员,也可以是指定列表中的多台服务器。用法和简单,在后面带上一些参数开关就可以了(-Forest,-DAG后面可以跟多个DAG名字用逗号隔开,-Server逗号隔开多台服务器,-Site),全都是字面意思,而且还有-Filter开关,可以进行过滤筛选。

使用Exchange队列查看器

尽管Exchange 2013的控制中心不再是以前那种基于MMC管理控制台的风格,而变成了网页的EAC,但是也有EAC做不到的事情,比如查看队列内容,Ex2013保留了以前的队列查看器,主要还是从易用性上面考虑,虽然使用起来性能不怎么样,队列查看器的内容每5秒刷新一次。但是时常会看到下边儿写着“X个任务进行中……”

队列状态:

每一个队列都会呈现下面几种状态:

活动:正在传输邮件

连接:正在连接下一跃点

就绪:代表该队列的所有邮件都传输成功,目前队列是空的。

重试:代表该队列正在等待重试连接

挂起:管理员手动挂起该队列,但是新邮件仍然会进入队列,但是邮件不会离开队列。

需要注意一下的是,如果是复杂的DAG环境里,那么邮件会被提交到其他Mailbox服务器进行队列而非是在本地服务器进行队列,这是由于Exchange可以将邮件传递给主要传递组里的任意服务器(当然是基于最小cost)。所以有可能你在当前这台服务器上查不到关于该邮件的队列信息,最好还是使用Get-QueueDigest来查看整个DAG里的队列。

下一章,咱们会一口气讲完如何维护队列,如何进行队列优先级的操作,以及如何利用分拣目录。

时间: 2024-10-06 19:19:04

「深入 Exchange 2013」17 队列 part2的相关文章

「深入 Exchange 2013」18 队列 part3

队列优先级 Exchange 2013当中,微软增加了一个"优先队列"的功能,打开它时,被标记为高优先级的邮件会比一般邮件先传送,而被标记为低优先级的邮件则会比一般邮件后传送:开启该功能之后呢,分拣器和路由算法不会受到任何影响,仅仅只是传输服务会在每个投递队列里按照优先级排列邮件. 队列优先级的设置主要通过修改EdgeTransport.exe.config配置文件的键值的方式来进行,首先通过PriorityQueuingEnabled键值设置为True开启该功能,接着按照需要调整下表

「深入 Exchange 2013」12 传输架构Part2

本章接着上一章,简单说一下四个组件在Exchange Server 2013整个传输架构当中各自负责什么. 前端传输服务(The Front End Transport Service) FET服务在整个传输里边似乎工作量是最小的:它负责所有客户端的入站与出站SMTP流量,FET是SMTP流量通过防火墙之后所接触到的第一个组件,和其他在CAS上运行的服务组件一样,FET服务不存储任何邮件数据,也不维护任何的队列,以及提供基本上是无状态的客户端连接(对客户端连接不维护任何的状态信息).但是,FET

「深入 Exchange 2013」11 传输架构Part1

阅读过TechNet文档的人肯定对下面这张图不陌生,这张图完整诠释了整个Exchange 2013的邮件传输架构,前一章里已经简要讨论过的几个组件都在里头,然而还有一些其他的组件也值得深入讨论.首先咱们来聊聊图里边出现的重要词汇. 1."代理"在这里是指Agents,而非是proxy,即处理或者传输消息的某一块程序代码.图中的agents直接反映出Exchange的Business logic,例如Exchange的反垃圾和恶意软件筛选组件属于协议代理,路由代理.邮件传递代理和邮件提交

「深入 Exchange 2013」01 客户端访问角色架构

Exchange 2013当中CAS角色的重要性不用多说.在Exchange Server4.0.5.0和5.5版本中,都没有特定的一个客户端访问功能角色,Exchange 2000引入了前端服务器的概念(front-end),这种服务器不存放任何邮箱数据,只提供客户端连接.一直到Exchange 2007,带来了第一次CAS角色的迭代:尔后在后面的产品中不断被加强改善. 在Exchange 2007的时候,CAS角色就已经负责以下三种类型的流量: 外部连接 内部连接 被其他CAS服务器重定向,

「深入 Exchange 2013」15 TLS传输层安全

默认情况下,SMTP流量是不被加密的,这就导致在公网上进行邮件沟通就像是在广播一样,任何人拦截到该邮件都可以轻而易举的读取其内容.但是现实场景中有许多敏感信息是通过邮件来进行发送的,所以其中一种保护邮件安全的方法就是使用传输层安全协议(Transport Layer Security)来提供SMTP流量在传输中的加密,受TLS保护的SMTP流量可以让拦截/窃听者无法读取到SMTP流量的内容,但是它只提供传输过程中的保护,对于已经到达目标服务器,或者是在发件方本地服务器的邮件则没法提供保护. 有两

「深入 Exchange 2013」10 传输服务简述

前面的内容里面,已经为大家比较深入的介绍了Exchange2013的客户端访问角色涉及到的诸多细节.在接下来的章节里就跟大家聊一聊Exchange 2013里的传输服务,这一节总共的内容都比较多,而且更偏向理论,所以咱先来一篇简述,然后再分拆开一个一个讲. 在之前的版本中,由Exchange2007引入了Hub Transport(集线器传输)角色作为所有邮件信息的传递中枢,任何发送或者接收到的邮件都必然会经过至少一个Ex2010与Ex2007的集线器传输角色:那么在Exchange2013当中

「深入 Exchange 2013」19 邮件限制

这一章咱们来讲讲Exchange中对邮件的QOS设置,这些设置平常也许大多数场景中不会涉及到,因为需要大批量发送邮件的场景里都会用到邮件中间件(发送大量宣传邮件或者报表).但是一旦让咱们碰上了,咱们也得知道从哪下手去调整这些设置不是,关于这个话题Technet上已经写得非常好了,咱这里也是做个总结和搬运. 在面对大批量邮件流量的时候,如何保证邮件流的处理井然有序,避免引起邮件阻塞,同时保护Exchange服务器防止其被过度使用,这是一个及其值得注意的问题.Exchange 2013当中引入了"邮

「深入 Exchange 2013」MAPI over HTTP实战配置

在前面我们聊Outlook Anywhere的文章里头,我提到了MAPI over HTTP这个Exchange Server 2013 SP1中新增加的功能,这次这篇文章咱们就详细说说这个新的传输协议是什么,以及实战如何去配置它. 什么是MAPI/HTTP,有什么好处? 以前版本中(Exchange 2010),用的是RPC over HTTP(外部网络outlook anywhere)以及RPC Direct(内部网络)连接,Exchange 2013里,所有的连接都通过Outlook An

「深入 Exchange 2013」07 Autodisocver

微软在Exchange 2007里引入Autodiscover自动发现服务,意图去简化用户配置Outlook与Exchange ActiveSync的过程.Outlook的配置文件虽然可以手动配置,但是从Autodiscover会覆盖手动配置的选项,在你做出一些更改的时候,明显批量的自动下发配置更方便. Autodiscover还负责告诉Outlook当前的邮箱位置信息,Outlook会在与邮箱断开连接之后重新尝试Autodiscover.总而言之,这玩意儿跟Outlook Anywhere一样