- 浏览: 505471 次
- 性别:
- 来自: 深圳
文章分类
- 全部博客 (200)
- java基础 (30)
- ajax (19)
- 乱写 (5)
- groovy (2)
- db (8)
- gwt (0)
- jee (2)
- 我关注的开源 (1)
- RIA AIR (1)
- spring (11)
- lucene (0)
- 工具 (10)
- 百科 (2)
- linux (6)
- android (40)
- 移动开发 (21)
- 代码片断 (15)
- tomcat (1)
- css (1)
- html5 (2)
- jquery (2)
- playframework (3)
- web (2)
- nio (3)
- design (1)
- nosql (3)
- 日志 (12)
- mysql (4)
- 图表 (1)
- python (3)
- ruby (1)
- git (0)
- hibernate (1)
- springboot (1)
- guava (1)
- mybatis (0)
- 工作问题 (3)
- php (1)
最新评论
-
linzm1990:
踩了很多坑啊。。。。
hibernate @Nofound 与@ManyToOne fetch lazy的问题 -
Ccccrrrrrr:
...
转: Spring boot 文件上传 -
rmzdb:
兄弟,你这个东西,在ie内核的浏览器,貌似不识别 文件名
工作问题:http下载文件,中文文件名在firefox下乱码问题 -
107x:
问题解决了,谢谢!
工作问题:http下载文件,中文文件名在firefox下乱码问题 -
klxqljq:
额鹅鹅鹅
android布局实现头尾固定, 中间多余内容可以滚动
很多应用譬如监控、即时通信、即时报价系统都需要将后台发生的变化实时传送到客户端而无须客户端不停地刷新、发送请求.
基于客户端套接口的 “ 服务器推 ” 技术
这种方案实现的基础是:
Flash 提供了 XMLSocket 类。
JavaScript 和 Flash 的紧密结合:在 JavaScript 可以直接调用 Flash 程序提供的接口。
2.Java Applet 套接口
在客户端使用 Java Applet,通过 java.net.Socket 或 java.net.DatagramSocket 或 java.net.MulticastSocket 建立与服务器端的套接口连接,从而实现 “服务器推 ”。
基于 HTTP 长连接的 “ 服务器推 ” 技术
1.基于 AJAX 的长轮询( long-polling )方式
2.基于 Iframe 及 htmlfile 的流( streaming )方式
Comet
Comet的客户端有基于 javascript的 cometd-dojox,基于 java的 cometd-jetty,基于 flex的 flexcomet。
Server端有基于 java的 comtd-java和 ibm的 Feature Pack for Web 2.0。
Comet的主要逻辑如下:
用基于 http的长连接来进行消息通信。客户端先向服务器端发送一个 httprequest,服务器端接收到后,阻塞在那边,等服务器有消息的时候,则返回一个 httpresponse给客户端,客户端收到后,断开连接,紧接着再发第二个 httprequeest,以此反复进行,保持这个“长连接”。期间,如果连接超时,那么会断开重连,以保持连接。
Bayeux协议
Bayeux协议是基于 Json格式的, client和 server直接的发布订阅消息协议。这个协议基于 http,允许在普通 http情况下,参与者之间的异步消息。
一般情况下,在 http协议中, client要想获得 server的消息,必须先自己发送一个 request,然后 server才会给予 response。而 Bayeux协议改变了这个情况,他允许 server端异步 push自己的消息到 client端。从而实现了 client和 server之间的双向操作模式( bi-directional communications)。
主要逻辑如下:
Client和 server直接先通过握手协议,互相发送 request和 response进行握手;如果握手成功,那么 client再向 server发送 connect request, server接着发送 connect response,如果这步也成功,那么 client和 server之间的 Bayeux协议连接成功。否则,要返回开始重新进行握手协议。
BC ----------------------------------------- BS
| ------------------ handshake request ---> |
| <-- unsuccessful handshake response ----- |
| ------------------ handshake request ---> |
| <-- successful handshake response ------- |
| -------------------- connect request ---> |
~ ~ wait
| <------ connect response ---------------- |
| -------------------- connect request ---> |
| <---- unsucessful connect response ------ |
| ------------------ handshake request ---> |
| <-- successful handshake response ------- |
| -------------------- connect request ---> |
~ ~ wait
| <------ connect response ---------------- |
Ajax Push Engine
Ajax Push Engine是一个全功能的开源Ajax Push框架。Ajax Push Engine包含一个comet服务器和一组JavaScript框架,二者结合起来可以打造出一个完整的基于Ajax的comet解决方案。Ajax Push Engine可以再不安装任何客户端程序的前提下实时与浏览器进行数据交互。随着web2.0时代的买进,ajax应用逐渐深入人心,笔者首次接触到 comet应用应该是在Java 下著名的Servlet 容 器Jetty6.1.1x的版中,该版本自带了一个comet的demo,是一个无刷新的聊天室应用。Ajax Push Engine曾经被命名为Ajax Chat Engine始与2006年,后来开发者决定创造出一个更优秀的基于Ajax Push 技术的版本,于是Ajax Push Engine诞生了。
Ajax Push Engine 拥有如下四大特点:
- Ajax Push Engine采用标准的xmlhttp技术,无需客户端安装任何插件
- Ajax Push Engine不依赖浏览器,不受平台限制,Ajax Push Engine的数据传递直接与浏览器交互
- Ajax Push Engine采用的是push技术,该技术可以与浏览器实时交互数据
- Ajax Push Engine是100%开放源码的框架,并且绝对免费,无论是商业使用还是非商业使用都没任何限制(Ajax Push Engine采用GNU Public Licence version 2发布)
Ajax Push Engine下载 地址:
http://nocache.ape-project.org/files.php?f=APE-Project_1.0.tar.gz&v=1.0
Ajax Push Engine下载 (pdf文档,适合入门学习)
http://www.ape-project.org/var/comics_pdf/APE-Comics_Chapter1.pdf
Ajax Push Engine在线文档:
http://www.ape-project.org/docs/
http://www.ape-project.org/comics/1/Chapter-I-common-let-s-push.html
Ajax Push Engine官方主页:
http://www.ape-project.org
CometD
CometD 是一个提供多种开发语言的Bayeux项目,可支 持JavaScript, Java, Perl, Python等语言,由Dojo基金会提供支持。CometD 是一个使用了 Ajax push技术的可伸缩的基于HTTP的事件路由总线程序,这项技术也叫 Comet。
近日,CometD发布了1.0 最终版本,而且对2.0版本的开发也在展开。
- better support for tweaking the configuration
- split configuration and initialization steps to allow more flexibility in case of programmatic disconnects
- extended and clarified the Cometd APIs
- better notifications for failures due to server or network failures
- automatic and configurable connection retries
- incoming message and outgoing message interception
- automatic bayeux transport negotiation, supporting long-polling and callback-polling transports
- extensions such as timesync, message acknowledgement and transparent page reload
PUSHLET
http://www.iteye.com/topic/89158
http://www.javaworld.com/jw-03-2000/jw-03-pushlet.html
http://www.pushlets.com/
发表评论
-
jquery 1.6新加功能
2011-10-29 17:36 947见http://webin.us/chunterg/330 ... -
jQuery 1.5 的Deferred对象
2011-10-29 17:33 1101Jquery.Deferred对象是jquery1.5新引入的 ... -
jquery 1.5 ajax的改进
2011-10-28 19:55 1256源文见: http://api.jquery.com/exte ... -
利用HTTP-only Cookie缓解XSS之痛
2011-05-25 10:35 4522详细介绍请看: http://netsecurity.51ct ... -
用javascript来检测你在页面上的发呆时间(jquery插件)
2011-03-21 08:53 1339There are a few cases where you ... -
前端开发最佳实践与编程规范
2011-03-17 13:09 1099http://na.isobar.com/standards/ ... -
jquery1.5改进
2011-01-25 08:27 971jQuery1.5的改进细节 一小段jQuery代码的分析与优 ... -
Endless scroller jQuery plugin 到面面底部后在加载信息的插件
2010-12-21 08:56 1696http://pushingtheweb.com/2010/0 ... -
Reaching out of the browser sandbox using jQuery Title Alert. jquery插件tile提示来消息
2010-12-21 08:47 1259转自:http://pushingtheweb.com/201 ... -
jquery插件开发
2010-11-30 12:24 1102转自: http://www.cnblogs.com/from ... -
SQLike – a small query engine
2010-11-30 11:40 1676插件官方地址:http://www.thomasfrank.s ... -
sessvars插件中文文档----一款用window.name产生前台session存储的js插件
2010-11-30 11:27 1878转自: http://blog.csdn.net/lg ... -
CSS 中选择器的详解
2010-11-30 08:55 1146http://zachary-guo.iteye.com/bl ... -
【多浏览器的兼容问题】IE6.0、IE7.0 、FireFox 在样式中的不同写法
2010-11-30 08:54 1547原文出处:http://www.xianzheng.net.c ... -
JavaScript 面向对象程序设计
2010-11-30 08:17 1102近期在网上看到一篇关 ... -
jQuery 的原型关系图,让你快速对 jQuery 有个整体的把握
2010-11-30 07:51 977若干个月前,在博客园中看到一篇文章 ,内容很简单,就是一幅图 ... -
jquery 插件
2010-07-09 15:44 20890. 表单校验插件 http://www.position- ... -
jquery 几点笔记
2010-07-06 10:50 01. javascript里的函数和变量 在javascri ... -
javascript学习收集
2009-04-22 08:49 1160YUI中文文档 http://www.blogjava.n ...
相关推荐
**APE(Ajax Push Engine)详解** Ajax Push Engine(简称APE)是一种实时Web通信技术,它允许服务器主动向客户端推送数据,而无需客户端不断发起请求。这与传统的HTTP长轮询或者短轮询不同,它利用了WebSocket协议,...
【标题】"Ajax PushServer" 是一个基于C#开发的实时数据推送服务示例,它利用Ajax技术实现Web端的即时通信。在传统的HTTP协议中,客户端与服务器之间的交互是基于请求-响应模型的,而Ajax Push(也称为Comet技术)...
"pushstate:用于 WordPress 的 AJAX PushState 插件" 指的是一种将 AJAX(异步JavaScript和XML)与 HTML5 的 History API(PushState 方法)结合使用的插件,专为 WordPress 设计。PushState 是 HTML5 History API ...
**Ajax Push技术详解** Ajax(Asynchronous JavaScript and XML)是一种在无需刷新整个网页的情况下,能够更新部分网页的技术。Ajax Push,也称为Comet技术,是Ajax应用的一种特殊形式,它允许服务器主动向客户端推...
- **Ajax Push**:a4j提供了基于Long Polling和Comet的推送技术,让服务器能主动向客户端发送数据。 ### 7. 结论 Ajax4JSF通过简化JSF应用中的Ajax集成,使开发者能够创建更动态、更响应式的Web界面,提升了用户...
pjax是对ajax + pushState的封装,让你可以很方便的使用pushState技术。 同时支持了缓存和本地存储,下次访问的时候直接读取本地数据,无需在次访问。 并且展现方式支持动画技术,可以使用系统自带的动画方式,也...
DWR还支持批量调用、事件监听、安全性控制以及更多高级特性,如Closures(JavaScript中的匿名函数)和Ajax Push。在实际项目中,你可能需要根据需求调整DWR的配置,比如设置安全策略以防止跨站脚本攻击(XSS)和跨站...
* pjax技术:基于ajax+history.pushState的新技术,可以无刷新改变页面的内容,并且可以改变页面的URL。 五、浏览器兼容性 | Feature | Chrome | Firefox(Gecko) | Internet Explorer | Opera | Safari | | --- | ...
它引入了Ajax Push技术,极大地提升了用户体验,允许实时的数据更新,使得Web应用更接近桌面应用的交互性。ICEfaces不仅仅是一个UI组件库,它还提供了一个完整的解决方案,包括Facelets视图层技术、Spring框架集成...
3. Ajax Push:实现了服务器端到客户端的数据推送,使得实时更新成为可能,例如聊天室或股票报价应用。 4. Extensions:包括一系列增强JSF功能的组件,如数据表的分页和排序、文件上传等。 四、RichFaces的事件模型...
- **AJAX Push**:支持服务器向客户端推送数据,实现真正的双向通信。 3. **DWR的核心组件** - **Ajax Engine**:负责处理Ajax请求和响应,将JavaScript与Java之间的通信转化为HTTP请求。 - **Reverse Ajax**:...
Ajax-push-state.zip,将静态网站转换为动态web应用程序。,ajax代表异步javascript和xml。它是多种web技术的集合,包括html、css、json、xml和javascript。它用于创建动态网页,其中网页的小部分在不重新加载网页的...
在DWR3.0中,增加了许多新特性,如自动重试、更好的错误处理、改进的性能以及对AJAX Push的支持。 在"监视用户登录"这一场景中,我们通常需要在用户成功登录时记录登录事件,并在用户登出时清除相关会话信息。这...
在Web开发中,服务器主动向客户端推送数据的技术被称为Server Push,它是实时Web应用程序的重要组成部分,尤其是在构建聊天室、实时通知系统或在线游戏等场景中。本项目是一个利用Ajax反向推送(Comet技术)实现的...
**Pjax:Ajax与PushState的融合技术** Pjax(Page JavaScript XHR)是一种前端技术,主要用于实现网页的无刷新翻页效果。它结合了Ajax(异步JavaScript和XML)和HTML5的History API(尤其是PushState方法),旨在...
可以通过将Ajax内容预先渲染在服务器端,或者使用History API和PushState来模拟页面跳转,改善SEO。 ### 9. 错误处理 在Ajax应用中,错误处理同样重要。可以设置XMLHttpRequest对象的onerror和ontimeout事件,以便...
**基于 AJAX 和 Webservice 的长轮询方式 ServerPush 技术模拟** 在现代网页应用中,实时性成为了不可或缺的需求,例如股票更新、聊天室、在线游戏等场景。传统的 HTTP 协议是基于请求-响应模式的,即客户端发起...
ICEFaces是一个JavaServer Faces (JSF)组件库,其1.7版本提供了对AJAX Push的支持,允许实时双向通信,增强了用户体验。 10. **怎样选择Java测试框架** 文章可能探讨了如何根据项目需求选择合适的Java测试框架,...