开发者社区> 问答> 正文

如何实现两台客户端A、B,A提交数据,B自动判断数据变化同步输出打印? 400 请求报错 

如题。我的方法是B不断请求服务器,数据改变就自动打印。这个方法对服务器资源消耗过大。由于同步的时间要求比较短,所以不知还有没有更好的办法?没做过C/S软件,有没有能够让服务器端主动触发客户端事件的方法?

展开
收起
kun坤 2020-05-29 16:31:02 602 0
1 条回答
写回答
取消 提交回答
  • 可以使用Socket监听的方式######

    引用来自“若海”的答案

    可以使用Socket监听的方式
    有没有参考资料和书推荐?不懂Socket原理。 ###### 这种最好采用C/S的模式。比如一个服务程序,两个客户端程序,客户端程序之间用UDP方式收发数据,当服务端收到客户端数据的时候,将数据处理之后发送给另一个客户端,这种方式只要服务端的客户端都监听UDP端口即可,不用轮询,可以做到类似事件触发的效果。关于UDP编程如果有问题再探讨。 UDP方式是无状态的,不会一直和服务器保持连接,对资源的消耗小于TCP方式,缺点是不能保证不同的消息按发送顺序被对方接受,建议客户端每次接收到UDP消息,都给一个反馈,好让服务端知道客户端有没有正确接受消息。 其实还可以在服务器程序上集成消息队列,比如嵌入ActiveMQ服务,将大大简化消息的收发和通信过程。 ######有个象观察者模式的意思。
    2020-05-29 16:31:23
    赞同 展开评论 打赏
问答地址:
问答排行榜
最热
最新

相关电子书

更多
面向失败设计 立即下载
fibjs 模块重构从回调到协程--陈垒 立即下载
Flash Player最新安全特性分析及绕过思路 立即下载