1

チャット アプリケーション用に Amazon Ec2 Linux インスタンスで openfire サーバー 3.7.1 を使用しています。

現在、開発の初期段階にあり、4 ~ 5 人の同時ユーザーでテストしています。現在、openfire サーバーで問題が発生しています。

1) Java ヒープ領域の例外。

2) java.net.BindException: アドレスは既に使用されています

3) どちらも 5222 ポートがリッスンしない原因となりますが、9090 の Openfire 管理コンソールは正常に動作しています。

最終的に、すべての openfire プロセスを停止してから再起動すると、再び正常に戻ります。

これが openfire バージョン 3.7.1 のバグなのか、それとも EC2 のポート 5222 を開く際の問題なのかを知りたいです。何千人ものユーザーが同時に使用する場合の Openfire サーバーのパフォーマンスについて本当に心配していますか?

解決方法:

  1. PEP を無効にします。

  2. Openfire JVM パラメータの増加

4

2 に答える 2

1

Javaヒープスペースの例外はOpenfireに共通です。JVM引数を確認し、パラメーターを増やすことができます。私の経験では、それらを引き起こしたいくつかのケースがありました:

  • 共感を使用しているクライアント。
  • バディリスト/ホワイト/ブラックリストなどを提供するプラグイン(ユーザーの名簿リストで何かをしなければならなかった)。

EC2ファイアウォール設定でポート5222と5223が開いていることを確認する必要があります(一部のクライアントは古いSSLポートを使用する場合があります)。

数千人のユーザーを計画している場合は、静的IPアドレスを取得することをお勧めします(現在の構成については言及しません)。また、チェックアウトジャバード-オープンファイアよりも信頼性が高いことが証明されました。

于 2012-04-06T12:21:35.167 に答える
1

Openfire では、何千もの同時ユーザーがまったく問題になることはありません。テストでは 250K を確認しました。ユーザーが何をしているかに関係なく、常に決定要因になります。

Openfire には既知のメモリ リークがあり、修正されていますが、まだリリースされていません。これは PEP に関連しており、可能であればこの問題を回避するために停止することができます。

于 2012-04-06T18:30:11.780 に答える