Exchange MailKit 反应缓慢

Exchange MailKit reacts slowly

当我针对 Exchange 服务器使用 MailKit 时,我从交换服务器日志中看到以下流程,显示 starttls 和 capability 之间的时间过长(大约 15 秒),有时同一过程需要大约 20 毫秒,这是一个巨大的差异!

流程如下:

OpenSession 
capability  
starttls    
capability  
authenticate NTLM
capability
namespace   
list "" "INBOX"
list "" Inbox
select INBOX
uid FETCH 22274 (BODY.PEEK[])
logout  

在 MailKit 中,我每次都创建一个新的 ImapClient,如下所示:

  1. 使用 NullProtocolLogger() 作为参数创建新的 ImapClient。
  2. 调用此客户端的 .Connect(),带有(用户名、密码、false)参数。
  3. 使用新的 NetworkCredentials 调用此客户端的 .Authenticate()。
  4. 获取收件箱文件夹并接收我要查找的邮件。
  5. 调用此客户端的.Disconnect(true)。

我不明白为什么 Exchange 服务器偶尔会偶然发现 'starttls' 和 'capability' 之间的相同序列。

有什么想法吗?是 Exchange 服务器问题,还是 MailKit 问题?

这是一个 Exchange 服务器问题。服务器很可能因来自其他客户端或其他原因的请求而过载。