私はIM機能を備えたプロジェクトに取り組んでいます。私たちは、チャットメッセージと通知をサポートする自己製作のサーバーを構築しています。クライアント(iphone、アンドロイド、ウェブ)はサーバーとの長いHTTP接続を行い、IMメッセージとシステム通知を取得します。接続管理機能としてApacheを使用していますが、CLOSE_WAITの問題が発生します。 オープンソースXMPPサーバーをopenfireまたはejabberedとして使用すると、完全なIMおよび通知機能を利用できます。しかし、我々はXMPPサーバと統合してWeb IMのための機能を作る努力が必要です。私たちのプロジェクトの提案はありますか?ありがとうございました。XMPPまたは自作サーバを選択する必要がありますか?
2
A
答えて
12
インターネットベースのシステムを構築するときは、標準化されたプロトコルを試してみてください。そのため、相互運用性を確保するためにIETFが存在します。
XMPPの使用が難しいというご意見はありますが、実際にはそれはまったくではありません。単純にXMLをストリーミングしており、非常に拡張性があります。すでに利用可能なライブラリのリストを見てください。数時間でXMPPチャットを開始することができます。
サーバでは、トラフィックが多い場合はejabberd、商用ソリューションの場合は使いやすさ、Isodeをおすすめします。
もう1つの選択肢は、ProcessOne、CleartextなどのXMPPホスティングプロバイダを使用することです。
0
あなたのニーズに応じて、XMPPは非常に柔軟性があり、IM以上のことができます。また、標準化されているため、後で必要に応じてより多くのサービスを組み込むことが容易になります。しかし、必要なのはログインしたユーザーのための簡単なチャットルームです。残念です。代わりのものはFayeまたはそれに類するもののような本当に軽いものかもしれません。
FayeはNode.jsとRuby/Rackをベースにしていますが、それらがあなたに合っていない場合は他のプラットフォームでも同様のものを見つけることができます。
関連する問題
- 1. 選択したテキストをスクランブルする必要があります
- 2. VPSのKVMまたはOpenVZを選択する必要がありますか?
- 3. Visual C++ 2010または2008を選択する必要がありますか?
- 4. 私は選択する必要がありますインデックス(MySQLの)
- 5. jquery mobile:選択メニューは2回選択する必要があります
- 6. WCFセキュリティ - トランスポートまたはメッセージセキュリティで選択する必要があります
- 7. 私はどのItemControlを選択する必要がありますか?
- 8. 選択リストデータをビューに送信するか、データ自体を取得する必要がありますか?
- 9. ブラウザ用のActiveX。どちらがVB6または.NETを選択する必要がありますか?
- 10. ダイアログプリファレンスから連絡先を選択する必要があります
- 11. どのデータ構造を選択する必要がありますか? [Androidディクショナリ]
- 12. Oracle XEまたはMySQLのいずれかを選択する必要がありますか?
- 13. XMPPアプリケーションは他のクライアントをフィルタリングする必要があります。 Pidgin out
- 14. 私はyoutubeまたはYouTubeのAPIのためにGDataを選択する必要があります
- 15. phpがLinuxサーバで機能する必要があります
- 16. Java EEアプリケーションを作成するためにデザインパターンを選択する必要があります
- 17. jQuery validate - ユーザがYESラジオを選択する必要があります。
- 18. Linqまたはストアドプロシージャ - どちらを選択する必要がありますか?
- 19. 最初にASP.NETまたはPHPを選択する必要がありますか?
- 20. XMPP/Jabber:カスタムメッセージの場合、クライアントまたはサーバーを変更する必要がありますか?
- 21. プレーンHTMLテーブルよりCrystal ReportまたはSSRSを選択する必要があるのはなぜですか?
- 22. 選択時にUITableViewCellサブクラスでサウンドを再生する必要があります
- 23. iOS:Tapkuカレンダー:複数の日付を選択する必要があります
- 24. SpinnerコントロールでSqlite Savedデータを選択する必要があります
- 25. 私のSSISパッケージで選択する必要がある作業
- 26. 独自のGridView実装を作成する必要がありますか?
- 27. MongoDB自分のIDキー列を作成する必要がありますか?
- 28. LinuxシェルスクリプトまたはJavaプログラムを作成する必要がありますか?
- 29. APIまたはWebサービスを作成する必要がありますか?
- 30. コントローラーまたは作成ヘルパーを拡張する必要がありますか?
プロジェクト名、つまり韻文をありがとう。私は一般的なアイデアに同意し、準備が整ったサーバをインストールすることは、独自の(ソケット)ソリューションを開発(およびデバッグ、デバッグ、デバッグ)するより簡単です。 –