商城提交一个订单,在后台管理页面收到订单提示,这种逻辑大家是怎么做的呢

2016-03-07 11:32:53 +08:00
 wdg8106
后台框架用的 tornado ,之前做的是轮询,在后台管理页面不断的用 js 发送请求,当数据库订单数发生变化时弹出一个提示消息


这种业务逻辑用 websockets 怎么实现呢,或者还有什么其它更好的方法呢
5561 次点击
所在节点    Python
5 条回复
996635
2016-03-07 17:44:45 +08:00
用 ws 实现一样的,只是轮询从前端放到了后端.
另外还可以考虑 类似 redis subscribe 的方式阻塞链接,避免轮询.
cevincheung
2016-03-08 01:26:59 +08:00
还是轮询的好。
只要有新订单通知过一次,没操作之前就不再轮询了。
wdg8106
2016-03-08 07:48:42 +08:00
@996635 后端的轮询是指每隔一段时间 后端查询是否有新订单然后调用 write_message ,把消息发送到管理页面么
wdg8106
2016-03-08 07:54:19 +08:00
@cevincheung 嗯,这样就解决了不停的弹出消息框提示的问题,
wdg8106
2016-03-08 16:17:10 +08:00
@wdg8106 我在服务器上使用 websockets 会报这样一个错误 :
WebSocket connection to 'ws://test.senguo.cc/admin/realtime' failed: Error during WebSocket handshake: net::ERR_CONNECTION_RESET

引发出错的 js 代码是: var ws = new WebSocket("ws:test.senguo.cc/admin/realtime");

但是在本地测试的时候是正常的,请教下你知道是什么原因嘛~

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/261633

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX