2017-12-04 12 views
0

WebAppのフロントエンドにトランスポートレイヤを作成しています。ユーザーはモバイルアプリ、ブラウザの両方で接続することができます。トランスポート層は、チャットアプリケーション、マルチページウェブアプリケーション、通知、および電子メールサーバを含む複数のアプリケーションに対応しています。規模は約4000人の同時ユーザーです。いくつかのシナリオ異なるサービスが相互にやり取りする必要があるかもしれません。例えばチャットサーバは電子メールを送信することができる。クラウド上のPub Subを使用したソケットクラスタ

私はこのトランスポート層に最適なデザインを探しています。全体システムはクラウドに導入する必要がありますが、ベンダーから独立している必要があります。

マイデザイン: 1. HTTPポーリング用のNetBeansでNettoSphere(https://github.com/Atmosphere/nettosphere)またはNetty経由でソケットを作成します。 2. Socket LayerをRedisのようなPub/Subと接続します(現在はCloudのPub/Subを使用しています)。各機能サーバ(電子メール、チャットなど)は独自のチャネルを取得します。

疑問: 1. Ami Overkilling?私が使用できるシェルフ・ライブラリの準備はありますか?私は検索しましたが見つかりませんでした。私はこれが共通のユースケースであるべきだと思っており、何かが棚から離れているはずです。 2. Javaの場合、クラスタ全体でNettosphereの規模は変わりませんか?または、Node.jsでSocketClusterを使用する必要があります。私はJavaでもっと快適です。

答えて

0

WebSocketを使用して簡単にパブ/サブを実装するのは難しくありません。

しかし、認証および/またはスケーラビリティの要件を導入すると、問題は非常に困難になります。システムにこれらの2つの機能が必要と思われる場合は、SocketClusterを使用すると多くの時間を節約できます。

関連する問題