Desknets(Denbun)からのアクセス時、IMAP4サービスのCPU負荷を下げるための方策について new!
IMAP4対応のWebメール、特に Desknets(Denbun)を使用している場合は、1アカウントから同時に多数のセッションを張ろうとし、しかもすべての処理をIMAP4サーバ側で任せる形を取るため、E-Post IMAP4サービス(epstimap4d)のCPU占有率が高くなりがちです。負荷を下げるための方策をあげてみます。
1.IMAP4対応のWebメール側の設定見直し
一般的にIMAP4対応のWebメールを使用する際、以下の設定項目があるときは設定見直しをしてください。
・セッションの制限設定があるときはその設定をする
・ユーザーが一定時間アクセスしていないときにはセッションを自動切断する設定をする
2.E-Post IMAP4サービス側の同時接続セッション数見直し
Desknets(Denbun)を使用しているときには、1アカウントからも同時に多数のセッションが張られる動作をするため、E-Post IMAP4サービス(epstimap4d)のCPU占有率が高くなりがちです。
以下の設定を試してください。
E-POSTコントロールセンターのメールサーバ管理から[システム管理メニュー]をクリック、 [全設定]を[開始する]→[全設定(サーバー環境設定)]EPSTIMAP4D部分、もしくは[IMAP4詳細]を[開始する]
表示される[IMAP4詳細]の「接続セッション数」の値"0"を変更(※)。
設定変更後は epstimap4d サービスを[停止]→[開始]で再起動する。
※デフォルト値の"0"は無制限を意味しますので、最初は厳しめである"10"の設定から試し"15","20","25","30"というように"5"ずつ上げていってCPUの負荷具合を確認してください。
※この設定変更により、CPUの負荷が下がる一方で、接続セッション数が制限されるとメールクライアントからの同時接続数に制限がかけられ、アクセスしようとしたWebメール側のいくつかのセッションが待たされる結果になります。ようすを見ながら適切な設定値を探してください。
3.E-Post IMAP4サービス側の無通信タイムアウトやIDLEタイムアウト見直し
E-Post IMAP4サービス(epstimap4d)の無通信タイムアウトおよびIDLEタイムアウトの時間設定は、デフォルトで1800秒=30分になっています。Desknets(Denbun)を使用しているときには、ログアウトしないでそのままつなぎっぱなしにするため、このデフォルト設定値だと長すぎる可能性があります。
無通信タイムアウトおよびIDLEタイムアウトの時間設定それぞれに対し、設定値を変更することで、もっと短い時間(たとえば30秒や60秒程度)でセッション切断するようにすれば、CPUの負荷軽減に効果ありそうです。設定を試しながら適切な設定値を探してください。
[メール作業フォルダ] (既定値 /var/spool/epms/)
→reg
→epost
→ims
→EPST5IMAP4S
→Timeout.1
無通信状態タイムアウト値 デフォルト:1800秒(=30分)
→IDLETimeout.1
アイドルタイムアウト値:NOOP命令のみのセッションで新着が指定時間内にないときセッション切断
デフォルト:1800秒(=30分), 値"0"のとき:タイムアウトしない
※設定ファイルがないときは、上記ファイル名を作成、値を10進で入力します。設定変更後は epstimap4d サービスを[停止]→[開始]で再起動するようにします。
※Desknets(Denbun)を使用しているとき、デフォルト値の"1800"秒は長すぎる可能性があるため、最初は"30"秒から試し"60","90","120"というように"30"ずつ上げていってCPUの負荷具合を確認してください。
(関連FAQ)
●メールクライアントに Outlookシリーズを使用するときはIMAP4のIDLE命令とBroadcastフラグを無効設定にすることを推奨
●Outlookが作成するフォルダ「削除済みアイテム」内に大量のデータを残したまま運用しているとIMAP4サーバ負荷が高まる