2

私は通知システムを作成する必要があるプロジェクトに入っています。これは、AWSインフラストラクチャ上で動作するPyramidフレームワークを使用して作成されたWebサイト用です(私はこのサーバがApacheまたはApacheであると確信しています)。AWS上のソケットで通知を配信するにはどうすればよいですか?

ユーザーが何かをフォローすると、すべての友だちに「Xは今すぐYに従っています」という通知がすぐに表示されます。したがって、WebSocketサーバー(多分node.jsまたはsocket.io)が必要です。これを行うと、同じEC2インスタンス(Webサーバーとソケットサーバー)で2つのサーバーが実行されますが、Webサーバーからソケットサーバーにイベント/通知を渡すにはどうすればよいですか?

真ん中に何かがあるはずでしょうか? AWSが私に提供できるもの。またはソケットサーバーに直接フィードする方法はありますか?

この状況にはどのような良いアプローチがありますか?

派生した質問は次のとおりです。通知を受け取る友だちリストを取得するのに最適な場所はどこですか? Webサーバーかソケットサーバーか?

答えて

0

2つのサーバーの前にプロキシが必要です。このサーバーは、URLやその他のリクエストパラメータに応じて、Pyramidアプリケーションまたはnode.jsにリクエストを委任します。

もう一つの選択肢は、geventでPyramidを実行し、gevent_socketioを使用して、すべて同じアプリケーション内で作業することです。

+0

1. [pyramid_socketio](https://github.com/abourget/pyramid_socketio)は推奨されていないようです。代わりに[gevent-socketio](https://github.com/abourget/gevent-socketio)をサポートしています。しかし、同じサーバーを使用すると、ピラミッド・アプリケーションを過度に使用しないでしょうか? –

+0

2.ピラミッドアプリケーションからnode.jsサーバーにどのようにフィードできますか。 –

+0

は、pyramid_socketioコードのほとんどをgevent_socketioに移動したことを忘れていました。「ピラミッドアプリケーションの過度な使用」とはどういう意味ですか?そして、node.jsサーバーを「フィード」することはどういう意味ですか?通常、異なるアプリケーションは共有データモデルとは独立しています。 –

関連する問題