我正在构建一个应用程序,其中的要求是,有一个主服务器,它将向客户端服务器发送信号,根据此信号客户端执行某些操作并发回响应主服务器。这里只有一个主服务器,可以是多个客户端服务器。在特定时间,主服务器可以向多个客户端发送多个信号。 我目前正打算使用两个端口在Java中使用套接字编程来做到这一点。请让我知道实现这一目标的最佳方式吗?并且我们是否也有任何可以使用的良好现有API?Java中客户端服务器通信的最佳方式
回答
看看RMI:https://docs.oracle.com/javase/tutorial/rmi/如果你想要基于socket/TCP/UDP/etc的东西,用Netty写东西可能是很好的解决方案 - >http://netty.io/(他们有很好的例子)。
如果计划的服务器和客户端之间的通信不是comlex,并且不需要像Netty这样的库提供的所有这些东西,我还会建议考虑使用普通Java套接字。
感谢细节Mateusz。我想知道Netty和RMI是否是开源的?并且客户端和服务器之间的通信也将被安排。这里的服务器是一个Web应用程序,但客户端并不是基于Web的,它只是执行服务器所需的操作并返回细节,它可以是Java中的脚本或shell或任何其他内容。 – user2899524
Netty是开源的,RMI是在Java EE中构建的,因此您不必担心许可证。如果通讯必须安排,您必须单独实施。我可以推荐[Quartz](http://www.quartz-scheduler.org/)(opensource)。它有很多功能,但使用起来非常简单。无论那个服务器是web应用程序还是客户端其他东西。如果你提供适当的通信接口,这不会是一个问题。我使用Netty在Java服务器应用程序和用Java,C和Python编写的许多其他工作人员之间进行通信。 –
- 1. Delphi Indy TCP客户端/服务器通信最佳方法
- 2. 的Java通信客户端/服务器
- 3. 服务器客户端通信java
- 4. 客户端服务器通信java
- 5. 处理SSL客户端到服务器到客户端的最佳方式(relay?)
- 6. NodeJS中简单的客户端 - 服务器通信方式
- 7. 实现客户端/服务器通信的最简单方法?
- 8. 实现“即时”客户端 - 服务器通信的最佳解决方案?
- 9. 客户端服务器通信 - Java服务器
- 10. 在基于Spring的Java服务器上管理与Web客户端异步/推送通信的最佳方式
- 11. 客户端 - 客户端通过服务器通信
- 12. java通信中C客户端中的TCP服务器
- 13. 从java服务器发送文件到客户端的最佳方式
- 14. 制作分布式服务(移动客户端 - 服务器)的最佳方法?
- 15. MQTT客户端服务器通信
- 16. winsock客户端和服务器通信
- 17. Android客户端服务器通信
- 18. 服务器 - 客户端通信问题
- 19. Android,客户端服务器通信
- 20. Android + NodeJS:客户端 - 服务器通信
- 21. iOS客户端/服务器通信
- 22. REST服务器到客户端通信
- 23. Memcached客户端 - 服务器通信
- 24. Qt TCP服务器/客户端通信
- 25. 客户端 - 服务器通信
- 26. 客户端/服务器通信WPF
- 27. 客户端 - 服务器PHP通信
- 28. 客户端 - 服务器TCP通信
- 29. 简单客户端服务器通信
- 30. 服务器/客户端通信问题
您是否听说过[websockets](http://www.oracle.com/technetwork/articles/java/jsr356-1937161.html)?也许这不适合你,但看起来你就是这样。 – Gendarme