写点什么

开源 Servlet 容器 Jetty 7.0 发布

  • 2009-10-13
  • 本文字数:1155 字

    阅读完需:约 4 分钟

10 月 8 号,Jetty 7.0宣告发布,人们可由位于 Eclipse.org 上的新主页或通过 Maven Repository 下载。该版本不仅代表了 Jetty 6.0 的一次演变,而且还代表了代码库的重大调整和诸多性能改进。

InfoQ 曾在今年早些时候报道过 Jetty 投入 Eclipse 的怀抱;在 Jetty 6.0 依旧还将得到支持的同时,新的特性将针对 7.0 开发。Jetty 6.0 和 7.0 的基础都是 Servlet 2.5 API;处于试验阶段的 Jetty 8.0 将支持 Servlet 3.0 API,该规范有望于明年正式完成。

Jetty 6.0 的一个关键特性是在 Servlet 层引入了延续(Continuation),这将使长活动的客户端连接(如那些使用了 CometD ——又被称为 Bayeux 协议——的连接)成为可能。InfoQ 以前曾报道过 Jetty 6.0 的发布以及几个延续的示例,它们展示了在不向线程数目(以及相关开销)妥协的条件下,延续是如何被用来支持大规模并发用户的。

该技术的成功导致了Jetty 建议在 Servlet 3.0 规范草案中加入异步 Servlet。Jetty 7.0 实现的这些延续既可以无需修改就运行于 Servlet 3.0 实现之上,同时还可以向后应用于非 Jetty 的 Servlet 2.5 实现(非异步、阻塞)中。

由于迁移到了 Eclipse,因此代码也经过了重构(org.mortbay前缀已经被org.eclipse替换),而且单个的server.jar也已经被分割成几个组成部分(jetty-server.jarjetty-servlet.jarjetty-io.jar等)。模块化的一个附带好处是在不同的包之间带来了更多的强制的关注点分离,由此进而导致了更多的嵌入模块的方法。同时,Jetty 现在是一系列有效的 OSGi 包(具备定义良好的依赖关系),它仍然可以运行在 OSGi 运行时之外。

迁移文档中描述了包中的这些不同;鉴于大量的类名已经改变,Jetty 还提供了一个自动化工具来将配置文件中使用的类名转换成Jetty 7.0 的新类名。未来的升级(如升级到Jetty 8.0)将会小得多,因为未来这些包不会再经历一次重命名和重新打包。

基于旧版本Jetty 6.0 的 cometd-jetty 项目也已经过时,请使用基于 Jetty 7.0 的 cometd-java ,该项目现在已可从 CometD.org 访问。一份演示已经可供下载,它通过支持大数量的AJAX 客户端(它们创建了连接到后端服务器的长活动连接),同时不增加负荷,展示了异步延续的好处。

最后,Jetty 的创造者 Webtide 已于上月被Intalio 收购)也宣布了名为 Jetty-Hightide 的开源产品,它包括了一系列开源组件库:

  • Glassfish 的 JSP
  • 来自 atomikos 的 JTA
  • Maven plugin
  • Ant 集成
  • Spring 配置
  • Setuid

当前可供下载的Hightide 版本是以Jetty 6.0 为基础的,但在不久之后,将会提供一份包含Jetty 7.0 的修订版。

Jetty 可以在双许可证下获得,包括 Apache License 2.0 ,以及来自 www.eclipse.org/jetty Eclipse Public License 1.0 。此外,针对其他平台的 Jetty 包还可以从 Codehaus 获得,如用于 Linux 系统的 RPMs Debs

查看英文原文: Jetty 7.0 released

2009-10-13 01:073849
用户头像

发布了 255 篇内容, 共 67.2 次阅读, 收获喜欢 10 次。

关注

评论

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

tidb 2.1升级到4.0操作文档

TiDB 社区干货传送门

迁移 版本升级

TiDB Numa 性能压测

TiDB 社区干货传送门

版本测评 性能测评

select查询失败,报“no such file or directory”错误

TiDB 社区干货传送门

本地Kind体验TiDB Operator最小实践

TiDB 社区干货传送门

实践案例

TiDB 在连锁快餐企业丨海量交易与实时分析的应用探索

TiDB 社区干货传送门

Oceanbase和TiDB粗浅对比之 - 执行计划

TiDB 社区干货传送门

数据库架构设计 应用适配

【故障解读】v5.1.1-调整变量 tidb_isolation_read_engines 影响 tiflash SQL 执行计划

TiDB 社区干货传送门

HTAP 场景实践

一个小操作,SQL查询速度翻了1000倍。

TiDB 社区干货传送门

性能调优 实践案例 管理与运维 故障排查/诊断

记一次tidb离线环境下安装非本地镜像源组件的过程

TiDB 社区干货传送门

实践案例 管理与运维 安装 & 部署 应用适配

使用TiUP 修改集群目录实践

TiDB 社区干货传送门

管理与运维

在华为 Kylin V10 SP1操作系统,HUAWEI,Kunpeng 920 CPU(4Cores)单机上模拟部署生产环境TiDB集群

TiDB 社区干货传送门

集群管理

TiDB Online DDL 在 TiCDC 中的应用

TiDB 社区干货传送门

迁移 TiDB 底层架构

TiDB 查询优化及调优系列(一)TiDB 优化器简介

TiDB 社区干货传送门

tidb-v5.2.3内存使用率高的几个case

TiDB 社区干货传送门

体验 TiSpark 基于 TiDB v6.0 (DMR) 最小实践

TiDB 社区干货传送门

实践案例 6.x 实践

TiDB v5.1.2 - TiCDC 不同步,checkpointTs 不推进的问题排查

TiDB 社区干货传送门

实践案例 故障排查/诊断

TiDB 6.0 的「元功能」:Placement Rules in SQL 是什么?

TiDB 社区干货传送门

6.x 实践

TiDB上百T数据拆分实践

TiDB 社区干货传送门

迁移 管理与运维

我和TiDB的故事 | 毫无准备地不期而遇,却想说与你相遇好幸运

TiDB 社区干货传送门

社区活动

单机 8 个 NUMA node 如何玩转 TiDB - AMD EPYC 服务器上的 TiDB 集群最优部署拓扑探索

TiDB 社区干货传送门

管理与运维 性能测评 数据库架构设计

文盘Rust -- 起手式,CLI程序

TiDB 社区干货传送门

开发语言

【故障解读】v5.3.0 BR 备份报错并且耗时比升级前更长

TiDB 社区干货传送门

备份 & 恢复

新版 TiDB 社区技术月刊,一站式 Get 社区全动态

TiDB 社区干货传送门

社区活动 故障排查/诊断 数据库架构设计 应用适配

tiup修改参数显示成功但不生效

TiDB 社区干货传送门

DM 是如何处理 DML 的

TiDB 社区干货传送门

迁移

关于auto_random的几个知识点

TiDB 社区干货传送门

管理与运维

TiKV缩容不掉如何解决?

TiDB 社区干货传送门

集群管理 故障排查/诊断 扩/缩容

TiDB 在携程 | 实时标签处理平台优化实践

TiDB 社区干货传送门

统计信息十问: 你不了解的那些事儿

TiDB 社区干货传送门

实践案例

TiDB HTAP 遇上新能源车企:直营模式下实时数据分析的应用实践

TiDB 社区干货传送门

对Indexlookup的理解误区

TiDB 社区干货传送门

管理与运维

开源Servlet容器Jetty 7.0发布_Java_Alex Blewitt_InfoQ精选文章