当前位置: 首页 > news >正文

JavaOne大事纪:IBM谈OpenJ9和Open Liberty

JavaOne大会以IBM陈述其最近对开源社区的贡献作为开场:OpenJ9、Open Liberty和MicroProfile。IBM杰出工程师John Duimovich做了“IBM和Java:助力下一代创新”的开场演讲。

\\

读者可以回看演讲视频。

\\

Duimovich说IBM之所以致力于推动Java生态系统的创新,是因为云发展使然,云原生开发需要创新驱动。紧接着Alasdair Nottingham上台演示了J9。

\\

Nottingham演示了一个叫作“Acme Gifts”的应用程序,这个应用程序可以在GitHub上找到。他演示了如何使用Hystrix和回退方法来提升系统弹性。

\\
在IBM发布Open Liberty(开源的Java微服务运行时)的时候,InfoQ采访过Nottingham。
\\

Duimovich介绍了IBM Cloud Private,并将其称为“一个面向Ops和Dev的云”,认为在未来将得到普及。

\\

IBM开源了J9虚拟机,他们宣称J9”为云和微服务做过优化“,支持紧凑对象、多租户、AOT、GPU和共享类,等等。

\\

Duimovich说,测试表明,J9在运行时只占用HotSpot一半的内存,而速度却是HotSpot的两倍。

\\
我们将J9与HotSpot的性能进行了对比。我们选择了Daytrader3这个应用程序来进行测试,因为这个应用程序可以衡量各种性能方面的度量指标,不像其他的一些微基准测试那样只关注吞吐量。我们不仅关注吞吐量,还关注启动时间、JVM的内存占用情况。
\\

接下来Ian Robinson上台,谈及开源创新和微服务。

\\

微服务和云平台促使应用容器的角色发生了变化。开发者的能力向以应用为中心的方向转变,他们希望应用程序能够通过持续集成和持续部署来打包。基本上,你需要一个CI/CD管道,运行轻量级的虚拟容器,云平台则需要具备路由、管理、伸缩和容错能力。

\\

200cd19dc177345606a149219429eb7a.png

\\

Java EE一向有大单体的名声,尽管确实有很多例子证明事实并非如此,比如TomEE、WildFly,等等。只要Java EE应用程序能够被打包成可用于云部署的单元,它就会继续保持成功。关于Liberty,我们为开发者做了他们希望我们做的事情。

\\

f7810bca5f57b441073008609eb7162a.png

\\

IBM开源的Open Liberty包含了350万行代码,WebSphere相关的开发正在转向Open Liberty。你可以基于EPL许可在生产环境运行Open Liberty,但要想得到支持,需要WebSphere许可。

\\

Open Liberty是一个模块运行时,它与其他运行时不同之处在于它的可配模型。开发者喜欢创新,但要在数据中心中引入创新要格外小心。有了Open Liberty,你可以加入新的特性,而不需要对有的东西做任何变动。

\\

Robinson发布了微服务构建器(Microservice Builder),它是一个网站,可以在上面基于Docker、Git和Bluemix CLI创建微服务。他还演示了如何在Kubernetes环境里实现容器化微服务的持续交付。

\\

2e3f305b94892d7e289ac68090a16457.png

\\

Java EE如果想要保住自己的地位,必须快速创新。

\\

接下来Robinson介绍John Clingan上台,John是Red Hat的首席产品经理,同时也是Eclipse MicroProfile的联合负责人。

\\

Clingan发现Java EE的发布节奏趋于缓慢,Java EE在交付单体应用方面已经很成熟。很多厂商开始推出轻量级的运行时,他们不仅不单打独斗,反而聚集在一起,共同创立了MicroProfile,一起合作开发微服务API。

\\

他们加入Eclipse基金会,为的是公开透明和开放,为这一领域开疆拓土。

\\

MicroProfile社区已经完成了这一过程,他们希望能够帮助Java EE完成过渡,不过他们会继续在MicroProfile上工作。他们在与EE4J之间的接洽需要得到帮助,或许他们会提交JSR,又或者将MicroProfile归入EE4J。

\\

“感谢你们所有人!”Robinson说。

\\

78252ed2f45a9e29d33506c5e174f7a6.png

\\

在IBM一行人之后,Stephen Chin上台,总结了Java社区的大事纪。他播放了去年Oracle Code Japan摩托旅行的视频,然后邀请来自硅谷JUG的Kevin Nilson登台。如果你去年参加过JavaOne,就该知道那是非常激动人心的一刻。

