Jetty 投入 Eclipse 怀抱了

  • Alex Blewitt
  • 张龙

2009 年 3 月 27 日

话题:JavaDevOps语言 & 开发架构

今年 1 月,Webtide 宣布 Jetty 将要投入 Eclipse 基金会的怀抱。在 Eclipse 上已经创建好了Jetty 项目,本周 Jetty 7 代码就要提交到Eclipse 上的 Jetty SVN了。

Webtide的 Greg Wilkins 在 EclipseCon 2009 上谈到了此举动的缘由及其对 Jetty 的意义。首先,Jetty 的代码将处于双重许可之下:EPL(Eclipse)与 AL(继续使用之前的 Apache License)。其次,尽管核心库(客户端、服务器及 JMX 等等)将由 Eclipse 负责开发,但一些扩展代码仍将留在 CodeHaus(比如一些依赖于第三方库的代码)上,其他一些包则保持不变。此外我们还会将核心加到 Eclipse 中,也许在下一个发布中就会实现(但已赶不上今年夏天发布的 Eclipse 了)。

Greg 还强调说投入 Eclipse 怀抱并不表示要依赖于 OSGi,Jetty 还会像现在这样嵌入到现有的 Java 应用中(非 OSGi 应用),然而该举动会导致 JAR 文件变成 OSGi 风格(带有清单信息),这意味着他们可以运行在这两个环境中(OSGi 与非 OSGi——译者注)。他还说到该举动会发掘出一些奇怪的依赖关系(例如客户端 API 依赖于服务器端 API)——OSGi 的一个好处在于它可以让这种隐蔽的依赖关系完全暴露出来并改进 OSGi 与非 OSGi 的使用。

计划表明 Jetty 7 大体上将会兼容于 Jetty 6,但项目架构会发生变化,Jetty 7 将于今年第二季度发布。Servlet 3.0 API 的延期发布影响到了 Jetty,因此将于明年发布的 Jetty 8 会支持 Servlet 3.0 API(也就是说 Jetty 7 不会支持——译者注)。Jetty 还支持异步 Servlet 和 Web 请求,Greg 说 Jetty 可以在低性能的笔记本上以 2000/s 的速度同时处理 2000 个并发的客户端和 2000 个并发的服务器,平均的响应时间为 40ms。这与 AJAX 回调差不多,但却可以避免线程阻塞,因此会提高应用的吞吐量。

Jetty 与 Eclipse 的结合还会推进 Equinox 和 OSGi 对 HTTP 的支持并对 OSGi HTTP 规范起到促进作用。

查看英文原文:Jetty at Eclipse

JavaDevOps语言 & 开发架构