如何实现两台客户端A、B,A提交数据,B自动判断数据变化同步输出打印?
如题。我的方法是B不断请求服务器,数据改变就自动打印。这个方法对服务器资源消耗过大。由于同步的时间要求比较短,所以不知还有没有更好的办法?没做过C/S软件,有没有能够让服务器端主动触发客户端事件的方法?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
有个象观察者模式的意思。
这种最好采用C/S的模式。比如一个服务程序,两个客户端程序,客户端程序之间用UDP方式收发数据,当服务端收到客户端数据的时候,将数据处理之后发送给另一个客户端,这种方式只要服务端的客户端都监听UDP端口即可,不用轮询,可以做到类似事件触发的效果。关于UDP编程如果有问题再探讨。
UDP方式是无状态的,不会一直和服务器保持连接,对资源的消耗小于TCP方式,缺点是不能保证不同的消息按发送顺序被对方接受,建议客户端每次接收到UDP消息,都给一个反馈,好让服务端知道客户端有没有正确接受消息。
其实还可以在服务器程序上集成消息队列,比如嵌入ActiveMQ服务,将大大简化消息的收发和通信过程。
可以使用Socket监听的方式
可以使用Socket监听的方式