-
关于Pushlet没有页面请求的时候,也会在后台执行业务逻辑的问题0
Pushlet 是一个开源的 Comet 框架
我写了一个简单的例子,代码如下:
public class IndexPlushlet extends EventPullSource implements Serializable { protected long getSleepTime() { return 5000; } protected Event pullEvent() { System.out.println("==========================================="); Event event = Event.createDataEvent("/linjiqin/hw"); event.setField("hw", "HelloWorld!!!!" + new Random().nextInt(1000)); return event; } }
页面jsp的代码是;<div style="color:red;font-size:20px;" id="content"></div> <script type="text/javascript"> //对pushlet的初始化,触发web.xml中的servlet。 PL._init(); //这里的监听的主题,必须在sources.properties中配置的对象中声明这个主题。 //sources.properties配置着事件源(EventSources),在服务器启动时会自动激活。 //可以通过服务器的启动记录查看得到。可以将这个文件放到WEB-INF目录下面或者classess目录下面都可以。 PL.joinListen('/linjiqin/hw'); var index = 0; function onData(event) { index = index + 1; var html = document.getElementById("content").innerHTML; document.getElementById("content").innerHTML = html + event.get("hw") + "<br />"; if( index == 10) { PL.leave(); } } </script>
现在的问题是只要tomcat已启动,
后台就开始执行:IndexPlushlet.pullEvent这里一直在输出
这明显不合理嘛
合理的做法是:要等到有页面请求的时候,才开始执行IndexPlushlet.pullEvent
这是第一个问题
第二个问题,即使我有页面请求,OK没问题,
但是,我页面里面已经执行了PL.leave();
但是,后台还是在执行IndexPlushlet.pullEvent 这就又不合理了
求解释
2014年5月17日 12:22
目前还没有答案
相关推荐
Pushlet是一种基于Java的实时推送技术,用于在服务器端向客户端浏览器实时推送数据,而无需客户端不断轮询请求。在Web应用中,Pushlet技术能够实现服务器主动将更新信息推送到客户端,提高了交互性和响应速度。这个...
Pushlet技术则打破了这种模式,它允许服务器主动向客户端推送数据,无需客户端持续不断地发起请求。 Pushlet的核心组件是Pushlet Server和Pushlet Client。Pushlet Server作为服务端,接收并处理客户端的连接,当有...
3. 编写服务器端逻辑:在服务器端,你需要处理业务逻辑,当有新的事件发生时,调用Pushlet API将数据推送给已订阅的客户端。 4. 运行与测试:启动Pushlet服务器,运行客户端应用,观察是否能成功接收到服务器推送的...
在后台,PUSHLET利用Java的Servlet和WebSocket技术来处理连接和数据传输。Servlet负责处理客户端的请求,建立持久连接;WebSocket则提供双向通信的能力,使得服务器能主动推送消息到客户端。 **核心技术** - **Java...
在这个"Pushlet后台往jsp前台推送消息实例"中,我们将深入探讨Pushlet的工作原理以及如何在实际项目中运用。 Pushlet是Java开发的一个开源项目,它基于Apache的jakarta-cocoon项目,利用了Servlet和Continuation...
2. 创建Pushlet客户端:在客户端页面中,创建一个JavaScript或Java客户端来建立与Pushlet服务器的连接,并订阅感兴趣的数据源。 3. 实现Pushlet服务端:在服务器端,你需要编写Java代码来处理事件,并在事件触发时...
Pushlet库的核心功能是实现实时的服务器向客户端推送数据,而无需客户端频繁发起请求,这大大提高了网络应用的效率和用户体验。以下是对Pushlet配置应用的详细解释: 1. **引入Pushlet.jar**:首先,你需要在你的...
这个实例"PushLet实例,可直接运行"提供了一个完整的、可以直接执行的PushLet项目,包括必要的jar包,使得开发者能够快速理解和应用PushLet技术。 在Web开发中,传统的HTTP协议是基于请求-响应模型的,这意味着...
在初始化阶段,它会将`_init`方法绑定到window的load事件上,确保页面加载完成后开始执行初始化操作。 总结来说,Ajax-pushlet-client.js是通过面向对象的JavaScript技术,利用XMLHttpRequest对象实现HTTP长连接,...
在传统的模型中,客户端(浏览器)需要不断地发起请求来获取新数据,而在服务器推送技术中,服务器可以主动将更新的数据推送到客户端,无需客户端反复请求。这种技术在实时聊天、股票更新、在线游戏等场景中非常有用...
在服务器端,Pushlet使用`EventSource`和`EventSourceManager`来管理和处理事件,`EventSource`实现了`Runnable`接口,可以在多线程环境中运行,确保服务器能够并发地处理多个客户端的请求。 总的来说,Pushlet和...
在IT行业中,Pushlet是一种基于Java的推送技术,主要用于实现实时的数据传输,尤其是在Web应用中创建实时聊天、通知服务等功能。Pushlet是基于HTTP连接持久化的概念,它允许服务器主动向客户端推送数据,而无需...
这个连接是持久的,意味着只要连接没有断开,服务器就可以在任何时候通过这个连接向客户端发送数据。 3. **Event**:Pushlet机制基于事件驱动,当服务器端有新的事件(如新的聊天消息)发生时,会生成一个事件对象...
在Web应用中,尤其是在需要实时更新信息的场景下(如聊天室、股票行情、在线游戏等),Comet技术能显著提高用户体验,因为它可以即时地将服务器的更新推送给客户端,而无需客户端频繁请求。 Pushlet是Comet框架的一...
在接收到消息后,客户端可以根据业务逻辑进行相应的处理,如显示新消息、更新界面等。 对于官方示例的改造,我们可以从以下几个方面入手: 1. **优化连接管理**:默认的Pushlet可能会因为过多的连接而消耗大量的...
Pushlet是一种基于Java的实时数据推送技术,它允许服务器向客户端主动推送数据,而无需客户端持续不断地轮询请求。在Web应用中,Pushlet能够显著提高用户体验,因为它减少了延迟并优化了服务器资源的使用。本示例...
Pushlet Client API则允许开发者在他们的Web页面中集成Pushlet功能,接收来自服务器的实时消息。 标签"web"表明Pushlet框架是为Web应用设计的,可以集成到基于Java的Web服务器或应用服务器中,如Tomcat、Jetty等。...
网页推送技术在现代互联网应用中扮演着重要角色,它能够实时地将服务器端的数据更新推送到客户端,无需用户频繁刷新页面。Pushlet是基于Java的一种早期的推送技术框架,它利用了 comet 技术,实现了服务器到客户端的...
服务器推 pushlet 服务器推 pushlet 服务器推 pushlet 服务器推 pushlet
然而,Pushlet技术打破了这一模式,使得服务器可以在客户端没有明确请求的情况下主动推送数据,极大地提高了交互性和实时性。这对于实时聊天、股票报价、在线游戏等需要即时更新信息的应用场景非常有用。 描述中...