10 月 23 - 25 日,QCon 上海站即将召开,现在购票,享9折优惠 了解详情
写点什么

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:101763
用户头像

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

关注

评论

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

如何基于Jupyter notebook搭建Spark集群开发环境

华为云开发者联盟

spark Jupyter Notebook 集群 Spark集群 Sparkmagic

5G NR 网络类型移动开发小记

阿里巴巴终端技术

ios android 5G 移动开发 移动网络

猛攻一线大厂,Java架构面试点+技术点标准手册完整版来了!

Java 程序员 架构 面试 后端

在Github找的一份面试资料,看了感觉直接啥也不是

程序员小呆

程序员 面试 架构师 java

把Github“炸”翻了!的阿里面试总结,惨遭多家大厂威胁下架!

程序员小呆

Java 程序员 面试 架构师 java面试

阿里大牛把算法面试必问的排序、递归、链表、栈、队列、二叉树、动态规划撸完了

编程 程序员 架构 面试 算法

阿里技术官手码23W字Java面试,在Github上爆火,惨遭多家大厂威胁下架

程序员小呆

Java 程序员 面试 架构师 java面试

信息流推荐系统智能交付解决方案探索

百度Geek说

后端

北冥多样性计算融合架构系列解读之 一文读懂华为MindStudio统一工具链 多样性计算系统下的开发挑战

Geek_32c4d0

算力 多样性计算 北冥

怒肝半月!Python 学习路线+资源大汇总

程序员鱼皮

Python 人工智能 大数据 算法 数据分析

北冥多样性计算融合架构系列解读之 一文读懂北冥基础使能:毕昇C++编译器及北冥融合加速库

Geek_32c4d0

「ANR」Android SIGQUIT(3) 信号拦截与处理

阿里巴巴终端技术

android 信号量 anr

出神入化!字节技术小组耗时99天打造Java零基础到中高级核心手册

Java 程序员 架构 面试 后端

政企融合商城,运营商打开B端市场利器

鲸品堂

运营商

北冥多样性计算融合架构系列解读之 一文读懂华为多瑙统一调度器

Geek_32c4d0

uni-app技术分享| 用uni-app实现拖动的诀窍

anyRTC开发者

uni-app 音视频 WebRTC 移动开发 视频通话

1688 商家基于 HarmonyOS 的多屏协同直播技术方案

阿里巴巴终端技术

ios android 客户端开发 HarmonyOS 直播技术

回顾|鉴释梁宇宁在嵌入式技术大会发表WASM安全性演讲

鉴释

操作系统 嵌入式 Wasm

宇宙条一面:十道经典面试题解析

编程 架构 面试 后端 计算机

肝不爆我不停!这套阿里10月最新面试手册(题+视频)爆砍55K+16薪Offer!

Java架构追梦

Java 阿里巴巴 后端 java面试 offer

StreamNative 宣布 2300 万美元 A 轮融资,Prosperity7 Ventures 与华泰创新联合领投

Apache Pulsar

融资 Apache Pulsar StreamNative

一个神器,让写东西快得飞起

锋享前端

小工具

👊 【Spring技术实战】@Async机制的使用技巧以及异步注解源码解析

码界西柚

Java spring API 10月月更

北冥多样性计算融合架构系列解读之 一文读懂华为昇思科学计算

Geek_32c4d0

从一盏路灯,看亿万级物联网联接的智能之路

华为云开发者联盟

物联网 IoT 华为云 LiteOS NB- IoT

和12岁小同志搞创客开发:如何驱动LED数码管?

不脱发的程序猿

少儿编程 DIY 创客开发 LED数码管

区块链底层平台如何实现国密改造?

旺链科技

区块链 国密改造

WICC · 广州开启报名!包揽最「in」社交、泛娱乐、出海话题

融云 RongCloud

开发者 游戏 通信云 社交 泛娱乐

融云 x 微脉:让互联网医疗服务更长远、更连续

融云 RongCloud

通信云 医疗信息化

解决外卖配送最后一公里:外卖柜存在哪些问题

石头IT视角

把Github“炸”翻了!的100万字高级面试总结,惨遭多家大厂威胁下架

程序员小呆

Java 程序员 面试 架构师 java面试

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