类似于OSCHINA上面的 消息提醒数字
1 同步刷新
数据库插入一条数据,我url每次跳转 刷新下从DB里重新读取一次。
缺点是不刷新的话 就不知道啥时候有新数据了。
2 前端轮询1分钟一次
1分钟自动局部刷新下,获取最新的消息条数。 前端1分钟轮询一次。
3 心跳包实时同步
类似于QQ消息 有人给你发消息时,数字状态自动改变。
3######代价比较大巴######http://www.oschina.net/widgets/check-top-log?last=10009347######回复 @kacc850 : ajax论询 打开firebug就可以看到请求######OS首页右侧 是ajax? 前端轮询吗 局部刷新 还是类似于微博哪种######用第三方推送服务呗,时时推送######有具体案例么。。。是服务端监听数据库变化吗######第三种,而且现在都有类似的线程框架。######
如果限制使用html5 websocket是个不错的选择
######这种WEB网站一般来说本身就不是长连接,用户的理解就是要刷新才能获取新数据,所以我觉得不用推送,至于轮询我也觉得没必要,一般的做法 就是用户发消息给你 然后你会插入数据库 然后把消息的id放到缓存,每次用户刷新从缓存获取....当然如果有全双工的websocket的支持下,可以用推送, 根据具体业务来吧######你的意思是:
1:web一般不需要这样做shi吗,我lz的三点都不是最好解决方案?
2:如果要做成这种效果,你建议是 其他人发给对方消息后,或者新动态入库时,同时写入到缓存里。 还是新动态入库后,计算多少条信息,然后放在缓存里,用户刷新页面时 从缓存里直接获取?
那如果这样,DB库怎么直接到缓存呢? 肯定是后端先自己执行一遍是吧。 自己服务器执行 也是多久检查一次 。只不过 我是前端AJAX轮询,你这个是后端检查。因为这个消息不是公共推送消息,后端检查一次放入缓存里,不见得前端所有会员都会看到这条消息,而是不同的人看不同的消息,所以我觉得你这个方案不合适。
3:OSCHINA用的是前端轮询,多久执行一次呢。 为什么我直接首页点发表,就能实时看到呢。 是不是 他们不直接入库,只是先前端js 把我输入框里的数据嵌套在首页。 造成假象,我只是自己看到而已,同一时间其他人看不到。
等待下次轮询时,在正式发布,所有人才能看到。
######你的意思是:
1:web一般不需要这样做shi吗,我lz的三点都不是最好解决方案?
2:如果要做成这种效果,你建议是 其他人发给对方消息后,或者新动态入库时,同时写入到缓存里。 还是新动态入库后,计算多少条信息,然后放在缓存里,用户刷新页面时 从缓存里直接获取?
那如果这样,DB库怎么直接到缓存呢? 肯定是后端先自己执行一遍是吧。 自己服务器执行 也是多久检查一次 。只不过 我是前端AJAX轮询,你这个是后端检查。因为这个消息不是公共推送消息,后端检查一次放入缓存里,不见得前端所有会员都会看到这条消息,而是不同的人看不同的消息,所以我觉得你这个方案不合适。
3:OSCHINA用的是前端轮询,多久执行一次呢。 为什么我直接首页点发表,就能实时看到呢。 是不是 他们不直接入库,只是先前端js 把我输入框里的数据嵌套在首页。 造成假象,我只是自己看到而已,同一时间其他人看不到。
等待下次轮询时,在正式发布,所有人才能看到。
你的意思是:
1:web一般不需要这样做shi吗,我lz的三点都不是最好解决方案?
2:如果要做成这种效果,你建议是 其他人发给对方消息后,或者新动态入库时,同时写入到缓存里。 还是新动态入库后,计算多少条信息,然后放在缓存里,用户刷新页面时 从缓存里直接获取?
那如果这样,DB库怎么直接到缓存呢? 肯定是后端先自己执行一遍是吧。 自己服务器执行 也是多久检查一次 。只不过 我是前端AJAX轮询,你这个是后端检查。因为这个消息不是公共推送消息,后端检查一次放入缓存里,不见得前端所有会员都会看到这条消息,而是不同的人看不同的消息,所以我觉得你这个方案不合适。
3:OSCHINA用的是前端轮询,多久执行一次呢。 为什么我直接首页点发表,就能实时看到呢。 是不是 他们不直接入库,只是先前端js 把我输入框里的数据嵌套在首页。 造成假象,我只是自己看到而已,同一时间其他人看不到。
等待下次轮询时,在正式发布,所有人才能看到。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。