速来报名!AICon北京站鸿蒙专场~ 了解详情
写点什么

Apache 发布 TomEE 7.1,支持 Java 8 和 MicroProfile 1.2

  • 2018-11-17
  • 本文字数:3573 字

    阅读完需:约 12 分钟

Apache发布TomEE 7.1,支持Java 8和MicroProfile 1.2

Apache TomEE社区发布了 TomEE 7.1,这是一个重大的升级,提供了 Java SE 8 和MicroProfile 1.2 支持。

历史

2011 年,David Blevins当时受雇于 IBM,领导一个志愿者团队创建了 TomEE,一个“Tomcat”和“JavaEE”组成的复合产品,并在 JavaOne 2011 大会上进行了发布。TomEE 包含OpenWebBeansOpenEJBOpenJPA等 Apache 组件。TomEE 的核心价值观:小巧、有保证的 Tomcat。Blevins 于 2012 年离开 IBM 创建了Tomitribe,该公司的使命是:


为社区和所有与 TomEE 相关的一切提供支持。我们希望为开发者提供工作岗位,为客户提供支持,教人们使用 TomEE、开源和 JavaEE,并为社区中每个人的成功做出贡献。我们相信,开源是一个生态系统,这个生态系统中的每一个人都可以发挥作用,从开源项目的开发者到使用它的公司。


Blevins 目前是 Tomitribe 创始人兼首席执行官。

TomEE 7.1

Tomitribe 提供了一种便捷的方式来升级到这个最新版本,关于新特性和升级的更多细节可以在发布说明中找到。


一年前发布的MicroProfile 1.2引入了JWT-AuthFault ToleranceHealth CheckMetrics等 API。作为 Tomitribe 培训开发人员承诺的一部分,Tomitribe 提供了一份 JWT-Auth 的介绍教程,并在 TomEE 7.1 发布后提供了一份Fault Tolerance介绍教程

TomEE 8

TomEE 7.1 支持 Java 8,是作为 TomEE 8 正式版本的过渡版本,后者将兼容 Java EE 8/Jakarta EE 和MicroProfile 1.3。随着TomEE 8 M1发布,TomEE 8 正式版本的开发加速了。


这个里程碑版本中的特性包括首次支持JSON-BJSR-367)和 Java EE Security(JSR-375)。虽然没有在 M1 版本中实现,但是 Java EE Security 规范已经定义好,将在未来的里程碑版本中实现。TomEE 8 M1 还包括以下更新:CDI 2.0(JSR-365)、JAX-RS 2.1(JSR-370)、Servlet 4.0(JSR-369)、Bean Validation 2.0(JSR-380)和 JSF(JSR-372)。

其他项目

Tomitribe 还提供了许多其他的项目,包括TomEE/JAX-RS入门项目,这是作为 TomEE 的介绍。这个简单的 JAX-RS 演示应用是一个颜色建模程序。复制完库后,只需执行以下 Maven 命令:


mvn clean install tomee:run
复制代码


服务器启动后,可以在命令行或浏览器上执行以下操作:



虽然这个演示应用程序已经使用了四年,但已经针对 TomEE 7.1 进行了更新。


Blevins 向 InfoQ 介绍了这个最新版本。


InfoQ:在 2011 年的时候,是什么启发您创建了 TomEE?


David Blevins:创建的 TomEE 的动机有许多,很难选择一个。在很大程度上,是为了改变这个行业。Tomcat 占据了 50%的市场份额,其他所有的 Java EE 应用服务器占据了其余的 50%。为历来讨厌 Java EE 的 Tomcat 社区创建 Java EE 实现有一个明确的目标,就是为了团结业界。另一个方面是为了将企业重新定义为“小型”企业——“小”一百倍。很明显,这个行业正在脱“大”向“小”,Java EE 中需要有人来推动这个方向的发展,开发一个专注于完善“小”的实现。最后,OpenEJB 社区有一种难以置信的热情,在 EJB 多年来备受攻击的情况下,它成了成功改变最顽固思想的不懈动力。在创建 TomEE 之前的两年里,我们在世界各地会面,这里一周,那里一周。每次我们相遇,我们的梦想都变得越来越强烈,直到 TomEE 最终诞生。


InfoQ:与其他中间件应用程序服务器相比,TomEE 有什么独特之处?


