5

XMPP サーバーをゼロから構築する作業を行っています (特定のニーズがあるため)。明確な全体像を把握できない領域の 1 つは、XMPP をどのようにスケーリングするかです。10,000 人のユーザーがいて、XMPP サーバーの各インスタンスが最大 2,000 の同時クライアント/接続を処理できるとします。ここで説明されているように、 XMPPの複数のインスタンスを実行し、クライアントはこれを使用して実行中のインスタンスの 1 つに接続します。

ここで言及されているように、Google が 5 つの XMPP サーバーを使用するように、主要な XMPP サービス プロバイダーはすべて複数のサーバーを使用していると思います: http://kingant.net/check_xmpp_dns/?h=kingant.net

ここで、A と B の 2 人のユーザーがいるとします。A は server_1 に接続し、B は server_2 に接続します。A が B にメッセージを送信するとき、A から server_1、sever_2、B へのメッセージの流れ全体はどのように発生しますか? server_1 は、B が server_2 に接続されていることをどのように認識していますか? これは S2S 経由で行われますか? 繰り返しますが、私はスケーラビリティのみに関心があり、2 つの異なる XMPP サービス プロバイダー間の相互運用性には関心がありません。

どんな助けでも素晴らしいでしょう。

4

1 に答える 1

1

XMPPサーバーをスケーリングする方法の一般的なルールはありません。これは、実際に構築するプロジェクトのタイプによって異なります。ejabberdは、非常にスケーラブルなサーバーを作成するための基本的なツールを提供しますが、XMPPがどのように機能するか、およびプロジェクトを設計して機能させる方法を理解する必要があります。

読むことをお勧めします:http://blog.process-one.net/scale_means_skills/

注:Googleには5台をはるかに超えるXMPPサーバーがあります。

于 2013-01-10T11:13:06.363 に答える