IMAP の内部スレッドの使用を設定する
IMAP サービスは、メッセージを取得しようとする IMAP クライアントと HCLDomino® メールサーバー間の媒介として機能します。IMAP クライアントは Domino サーバーのメールファイルには直接アクセスできません。代わりに IMAP サービスがプロキシとして機能し、各クライアントからのメッセージ取得の要求をメールサーバーに中継して送ります。メッセージデータをクライアントに返すために、Domino はメールデータベースを開き、要求された情報を IMAP サービスに回します。次に IMAP サービスは要求されたメッセージ情報をクライアントに送信します。
このタスクについて
IMAP クライアントでユーザーが Domino IMAP サービスにログインすると、IMAP セッションが開始します。Domino は、サーバーのメインスレッドプールから各 IMAP セッションに固有のセッションスレッドを割り当てます。このセッションスレッドが、クライアントと IMAP サービス間のすべての通信で唯一のチャネルとなります。セッションの終了時に Domino は、別のクライアントが使用できるようスレッドをプールに返します。
セッションスレッドは、サーバーの IMAP ポートと直接通信してクライアントの入力データを受け取り、受け取った要求の構文を検証し、要求を IMAP サービスのキューに入れて、IMAP サービスからの応答をクライアントに返します。IMAP サービスからの応答が遅い場合は、クライアントが接続を閉じないように、メインスレッドからクライアントに Keep-Alive メッセージが定期的に送信されます。
Domino サーバーは、クライアントセッションごとにサービスを提供するために新規スレッドを割り当てるため、1 つの Domino サーバーは複数のクライアントと同時にやりとりできます。クライアントはポートに接続し、そのポートを経由してすべての入出力データを交換します。スレッドにはメモリと CPU 時間が必要です。スレッドプールに含まれる物理スレッドには数に制限がありますが、1 つのスレッドがさまざまなタスクで動作するようスレッドの使用は仮想化されています。つまり、情報を待機しているために 1 つのタスクでアイドルの状態になっている単一スレッドをすぐに別のタスクに切り替えることができます。これによって Domino はプロセッサの使用を最大化して、メモリの使用を最小限に抑えられます。
接続が要求されるたびに物理スレッドを新規作成する必要がないように、Domino は使用可能なメモリを最大限に活用します。ただし、IMAP セッションの数が多いと、Domino サーバーに負荷を与える可能性があります。サーバーの負荷が大きいときにクライアントで応答の遅延がある場合は、IMAP セッションの数を制限することを検討してください。
内部 IMAP スレッドプール
このタスクについて
Domino IMAP サービスには、Domino でクライアントセッションの作成に使用されるスレッドプールとは別の内部 IMAP スレッドプールが用意されています。使用可能なスレッド数のデフォルト値は、サーバーの物理メモリの量に基づきます。IMAP サービスで使用可能なスレッド数の最小値は 50 で最大値は 400 です。IMAP サービスが適切に機能し続けるようにするには、デフォルトのスレッドプール設定を使用し、設定を変更する場合は資格を有するサポート担当者の指示の下にのみ行うことをお勧めします。
使用可能なスレッドは、メインのセッションスレッドが要求をキューに入れたときにアクティブになります。
スレッドの種類 |
説明 |
デフォルトの最大値 |
---|---|---|
FETCH スレッド |
クライアントから検証済みの FETCH コマンドを受け取り、Domino メールサービスに転送します。 |
プール全体の 80% |
FETCH 応答スレッド |
クライアントの FETCH 要求に応えるために、Domino メールサービスからメッセージデータを転送します。 |
プール全体の 80% |
LOGIN 変換スレッド |
メールファイルを IMAP 形式に変換します。 |
なし |