\\

读者可以在这个视频中看到社区大事纪。

\\

Chin与Nilson开始了一段对话,他说他们正在拍视频,需要所有人离开现场。在接下来的一个小时,Chin和整组Java社区成员回到舞台,就像在拍《黑客帝国》(The Matrix)一样。人们大笑,尴尬的一刻,而且舞台上出现了很多熟悉的面孔。我以笔记的方式记录了当时的对话,不如直接观看视频来得直观。

\\

如果读者很着急,我拍下了一些照片。

\\

0ff46ab4c73be05ef105569588d6d0a2.png

\\

这里有一些周二Oracle Code大事纪的录像,也可以观看所有录制下来的Oracle Code视频。

\\

更多资料

\\

InfoQ报道了JavaOne 2017所有的大事纪,下面的链接是周一和周二的大事纪总结。

\\
  • Oracle宣布计划开源他们的JDK并解决Java EE存在的问题\\t
  • JavaOne大事纪:Oracle谈区块链、机器人和无服务架构\

查看英文原文:JavaOne Keynote: IBM on OpenJ9 and Open Liberty; Java Community in The Matrix

相关文章:

  • 只有坚持才能学好linux系统
  • 一句代码实现批量数据绑定[上篇]
  • 设置样式-----背景和边框
  • Python垃圾回收机制
  • 在linux系统上文件传输的小技巧
  • mysql主从复制的步骤
  • 随笔分类整理
  • python xlwt 设置 格式
  • 《JavaScript权威指南第六版》学习笔记-语句
  • Parallels Desktop和VM里体验Ubuntu18.04LTS(2018.9重编版)
  • android压力测试命令monkey详解【转】
  • 机器学习学习笔记一
  • Laravel 菜鸟晋级之路
  • 事务概念
  • 设计模式学习总结(一)——设计原则与UML统一建模语言
  • 10个最佳ES6特性 ES7与ES8的特性
  • JavaScript 基础知识 - 入门篇(一)
  • Java教程_软件开发基础
  • LeetCode541. Reverse String II -- 按步长反转字符串
  • PyCharm搭建GO开发环境(GO语言学习第1课)
  • spring boot 整合mybatis 无法输出sql的问题
  • tab.js分享及浏览器兼容性问题汇总
  • Vue 动态创建 component
  • vue-cli3搭建项目
  • Vue源码解析(二)Vue的双向绑定讲解及实现
  • 不上全站https的网站你们就等着被恶心死吧
  • 关于 Cirru Editor 存储格式
  • 基于Android乐音识别(2)
  • 基于Javascript, Springboot的管理系统报表查询页面代码设计
  • 前端工程化(Gulp、Webpack)-webpack
  • 前嗅ForeSpider教程:创建模板
  • 说说动画卡顿的解决方案
  • 微信支付JSAPI,实测!终极方案
  • MPAndroidChart 教程:Y轴 YAxis
  • #Z2294. 打印树的直径
  • ( 10 )MySQL中的外键
  • (13)Latex:基于ΤΕΧ的自动排版系统——写论文必备
  • (3)Dubbo启动时qos-server can not bind localhost22222错误解决
  • (学习日记)2024.03.12:UCOSIII第十四节:时基列表
  • (转)linux 命令大全
  • (转载)利用webkit抓取动态网页和链接
  • *p++,*(p++),*++p,(*p)++区别?
  • .net oracle 连接超时_Mysql连接数据库异常汇总【必收藏】
  • .NET 解决重复提交问题
  • .NET 命令行参数包含应用程序路径吗?
  • /bin/rm: 参数列表过长"的解决办法
  • [ CTF ]【天格】战队WriteUp- 2022年第三届“网鼎杯”网络安全大赛(青龙组)
  • [100天算法】-实现 strStr()(day 52)
  • [BUUCTF NewStarCTF 2023 公开赛道] week3 crypto/pwn
  • [c#基础]值类型和引用类型的Equals,==的区别
  • [C/C++随笔] char与unsigned char区别
  • [COI2007] Sabor
  • [IE技巧] 使IE8以单进程的模式运行
  • [LeetCode 127] - 单词梯(Word Ladder)
  • [Loadrunner参数化]一个文件输两列参数的取值