50万奖金+官方证书,深圳国际金融科技大赛正式启动,点击报名 了解详情
写点什么

Atmosphere Comet Abstraction Framework Alpha 版发布

  • 2009-03-24
  • 本文字数:1590 字

    阅读完需:约 5 分钟

Atmosphere Grizzly 的升级版)是个基于 POJO 的框架,其目的在于将 Comet 带给大众。该 Comet Abstraction Framework 发布了首个 alpha 版,InfoQ 有幸采访了该框架的创建者 Jean-Francois Arcand 来了解该框架的一些信息。

Atmosphere Framework 的可移植性非常棒,它可以运行在任何基于 Java 的 Web 服务器上,包括 Tomcat Jetty GlassFish Resin Jersey RESTlet 等等,这样我们就无需 Servlet 3.0 规范,也不需要使用任何特定于容器的 push/Comet 机制了。

Jean-Francois 谈到了创建 Atmosphere 的动机

当前我们没法编写可移植的 Comet 应用:JBossWeb 有 AIO 、Tomcat 有自己的一套 AIO API 、Jetty 有自己的 Continuation API 预览版的Servlet 3.0 API 、Grizzly 有自己的 Comet Framework Grizzlet API 等等不一而足。因此为了支持不同的 Comet API,像 DWR ICEFaces Bindows 这样的框架都增加了本地支持及抽象层。更糟的是,如果应用直接使用了这些 API,那么你就被绑定到了特定的 Web 服务器上了。如果使用的是 Grizzly Comet,情况还不算太糟,但如果使用的是其竞争者,那么你就再也没法使用 Grizzly 了! 现在 Servlet 专家组正提议在即将发布的 Servlet 3.0 规范中增加 Comet 支持,但要想让所有产品都支持该规范还尚需时日,同时该提议会包括一些容器已经支持的特性子集,如异步 I/O(Tomcat 及 Grizzly 支持)、针对并发处理的push 操作的容器管理线程池、针对push 操作的过滤器等等。如果使用 Atmosphere ,虽然不能说框架就无需关心本地实现了,但他们可以构建在 Atmosphere 之上。像 Bayeux 这样的协议将会免费发布并运行在所有的 Web 服务器上(通过其本地 API)。

综上所述,我开发了 Atmosphere,希望填充这么多的沟壑并简化基于 Comet 的应用的创建,这是根据这两年来我在 Grizzly Comet Framework 上所获得的经验和反馈而得到的。

官方声明简要介绍了使用 Atmosphere 的一些前提条件:

要想在 Web 应用中使用 Atmosphere,请从 http://download.java.net/maven/2/org/atmosphere/atmosphere-portable-runtime/ 下载 atmosphere-cpr jar 文件并放到 WEB-INF/lib 目录下,从 http://is.gd/ngMm 下载 context.xml 文件(Tomcat 支持所必须的文件)并将其放到 war 文件的 META-INF/ 目录下。你可以通过创建 atmosphere.xml 来定义 AtmosphereHandler,就像 war 文件的 META-INF 目录下的 http://is.gd/ngM1 一样,当然这是可选的。 框架可以自动检测出 AtmosphereHandler 并用其类名进行映射(参见 chat 示例来了解更多信息)。

接下来,InfoQ 向 Jean-Francois 问到关于 Atmosphere 发布的一些信息:

InfoQ:能否介绍一下构成Atmosphere的各个组件么?****

现在我们有 3 个模块。第一个(上周发布)是 CPR(Comet Portable Runtime),想使用 Comet 的 Web 应用可以借助于 CPR 来获得可移植性。第二个叫做 core,它将 CPR 引入到了 Jersey 项目中并支持 REST、注解及 IoC 等等。这样我们就可以轻松构建 Comet 应用了。最后一个是 PlugIn,开发者可以借助它扩展 core(使用注解)。我们还需要向 Web 应用中增加集群功能,也就是说当连接在实例 1 上挂起时,如果发生了 push,那么该连接就会收到通知(如果被注解了)。这样我们就可以集群 Comet 应用并同时对其进行更新。

InfoQ:Atmosphere 的路线图如何,何时发布下一个版本?

我们将在 4 月底完成 core 和 cpr 模块,现在正在开发 PlugIn。

