複数のメールリーダー
POP3/IMAP メールアカウントを、複数のメールリーダージョブによって処理できるメールアカウントグループ (メールアカウントのサブセット) に整理します。受信メールアカウント処理のパフォーマンスを改善するために、メールアカウントグループを段階的に追加し、必要な場合は、メールアカウントグループを同時に処理するためのメールリーダージョブを追加できます。
メールアカウントグループ処理の仕組み
デフォルトでは、メールリーダージョブは POP3/IMAP メールアカウントを順次処理するため、結果として、多数のメールアカウントがある場合は処理時間が長くなることがあります。また、処理時間の長期化の一因となる可能性がある問題のあるメールアカウントを特定することが困難な可能性もあります。
メールアカウントの処理時間を短縮するために、メールアカウントのサブセットを含む 1 つまたは複数のメールアカウントグループを作成できます。メールアカウントをグループ化すると、デフォルトのメールリーダージョブによって、各メールアカウントグループを個別に処理できます。1 つまたは複数のメールアカウントグループを作成した後、同時にアカウントグループを処理するために別のメールリーダージョブを追加できます。
glide.email.inbound.account_group_processing システムプロパティを使用して、メールアカウントグループ処理を有効化します。
- メールアカウントは、メールアカウントグループ [sys_email_account_group] テーブルに格納されます。
- デフォルトのメールリーダージョブは、2 分ごとに実行されます。メールリーダーは、アカウントグループの処理状態と、グループが最後に処理された日時に基づいて、処理するアカウントグループを選択します。
- 要求済みの状態:アカウントグループが要求済みの状態である場合、メールリーダーはアカウントグループを処理しています。他のメールリーダージョブが定義されている場合、それ以外のメールリーダージョブはグループの処理を要求できません。
- 未要求の状態:アカウントグループが未要求である場合、アカウントグループはメールリーダーによって処理可能です。
- メールリーダージョブは、選択したアカウントグループに含まれるメールアカウントを処理します。
- メールリーダージョブは、次に処理できるアカウントグループを選択し、そのアカウントグループの処理を続行します。
メールアカウントグループの処理時間を確認した後、メールアカウントグループ処理にさらに調整を加えるかどうかを決定します。たとえば、別のメールアカウントグループを作成したり、メールアカウントグループを並列で処理するために別のメールリーダージョブを作成したりすることができます。追加のメールリーダージョブは、スケジュール [sys_trigger] テーブルを使用して定義します。
メールアカウントグループ処理の設定
メールアカウントのグループの処理を設定するには、email_account_admin または admin ロールが必要です。
- 1. メールアカウントグループを作成します。
- POP3/IMAP メールアカウントのサブセットを含む 1 つまたは複数のメールアカウントグループを定義します。ベースシステムには、デフォルトのメールアカウントグループが含まれています。メールアカウントグループに含まれていない POP3/IMAP アカウントは、デフォルトのメールアカウントグループの一部として処理されます。
- 2. メールアカウントグループ処理の有効化
- sys_properties.list に移動し、glide.email.inbound.account_group_processing システムプロパティを検索します。[値] を true に設定します。メールリーダージョブは、作成したメールアカウントグループの処理を開始します。
- 3. メールアカウントグループの処理を監視します。
- メールアカウントグループのステータスをチェックして、処理時間が短縮されているかどうか確認します。追加のグループが十分にアカウント処理時間を短縮しているか、または、さらに処理時間を短縮するために別のメールリーダージョブの追加を検討するかどうかを決定します。
- 4. メールリーダージョブを作成します。
- メールアカウントグループ処理の微調整の一環として、デフォルトのメールリーダージョブに加えて、メールアカウントグループを同時に処理するためのメールリーダージョブを作成します。