锁定老帖子 主题:如何做一个最完美的实时数据传输程序
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2008-02-01
年底公司没什么事,看到同事们都在刷各个不同的二手火车票网站,因为要得到最新信息要不停的F5,所以我想做一个实时更新最新数据的web程序,反正也没什么事情做。 我的思路是:利用ajax每秒访问数据库一次,如果有最新的数据就返回最新数据,完成小demo,功能也实现了,但是同事觉得我的思路不好,因为不停的访问数据库会影响效率,公司是做税务的,效率总是放在第一位的。 同事也提供了一个思路,利用ajax每秒访问后台但是不允许数据库,利用oracle的触发器,如果有新数据插入就允许访问相关数据库数据。 不知道能否用触发器控制一段java代码,这个暂且不说,就算可以实现效率会提高多少? 不知道大家是否有什么看法和新的思路,怎么样才能做一个最完美的实时数据传输程序。 ps:大家新年快乐,希望那些没买到票的都能买到票,能够顺利的回家过年。 声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |
发表时间:2008-02-02
我的实现思路如下: 实现通过DWR Reverse Ajax调用EXTJS的Observable Class(Java CODE) Collection<ScriptSession> sessions = serverContext.getScriptSessionsByPage(pageUrl); cti.js如下: Ext.namespace('cti');
然后在Voice.js处理,各种Event事件如下: Ext.onReady(function(){ var onRinging = function(ev){ cti.onStateChange(ev); document.voice.connId.value = ev.connID; //onDialing Event Handler
这只是其中一种实现方式而已。Reverse ajax还可以通过NIO Socket向IE/FF的Applet Socket Client发送JSon Event,由Applet执行当前页面的fireEvent。 可以通过Spring,配置不同的Reverse ajax实现方式。如果有什么不理解的,请随时找我。 rasonyang@hotmail.com |
|
返回顶楼 | |
发表时间:2008-02-07
ls一下子就一片代码, 像我这样没用过ajax的人看得累啊.
能不能把你的实现原理描述一下? |
|
返回顶楼 | |
发表时间:2008-02-15
JavaScript可以通过Extjs实现OBserver模式
然后,就是通过Applet或者DWR Reverse ajax, 让Server fire json Event让javascript onEvent |
|
返回顶楼 | |
发表时间:2008-02-15
你试http长连接Comet服务器推技术,这个是不断地建立30秒长的连接,相当于跟服务器建立了socket连接,是属于实时数据提取的.
http://www.examda.com/Java/zhuangye/20070908/113416646.html |
|
返回顶楼 | |
发表时间:2008-03-03
利用二楼的技术应该可以了。DWR2.0就是用的Comet技术进行事件触发推送消息 的。
|
|
返回顶楼 | |
发表时间:2008-03-03
利用二楼的技术应该可以了。DWR2.0就是用的Comet技术进行事件触发推送消息 的。
|
|
返回顶楼 | |
发表时间:2008-03-03
如果你只是担心数据库的压力,而不在乎web服务器的压力(通常确实如此),那没有必要用其他技术,只需要在web服务器上合理的做缓存就可以了,比如你的web服务器程序保持cache是5秒,只有超过5秒才会重新访问一次数据库。
|
|
返回顶楼 | |
浏览 5354 次