2

Windows XPsp3のJava6にRed5バージョン1.0.0(最終リリース)を使用しています。https: //code.google.com/p/red5/からダウンロードしたインストーラーバージョンを使用しています。。ユーザー間でライブウェブカメラチャットを実行しているプロジェクトがあります。そのためにRTMPT(HTTP over RTMP)プロトコルを使用しているので、Apache Webサーバーの背後にRed5サーバーをセットアップしました。問題は、すべてが45〜50秒間正常に実行され、突然RTMPT接続が閉じられることです。専用のrtmptサーバーを使用していない、つまり、confファイルでrtmpt Beanのコメントを解除していません。むしろ、アプリケーションのweb.xmlにサーブレットマッピング(idle、fcs、openなど)のエントリを追加しました。RTMPTは5080ポートでリッスンしています。以前のバージョンのRed5でもこれをテストしましたが、問題は同じです。しばらくすると(1分以内に)RTMPT接続が閉じます。ログを確認しましたが、これに関して何も見つかりませんでした。また、非アクティブ期間のために接続が閉じられませんでした。それはApacheと関係がありますか?サーバーが接続を閉じているのか(接続を閉じることに関するログは見つかりませんが)、クライアントが接続を閉じているのかわかりません.0.9.0と0.9.1でも試してみましたが、何も役に立ちませんでした。問題があったと聞きました。 MacではRed5でRTMPTを使用していますが、私はWindowsを使用しています。この問題へのポインタはありますか?助けていただければ幸いです。ApacheWebサーバーで取得したエラーログもここにあります-

[エラー](OS 10048)通常、各ソケットアドレス(プロトコル/ネットワークアドレス/ポート)の使用は1回のみ許可されています。:プロキシ:HTTP:red5serverip:5080(*)への接続に失敗しました。

同じログが4回繰り返されます。

ここにApacheからのアクセスログもあります-

"POST / send / IDTK7NOG2PXGB / 803 HTTP / 1.1" 200 1
"POST / send / IDTK7NOG2PXGB / 804 HTTP / 1.1" 503 323
"POST / send / YXF4WTFMN8TCM / 1391 HTTP / 1.1" 200 8285
"POST / send / YXF4WTFMN8TCM / 1392 HTTP / 1.1 "200 1
" POST / send / YXF4WTFMN8TCM / 1393 HTTP / 1.1 "200 54
" POST / send / YXF4WTFMN8TCM / 1394 HTTP / 1.1 "200 1
" POST / send / YXF4WTFMN8TCM / 1395 HTTP / 1.1 "503 323
" POST /close/IDTK7NOG2PXGB/805 HTTP / 1.1 "
503323" POST /close/YXF4WTFMN8TCM/1396 HTTP / 1.1 "503323

ありがとう!

4

3 に答える 3

1

おそらく、tcp ポートが不足しています。tcp 接続は、既に閉じられている場合でも、デフォルトで 4 分間 TIME_WAIT 状態のままになります。RTMPT ストリームが毎秒 5 つの接続を使用する場合、接続しているユーザーごとにシステムに少なくとも 5*60*4=1200 ポートが必要になります。

多くの場合、ファイアウォールは使用可能なポートの量を制限しています。TCP ソケットのキープアライブ時間を短縮することもできます。Apache のエラー メッセージを Google で検索すると、これを整理するのに十分な情報が見つかります。

于 2012-12-15T18:56:28.943 に答える
0

red5サーバーがクラッシュする可能性があります。これは、RAMの使用量が増えているときに発生します。その場合、手動でred5を再起動する必要があります。これで問題が解決した場合は、RAMをアップグレードする必要があります。この問題に何度か直面した後、私は約8GBのRAMを使用しています。red5はJAVAを使用して作成されているため、メモリが不足しています。FFMPEGは低メモリでの使用に適しています。しかし、ffmpegを使用してチャットを提供する方法は正確にはわかりません。

于 2013-02-01T10:47:18.447 に答える