InfoQ:你如何看待Atmosphere 的发展与Servlet 3.0 规范的关系?****

Atmosphere 不仅会支持 Servlet 3.0 异步 API,而且还会提供 3.0 规范所没有提及的一些功能。例如,Atmosphere 的 Broadcaster 在挂起的连接之间 push/aggregate/filter 数据时就非常有用。

可以通过项目主页 Twitter 邮件列表 Jean-Francois 的博客找到更多关于 Atmosphere 的信息。

查看英文原文: The Atmosphere Comet Abstraction Framework Releases Alpha

2009-03-24 04:101787
用户头像

发布了 88 篇内容, 共 272.2 次阅读, 收获喜欢 9 次。

关注

评论

发布
暂无评论
发现更多内容

leetcode 139. Word Break 单词拆分(中等)

okokabcd

LeetCode 动态规划 算法与数据结构

传统的IO存在什么问题?为什么引入零拷贝的?

源字节1号

特尔携手微软发挥边云协同势能,推动AI规模化部署

科技之家

图像搜索应用场景(个人见解,欢迎补充)

Geek_e369a5

什么是图像搜索 图像搜索的应用场景 拍照购物用图像搜索的作用

虚拟化是什么意思?包含哪些技术?与私有云有什么区别?

行云管家

云计算 运维 虚拟化 IT运维

科创人·味多美CIO胡博:数字化是不流血的革命,正确答案藏在业务的田间地头

科创人

超大规模AI异构计算集群的设计和优化

Baidu AICLOUD

大模型训练 异构计算

左手代码,右手开源,开源路上的一份子

开源社

开源

红象云腾完成与龙蜥操作系统兼容适配,产品运行稳定

OpenAnolis小助手

开源 龙蜥社区 龙蜥操作系统 红象云腾 兼容适配

Vue项目的创建和托管

Python研究所

6月月更

制造业项目MDM主数据项目实施心得

agileai

数据治理 数据集成 企业服务总线 项目实施 制造业项目

全链路业务追踪落地实践方案

云智慧AIOps社区

运维 AIOPS 解决方案 全链路追踪

CentOS中实现基于Docker部署BI数据分析

葡萄城技术团队

Docker centos BI 分析工具

Java—Servlet

武师叔

6月月更

【计算讲谈社】第三讲:如何提出关键问题?

大咖说

逻辑学 辩证思维 关键问题

【6.16-6.24】写作社区精彩技术博文回顾

InfoQ写作社区官方

优质创作周报

车白兔:自助共享洗车机哪家好

共享电单车厂家

自助洗车机 自助洗车加盟 车白兔自助洗车

等保备案是等保测评吗?两者是什么关系?

行云管家

备案 等保 等级保护 等保备案 等级测评

全上链哈希游戏dapp系统定制(方案设计)

开发微hkkf5566

实时渲染:实时、离线、云渲染、混合渲染的区别

Finovy Cloud

渲染 云渲染

NFT双币质押流动性挖矿系统开发

开发微hkkf5566

如何实现一套容器(C 语言版)2

祖维

c 容器 泛型 迭代器 双向链表

共享智能自助洗车现在市场如何

共享电单车厂家

自助洗车加盟 自助洗车市场 共享智能自助洗车

共享洗车机多少钱一台?看品牌

共享电单车厂家

自助洗车机价格 自助洗车加盟 共享洗车机多少钱

效率提升 100%,YRCloudFile 让自动驾驶安全更有保障

焱融科技

人工智能 自动驾驶 大数据 数据存储

NFT质押流动性挖矿系统开发技术

薇電13242772558

NFT 流动性挖矿

模块五

Geek_2ce415

Bytebase加入阿里云PolarDB开源数据库社区

阿里云数据库开源

阿里云 开源数据库 polarDB PolarDB-X 阿里云数据库

无界共创,明道云参与广汽本田IT新技术展

明道云

解密安卓微信聊天信息存储

ooooooh灰灰

Go sqlite 微信 后端 SqlCipher

共享自助洗车24小时不打烊受青睐

共享电单车厂家

共享自助洗车 自助洗车 自助洗车加盟

Atmosphere Comet Abstraction Framework Alpha版发布_Java_Dio Synodinos_InfoQ精选文章