IBM发布Open Liberty,开源的Java微服务

InfoQ:是什么让Open Liberty有别于其他的应用服务器?

Nottingham:Open Liberty与其他应用程序有一些不同之处。首先是配置的简易性。我们努力让配置变得简单易用,配置文件可以被提交到版本控制系统里,这对于DevOps来说是一个好消息,因为配置文件可以和代码放在一起了。另一方面,我们的应用服务器可以为应用程序提供它们所需要的功能。

Open Liberty从一开始就被设计成可以为应用程序提供必要功能的应用服务器,我们把它们叫作功能单元。我们为Java EE和MicroProfile提供了所有功能,而如果你只需要其中的一小部分功能,那么就可以得到一个小型而快速的服务器运行时。

InfoQ:关于Open Liberty,还有其他什么可以分享的吗?

Nottingham:从功能方面来看,我们要支持Java EE 8。从GitHub上可以看出,我们正在开发Servlet 4、JAX-RS 2.1、JPA 2.2、JSON-B和JSON-P。其他特性也会陆续添加进来。

Open Liberty还支持Eclipse MicroProfile 1.2。我们的开发团队还参与了新的EE4J项目,所以我很期待我们到时候能够提供一个实现版本,并支持Java SE 9。

Holly Cummins是IBM Bluemix Garage London的技术组长,也是WebSphere Liberty Profile的前任交付经理,她也分享了她在OpenLiberty方面的经验:

我个人对我们在Liberty上所做的工作感到非常自豪,看到它在GitHub上开源也感到很激动。Open Liberty有一些非常棒的模块化和动态特性。运行在本地时,它支持热部署,可以在无需重新启动的情况下增加、移除或重配置整个服务器。运行在云端时,它的模块化特性可以让未使用的功能不占用任何磁盘或内存。另外,我也很喜欢它那清晰且统一的配置方式。

有趣的是,Liberty是第一个可以运行在Raspberry Pi上的应用服务器(我们随后也让它运行在Android设别上)。而Liberty这种适合小型部署的特点却也让它成为大规模云原生应用的最佳选择,这不得不说是一种悖论。