Blevins:我们不是“应用服务器”的传统粉丝。我们喜欢 public-static-void-main。如果它不能用一秒钟左右的开销在 IDE 中运行一个简单的单元测试,我们就对它失去耐心了。这是底线。TomEE 可以作为一个传统的应用服务器,但我和其他人通常是在没有 IDE 插件和独立进程的情况下以嵌入的方式运行它。TomEE JAX-RS 入门项目展示了一个简单的 JUnit/Arquillian 测试,它使用 TomEE Embedded,运行时间为 3-5 秒。运行 mvn tomee:exec,你就可以得到应用程序的 uber-jar 版本。

对 TomEE 用户来说,Tomcat 的行业投资是一个独特而重要的优势。所有 Java 相关的工具和云平台都提供某种形式的 Tomcat 支持。TomEE 只是 Tomcat 的另一个版本,它通常是开箱即用的。

TomEE 比较小,只有 30-40MB,2-5 秒即可启动,内存占用不足 50MB,并已在 Amazon AWS t3.micro 实例上获得认证。它无疑是 2011 年最轻量级的 Java EE 6 应用服务器。根据Antonio Goncalves在2016年对Java EE 7服务器的测试,TomEE 仍处于领先地位。我们要看看谁将获得 Java EE 8 的这个头衔。每个人都在迎头赶上,这真的很棒。


InfoQ:TomEE 8 预计会在什么时候发布?


Blevins:给出时间表是 Apache 开源项目的禁忌,所以我的回答是非正式的。我认为,Java 11 的兼容性工作至少会持续几周的时间,并在这之后发布 TomEE 8 的另一个里程碑版本。在那之后,我们会讨论我们希望新开源但尚未发布的 Jakarta EE 8 TCK 开始时在哪个 TomEE 版本上运行。可能的情况是,我们会在 1 月份发布 TomEE 8 最终版,然后将 Jakarta EE 8 的目标定为 TomEE 8.1。


InfoQ:您关注IBM最近宣布收购红帽了吗?这可能会对 TomEE、Thorntail、OpenLiberty、Payara 和 MicroProfile 产生怎样的影响?


Blevins:就开源来说,我们对行业的潜在影响远远超过供应商,因此,如果我们想要这些项目好,它们就会好。难的是自我意识。

去年 Equifax 被黑,丢失了 1.4 亿社会保障号码,损失了 42 亿美元的市值,然后就指责 Struts,我在 Apache Struts 社区的很多朋友特别沮丧。攻击不是物质上的。已经修复漏洞的、苦苦挣扎的开源项目也不是物质上的。故事是这样的,我们作为一个行业,怎么样反复导致了自己的失败,因为我们不懂,我们拥有自己使用的开源项目,它是我们的责任。

如果你在公司里使用开源项目,有自己的预算,但并没有把其中一部分预算用于你使用的开源项目,那么你面对的所有问题都是自己造成的。你让高管在对你而言至关重要的东西上投资不足。这是一个冒险的选择,公司任何经济上的损失都会算在你头上。

聪明点。拿出你的计算器,算一下,迁移需要花费多少时间和精力。把那些时间和精力按照一定的比例每年投入到你使用的开源项目上,绝对很好。

多好?我们再看下 Struts。Equifax 被黑后 12 个月,Indeed.com 显示,企业已经发布了 1721 个要求 Struts 经验的就业机会,保守估计,人均 8 万美元,则有约 1.37 亿美元计划花在 Struts 上。如果这个行业把中 5%定向投到 Struts 上,则有 685 万美元。因此,只需从每个招聘 Struts 工程师的岗位上拿出 3980 美元投入项目本身,就相当于从代码中节省了 85.6 个全职员工。哪个更好,一个全职员工 8 万美元,还是把 85 个全职员工 4000 美元?

我们不仅不善于开源,也不擅长数学。我们有大量的开源开发人员。我们需要更多的开源高管。

如果你担心 OpenLiberty 或 Thorntail,在出现任何整合之前,你有三年左右的时间可以开始投入。你的行动将决定会发生什么,所以如果你没有“投票”,那么未来就不要抱怨。如果你认为这个行业需要更多的“红帽”,即使是把少量的业务转向 Payara 和 Tomitribe,我保证你在两年内就会惊讶于其行业级影响。


InfoQ: TomEE 的路线图是什么样子,尤其是在 MicroProfile 2.0 支持方面?


