7. サイジング

7.1. サーバ台数について

必要な SSE Push サーバの台数は、同時使用するクライアントの台数に依存します。

システム構成で述べた、クライアント - サーバ間の接続は HTTPS コネクションが常時維持された状態となりますので、 SSE Push サーバは 待受中のクライアント数と同数の HTTPS コネクションを常時維持しなければなりません。

各 SSE Push サーバは、性能によりますが1台で数千台、最大でも1万台程度のクライアントしか同時に受け付けできません。 このため、クライアント台数が1万を超えるような場合は、クライアント数に比例して SSE Push サーバを立てる必要があります。

クライアント数が非常に多くなってくるとロードバランサも1台では処理できなくなる可能性があります。 この場合は複数台ロードバランサを構成し、DNSラウンドロビンで分散するなどの対応が必要です。

なお、AWS を使用している場合は ELB (Elastic Load Balancer) を使うことで自動的にロードバランサを分散させることができます。

7.2. Tomcat の設定

Tomcat には最大コネクション数の設定が必要となります。 詳細は Tomcat のインストールと設定 を参照してください。