tôi sẽ bắt đầu một dự án mới. Trong dự án này tôi có một máy chủ và nhiều khách hàng (trên 100000). Khách hàng và máy chủ liên tục sẽ liên lạc với nhau. Họ chỉ sử dụng tin nhắn văn bản. Tôi nghĩ rằng, quá khó để quản lý với tcp socket vì vậy tôi nên chọn XMPP hoặc SIP. Tôi sẽ sử dụng Java trong dự án này. Bạn gợi ý cho tôi cái nào? và ưu và nhược điểm của họ là gì? hoặc bạn có biết giải pháp hiệu quả hơn không?XMPP vs So sánh SIP
Trả lời
Nó giống như so sánh táo với cam, vì SIP ban đầu được thiết kế cho VoIP và XMPP cho nhắn tin tức thì.
Theo ý kiến của tôi, đối với tin nhắn văn bản, XMPP phù hợp hơn.
XMPP dễ dàng hơn nhiều so với quan điểm của tường lửa - nó chỉ cần một cổng TCP 5222 (và cổng 5269 để liên lạc với máy chủ đến máy chủ). Vì 5222 là cùng một cổng như Google Talk đang sử dụng, nó hiếm khi được lọc bởi tường lửa của công ty. XMPP cũng hỗ trợ STARTTLS trên cùng một cổng 5222, vì vậy lưu lượng truy cập có thể dễ dàng được bảo mật.
SIP, mặt khác, thường hoạt động trên UDP, cần nhiều hơn một cổng và thường được lọc bởi tường lửa của công ty.
Tôi nghĩ bạn nên sử dụng SIP vì nó hỗ trợ giao thức ngang hàng và trên UDP/TCP. Nó hỗ trợ SIP SIMPLE và CPM xem http://www.linkedin.com/groups/Differences-betwen-SIP-SIMPLE-CPM-1890406.S.150607448 để biết chi tiết.
Bạn sẽ viết ít mã hơn nếu bạn sử dụng chồng SIP nguồn mở đi kèm với các tính năng SIP SIMPLE và CPM.
Hãy xem servlets Sip Mobicent dựa trên Jain-SIP. https://code.google.com/p/sipservlets/. Bạn có thể sử dụng Tomcat/JBoss để triển khai máy chủ của bạn.
Bạn có thể thêm một máy chủ Presence Lightweight trên máy chủ mã nguồn mở SIP để hỗ trợ Presence giữa khách hàng SIP.
Trên ngăn xếp phía máy khách, bạn có thể sử dụng ngăn xếp nguồn mở cơ bản.
Chi tiết @ Looking for a SIP Stack for Android
- 1. PyQt vs PySide so sánh
- 2. Xmpp Vs Websocket
- 3. int vs Integer so sánh Java
- 4. So sánh cú pháp Razor vs ASPX
- 5. Perl so sánh đơn giản == vs eq
- 6. So sánh chuỗi Elements vs Strings
- 7. So sánh Integer đối tượng vs int
- 8. So sánh chuỗi: InvariantCultureIgnoreCase vs OrdinalIgnoreCase?
- 9. WebServices so sánh Webservices WebAPI vs MVC
- 10. Khóa vs So sánh và hoán đổi
- 11. So sánh: LINQ vs LAMBDA Expression
- 12. Chuỗi so sánh: toán tử ==() vs Equals()
- 13. Thư viện SIP SIP
- 14. ứng dụng trò chuyện: pubsubhubbub vs xmpp
- 15. So sánh với mảng numpy boolean VS PEP8 E712
- 16. So sánh điểm chuẩn của CodeIgniter vs Yii
- 17. C++ dynamic_cast vs typeid để so sánh lớp
- 18. Shell Vs. So sánh phức tạp thời gian Hibbard
- 19. So sánh dữ liệu tạm thời T-SQL # vs WITH
- 20. So sánh tốc độ Matlab vs C++ trong mã này
- 21. Sql Server int vs nvarchar so sánh về hiệu suất?
- 22. Phương pháp so sánh toàn cầu vs hàm tĩnh
- 23. C# Loại So sánh: Type.Equals vs toán tử ==
- 24. So sánh các điều tra viên vs iteratee gói
- 25. Java I/O vs NIO: So sánh điểm chuẩn nhanh
- 26. So sánh (và hợp nhất) hai dự án VS C#
- 27. So sánh datetimes bằng không so sánh
- 28. so sánh và so sánh công việc như thế nào?
- 29. So sánh so sánh System.Data.Sqlite 1.0.99 không hoạt động
- 30. So sánh và so sánh số nguyên chuỗi PHP Weird