Blevins:我认为,MicroProfile 2.0 的工作有很大的几率在 TomEE 8 的早期完成。MicroProfile 1.4 和 2.0 在功能上相同,TomEE 目前仅支持到 1.4。现在,只有一个专门的 TomEE 发行版包含 MicroProfile 技术。它没有包含在 TomEE Plus 或 Plume 中。我希望有个好机会把那些都添加到 Plus 和 Plume 中,或者我们可能会看到另一个 TomEE 发行版,包含所有 Java EE 和 MicroProfile 支持。这只会比现在的 TomEE Plus 大 4MB。我希望看到一个在新的 Amazon AWS t3.nano 实例上经过 Jakarta EE 8 认证的 TomEE。

人们应该可以预见到整体活动的显著增多。在过去的 12 个月里,TomEE 社区增加的提交者比前六年的总和还要多,这是新版本和社区活跃的主要原因。随着 MicroProfile 的蓬勃发展和 Jakarta EE 的兴起,最终,我们行业的各个方面将再次开始变得强大,包括 TomEE 在内。


现在是令人兴奋的时刻。是时候投入进来了。TomEE 社区的未来一片光明。

相关资源


查看英文原文:Apache Releases TomEE 7.1 with Support for Java 8 and MicroProfile 1.2


2018-11-17 08:051564
用户头像

发布了 1008 篇内容, 共 392.7 次阅读, 收获喜欢 344 次。

关注

评论

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

Hystrix-技术专题-基础运作原理

洛神灬殇

TypeScript | 第五章:高级类型

梁龙先森

typescript 大前端 七日更

第十三周 数据应用2 总结

三板斧

极客大学架构师训练营

架构师训练营第十周作业

丁乐洪

架构师训练营 第十周作业

文江

skynet源码分析之网络层—Lua层

赖猫

c++ lua skynet

架构师训练营大作业1

邓昀垚

刘华:戏说Docker和K8s,一文让你成为懂王

刘华Kenneth

Docker 云计算 Kubernetes DevOps k8s

加快你ROS安装的一篇文章

良知犹存

ROS

思考-国际化系统表结构设计

BerryMew

python3参考秘籍-附PDF下载

程序那些事

Python 程序那些事 Python秘籍 Python数据分析

微服务:服务本身的设计、维护以及治理

积极&丧

工具之书:《账簿与权力》与 GNUCash

lidaobing

GNUCash 28天写作

ModelArts黑科技揭秘|模型智能评估、诊断,让模型来个“体检

华为云开发者联盟

AI 模型 华为云 modelarts 智能诊断

领域驱动落地实现

星际行者

DDD 领域驱动

你不得不知道的反射(非常重要)

安琪拉的博客

Java 反射 java反射

一个HashMap能跟面试官扯上半个小时

安琪拉的博客

Java HashMap底层原理

多线程之信号量(By C++)

赖猫

c++ 多线程

笔记|怎样成为高效学习的人

熊斌

学习 个人成长 成长笔记 七日更

到底什么是 CDN

转山转水

CDN

Multi-Architecture镜像制作指南已到,请查收!

华为云开发者联盟

Docker Kubernetes 容器 镜像 Multi-Architecture

刨根问底,kafka到底会不会丢消息

爱笑的架构师

kafka 消息队列 Kafka知识点 消息中间件 七日更

“关灯”看这出戏,依旧是百年至美

脑极体

如何解决MySQL主从数据库没有同步的问题?

冰河

MySQL 高可用 主从复制

架构师训练营 1 期 - 第十三周 - 数据应用 2

三板斧

极客大学架构师训练营

垃圾回收你懂,Java垃圾回收你懂吗?

华为云开发者联盟

Java 虚拟机 存储 对象 垃圾回收

今天,我们为什么应该读懂华为人工智能?

脑极体

生产环境全链路压测建设历程 20:某快递 A 股上市公司的生产压测案例之彩蛋

数列科技杨德华

全链路压测 七日更

回溯和动态规划解决每次移动一步最终回到原地算法、富兰克林成功要素和狗熊掰棒子、swift多线程编程入门operation John 易筋 ARTS 打卡 Week 31

John(易筋)

ARTS 打卡计划 富兰克林成功要素 狗熊掰棒子 动态规划解决移动回到原地 swift operation

Thread 线程,状态转换、方法使用、原理分析

小傅哥

线程 小傅哥 Thread 七日更 状态流转

第十周作业

Jack

Apache发布TomEE 7.1,支持Java 8和MicroProfile 1.2_语言 & 开发_Michael Redlich_InfoQ精选文章