web-dev-qa-db-ja.com

XMPPサーバー:ejabberd vs openfire vs prosody

私はXMPPがどのように機能するかを理解しようとしています(プロトコル全般の初心者向け)。サーバーをセットアップしたいと思います。

これまでのところ、私は3つの主な挑戦者を見ました:

  • 邪悪な
  • 韻律

私はいくつかのウェブサイトと ウィキペディア で確認しましたが、それらすべてについて賛否両論はありません。

どこで理解できる情報を見つけることができますか?

PS:コンテキストがどういうわけか重要な場合、私は自分の個人的なRaspberry Piにサーバーを設定したいので(それほど多くの処理能力はありません)、私の最終的な目標はXMPPを小さなAndroidアプリGoogleクラウドメッセージングの使用

17
Dan Chaltiel

オープンソースのXMPP Webクライアント( [〜#〜] jsxc [〜#〜] )の ejabberd および Prosody 、次の違いに気付きました。私はejabberdでより多くのことを行ったので、当然、より多くのnitpickingがありますが、より多くの賞賛もあります。

邪悪な

長所

  • 実装されているメカニズムは、通常は堅固です。これはおそらく、企業がこの品質を必要とするサービスを提供しているという事実によるものです。
  • ejabberdctlと管理Webインターフェースを使用すると、プロセスの実行中に多くの設定を行うことができます。構成ファイルを頻繁に変更する必要がある場合でも、それらを再ロードすると、中断することなく適切に処理されます。
  • ejabberdは、信頼性またはパフォーマンスのためにclusterに簡単に変更できます。
  • 組み込みSTUN/TURNサーバーが付属
  • 共有名簿グループは非常に強力ですが、慣れる必要もあります。

短所

  • documentationは、ほとんどオプションに基づいています。つまり、マニュアルページに似たオプションが説明されています。オプションの相互作用、ベストプラクティスの使用方法、または実際にオプションを配置する場所(特に仮想ホスティング環境)の例はほとんどありません。
  • extendejabberdが必要な場合は、 Erlangを把握できる必要があります。 、非常に強力な言語ですが、ほとんどの初心者が学習するプログラミング言語とはかなり異なります。
  • External Service Discoveryextdisco も(まだ)サポートされていません。

韻律

長所

  • 多くのコミュニティモジュールがあります。これは、 Lua プログラミング言語。
  • 純粋なコミュニティプロジェクトとして、時間を投資したい場合は、プロジェクトを形作ることができます。
  • Doessupportextdisco(クライアント構成が少なくて済む)およびmam:2(クライアントによるサポートの向上)

短所

11

My Top XMPPサーバーソフトウェア

上:統計的用途

  • 1)エジャバード(61.6279%)
  • 2)韻律(17.0543%)
  • 3)OpenFire(7.36434%)

上:マルチコアの使用

  • 1)EjabberdとOpenfire

  • 2)---!

上:メモリ使用量

  • 1)韻律
  • 2)エジャバード
  • 3)Openfire

上:Web-admin

  • 1)Openfire

  • 2)エジャバード

  • 3)no(デフォルト)

上:プログラミング言語

  • 1)Openfire(Java)およびProsody(Lua)

  • 2)Ejabberd(アーラン)


Personnal/Raspberry Pi/ejabberd vs openfire vs prosody =(私の選択)Prosody


統計的使用(ロシア語Wiki):

http://jabberworld.info/%D0%A1%D0%BF%D0%B8%D1%81%D0%BE%D0%BA_%D1%80%D0%B0%D0%B1%D0 %BE%D1%82%D0%B0%D1%8E%D1%89%D0%B8%D1%85_%D0%BF%D1%83%D0%B1%D0%BB%D0%B8%D1%87 %D0%BD%D1%8B%D1%85_%D1%81%D0%B5%D1%80%D0%B2%D0%B5%D1%80%D0%BE%D0%B2_Jabber

レビュー(ロシア語Wiki):

http://wiki.404.city/%D0%94%D0%B6%D0%B0%D0%B1%D0%B1%D0%B5%D1%8

11

RaspberryPIでサーバーを実行している場合、Prosodyを選択します。それは非常に軽量で、Luaで書かれています。

OpenfireはJavaであり、小規模な環境でも十分な量のリソースを実行する必要があります。

最小限の代替案はたくさんありますが、それはすべてあなたが求めている機能のレベルに依存します。

4
kincaid