2 qq 29183771 qq_29183771 于 2017.09.18 11:27 提问

B/S架构是否能实现信息实时响应的功能

问:比如某一页面的table里面的一个td值,可能会发生变化,除了不断在页面刷新外,有没有更好的实现机制?

4个回答

qq_29183771
qq_29183771   2017.09.18 18:02
已采纳

https://baike.baidu.com/item/%E8%A7%82%E5%AF%9F%E8%80%85%E6%A8%A1%E5%BC%8F/5881786?fr=aladdin
观察者模式,解决了一半。感觉我想问的这个---我这个项目里面,有一个线程每隔一段时间往数据库插入一条数据,我想要做的事插入数据后(表的数据改变后),页面自动刷新那个数据。(原来的实现方式是通过页面每隔两秒刷新来刷新数据的) ----- 好想解决不了

caozhy
caozhy   Ds   Rxr 2017.09.18 11:37
qq_29183771
qq_29183771 回复caozhy: 谢谢,我先查查socket以及UDP和TCP,先看看实现要写多少代码,如果写代码太多或机制比较复杂,我还是不停刷新来实现
2 个月之前 回复
caozhy
caozhy 你需要用websocket,实现服务器消息推送。再 google 下 websocket,Quartz只是后端。
2 个月之前 回复
qq_29183771
qq_29183771 回复caozhy: 我感觉我这种想法好想不能实现,感觉这种实时响应有问题,像是直接断了一半。缺少前台传url查询这一步,直接就想着后台把值传给前台
2 个月之前 回复
qq_29183771
qq_29183771 回复cjws555: 确实是篇好文章
2 个月之前 回复
qq_29183771
qq_29183771 回复caozhy: 我感觉不太容易做到,感觉现在的BS结构属于先有个url,通过url查询后台的数据库,得到数据后再传值到前台。我这个项目里面,有一个线程每隔一段时间往数据库插入一条数据,我想要做的事插入数据后(表的数据改变后),页面自动刷新那个数据。(原来的实现方式是通过页面每隔两秒刷新来刷新数据的)
2 个月之前 回复
qq_29183771
qq_29183771 回复caozhy: 我百度了下这个框架,感觉像是时间调度,类似定时器的那种,我想要达到的是那种聊天的,比如来了一个消息,要及时回复相应的那种。
2 个月之前 回复
cjws555
cjws555 回复caozhy: 不错的文章23333![图片说明](http://img.ask.csdn.net/upload/201709/18/1505716707_187729.png)
2 个月之前 回复
caozhy
caozhy 回复chengzhou_people: 用这个框架啊
2 个月之前 回复
qq_29183771
qq_29183771 3Q,谢谢你的回答。不过我还比较小白,没有看太懂,我现在的问题最主要的是,数据库的数据发生了变化,怎么及时反应到页面。重点是怎么反应,这有点想不通
2 个月之前 回复
xiaoming120915
xiaoming120915   2017.09.18 12:59

最简单的就是轮询了,jquery提供了定时任务,你可以写一个function,用来获取最新数据,然后使用jquery的定时任务去执行

qq_29183771
qq_29183771 回复xiaoming120915: 3Q
2 个月之前 回复
xiaoming120915
xiaoming120915 回复chengzhou_people: b/s架构的及时推送也是有解决方案的,但是本质上基本是建立长连接。你可以去看看阿里提供的消息中间件服务
2 个月之前 回复
qq_29183771
qq_29183771 轮查,感觉和定时刷新差不多,感觉是不是BS结构本身就不容易实现及时响应这个功能
2 个月之前 回复
qq_35824035
qq_35824035   2017.09.18 13:22

window.onload = function () {这里写上你的URL}

Csdn user default icon
上传中...
上传图片
插入图片