私は、自分が購読しているすべてのイベントについて、自分のユーザーに電子メール通知を送信する必要があります。私のサービスは大規模ではありませんが、それが一つになるのを止めるものではありません。複数のメールを効率的に送信する
現在、Springのメール送信者をかなり同期的に扱っています(購読しているメールアドレスをコレクションから集めてメールを送信しています)。しかし、この方法がすぐに使えなくなることがあります。したがって、私はもう少し並列化を目指しています。
同時に多数のスレッドが存在しない限り、複数のスレッドが状況を助けることがあります。私は、メモリ内のキューのようなものが必要になると思います。一定の間隔でメールを一括して送信し、新しいスレッドを開くことができます。終了したスレッドは、スレッドプールに収集され再利用されます。
提案?おそらく私のアプローチは複雑すぎます。おそらく、Springはすでにブロッキングと同期を緩和する手段を提供しています。私は知ってうれしいだろう。
あなたはSO.programmersでより良い答えを得るかもしれません – Coffee
あなたのボトルネックはほとんどCPUになることはありません。言い換えれば、コード効率について心配する必要はありません。 – tripleee