Java EE:迎合Web 2.0 - 编程入门网
或者 continuation 超过指定时间后自动重新开始执行。
因此 Jetty 尝试实现一个具有异步语义的同步查找 API。然而,这种行为将打断客户机的预测,因为 servlet 将从头执行方法,而不是从调用 suspend() 的位置执行。 Apache Tomcat 6 Comet API Tomcat Comet API 专门为支持 Comet 交互模式而设计。servlet 引擎通知 servlet 关于其状态转换以及数据是否可读的信息。与 Jetty 使用的方法相比,这种方法更加健全和简单。它使用传统的同步 API 对流执行写入和读取操作。通过使用这种方式实现,如果谨慎使用,则不会出现 API 阻塞的情况。 JAX WS 2.0 和 Apache Axis2 Asynchronous Web Service Client API JAX WS 2.0 和 Axis2 为 Web 服务的非阻塞调用提供了 API 支持。当 Web 服务操作完成后,Web 服务引擎将通知提供的侦听器。这为 Web 服务的使用提供了新的机会 — 即使来自 Web 客户机。如果一个 servlet 中发生若干独立的调用,它们将并行执行,因此客户机中的总延迟将更低。 结束语 现在,我们已经认识到了异步 Java 组件的必要性,并且,异步应用程序目前正在积极开发之中。两种大型的开源 servlet 引擎(Tomcat 和 Jetty)都至少针对最令开发人员头痛的 servlet 提供了一些支持。尽管 Java 库已开始提供异步接口,这些缺口还缺乏通用的结构,并且,由于线程管理和其他问题,彼此之间很难兼容。因此需要容器能够托管由不同来源提供的各种异步组件。 目前,用户面对着各种各样的选择,每种方法在不同情形下都各有优缺点。例如,Apache MINA 库为一些流行的网络协议提供了现成的支持,因此,在需要使用这些协议的情况下它将是一个不错的选择。Apache Tomcat 6 可以很好地支持 Comet 交互模式,如果要在这种模式中进行异步交互,那么则可以选择使用 Apache Tomcat 6。如果是从头构建应用程序,并且现有库明显不能提供足够支持,那么可以使用 AsyncObjects 框架,因为它提供了各种各样的可用接口。这种框架还可以用于围绕现有异步组件库创建包装器。 现在,是时候为 Java 语言创建一个通用的异步编程框架了。然后,还需要花费很多精力将现有异步组件集成到这个框架中,并为现有同步接口创建一个异步版本。每实现一个步骤,企业 Java 应用程序的可伸缩性都会得到改善,并且我们将能够应对比这更艰难的挑战。持续发展的 Internet 以及不断增生的各种网络服务必定将为我们带来更多这样的挑战。 |
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |