写在Java 20周年: 奔跑吧,Java
2015年5月23日, Java诞生20周年。 细数IT的语言开发平台,从汇编到BASIC;从CORBA到FORTRAN;从PASCAL到C,C++,.NET… ,似乎每个语言都曾闪耀一时,而Java凭借卓越的通用性、高效性、平台移植性和安全性,被广泛应用于PC、数据中心、游戏控制台、科学超级计算机、移动电话和互联网,从个人IT到企业应用无处不在,如果把Java定义为IT史上迄今为止最成功的计算机语言,就算是最擅吐嘈的年轻人想必也不会有太大异议。
精雕细琢 问题从来都不是问题
从SUN公司具有前瞻性的启蒙,到BEA公司向企业层面的扩展,再到甲骨文收购后的日益成熟, Java走过的二十年可谓多彩。 随着Java 7,Java 8及Weblogic12c Java应用服务器等明***工具的出现,Java似乎已经将触角延伸至***领域。然而,问题也随之产生:Java的研发初衷是为了解决垃圾回收系统、可移植的安全性、分布程序设计和多线程功能等问题,但是随着这些系统的不断变大,很多新兴工具在长期运行时在实用性和耐用性方面显现出疲态。
由SUN、BEA、甲骨文三家公司精英组成的Java研发团队敏锐地发现了这个问题,本着甲骨文对市场更加开放的承诺, Java从JDK7 u40版本开始便在JDK工具模块中添加了一个新的成员: 涵盖工作时间分析和诊断工具套件在内的甲骨文Java任务控制套件,为开发者集中解决在Java或其他开发平台上进行开发时可能遇到的问题。该任务控制套件最初为JRockit的一部分,用于提供实时性能分析。JRockit团队在评估用户提供的绝密交易应用中发现了客户应用程序的滞后性,因此决定建立一个足够低开销的工具来收集生产数据,结果发现该工具取得了十分显著的成效,许多用户开始询问该工具的授权问题。于是,一个融合了更多资源的商业型JRockit任务控制套件由此诞生。甲骨文在收购SUN公司后,突然拥有了两个市场上最常用的通用Java虚拟机。其中,HotSpot JVM是开源的JVM,代码库和许可证广为人知;另一个是JRockitJVM,拥有鲜为人知的代码库及快速、精致及轻量级的特点。甲骨文希望取两“机”所长,借助于可用资源打造市场上***Java虚拟机,而打造的基础,就是这两个虚拟机共有的特性——JRockit任务控制套件。随着Java HotSpot VM功能的不断增加,甲骨文Java任务控制套件因需而生。该套件包含两个类似JRockit任务控制工具:Java管理扩展(JMX)控制台和Java JRockit Flight Recorder,从Java 8开始实施应用。
同时,甲骨文还打造了一款Java高级管理控制台,使应用的目的更加明确。Java高级管理控制台的功能可以分为两部分:***,为使用者直接追踪与Java应用程序相关使用数据;第二,使管理员根据这些数据执行相关操作。通过使用Java高级管理控制台,用户可以获得一个安全、可控的运行环境及更好的终端用户体验。具体说来,Java高级管理控制台能够获取当前哪些网络应用程序(Java小程序和Java Web Start应用程序)正在企业内部运行以及运行在哪个版本的Java运行环境(JRE)。除此之外,Java高级管理控制台还可以帮助系统管理员从企业内部客户端中获取大量信息,例如:每一个应用的运行位置,服务提供商,访问权限,以及这个应用程序被运行的次数。高级管理控制台帮助系统管理员更简单地管理网络应用程序和Java实时运行环境,并且提供了通过部署规则集控制老版本Java兼容性和可用性的工具,而这些功能都能为终端用户带来更流畅的用户体验。
在云和物联网大潮中再次焕发青春
在Java任务控制套件和Java高级管理控制台的双重保障下,Java进入到了使用的新纪元,而同样进入这个纪元的,还有云计算和物联网。作为最常用的云计算底层开发语言,Java的安全性、开放性、稳定性和跨平台性与云计算高可靠、高拓展的优势相得益彰。加入甲骨文后,Java更是加快了向云端靠拢的步伐。Java8中多租户和模块化的功能使大规模的云部署变得简单,连Google App Engine从仅支持Python发展到了支持Java的加入。同时,在日益重要的物联网方面,甲骨文公司正大力将Java推向嵌入式系统,随着中间件的兴起,企业更多地在内部采纳Java,而诸如飞思卡尔这样的处理器***也加入嵌入式Java的阵营。针对互联网缺乏统一互联标准的问题,飞思卡尔与甲骨文合作推出了一个平台化的“一体化盒子One Box”物联网解决方案,令开发者无论基于哪种环境都能够在统一的Linux操作系统下进行开发,大大简化了开发流程。
成名于互联网,掀起于云端,Java一路上不算平坦却能披荆斩棘。在Java 20周年到来之际,我们带着更多祝福、更深期盼希望Java的云端的下个二十年能够飞得更高更远,续写辉煌。
相关文章
- Java要抛弃祖宗的基业,Java程序员危险了!
- 十大 Java 语言特性
- JVM 三色标记算法,原来是这么回事!
- 聊聊 Spring 事务控制策略以及 @Transactional 失效问题避坑
- 写给 Java 程序员的前端 Promise 教程
- 写给 Java 程序员的前端 Promise 教程,你学会了吗?
- Java 中为什么不全部使用 Static 方法?
- Java 池化技术你了解多少?
- Java 服务 Docker 容器化优秀实践
- Spring Boot + EasyExcel导入导出,简直太好用了!
- 我们一起聊聊 Java 内存泄漏
- CentOS 下安装 Docker 极简教程
- JDK 19 功能集冻结:Java 19 只有七个新特性
- 关于 CMS 垃圾回收器,你真的懂了吗?
- 为什么会有这么多编程语言?
- 改善Java代码的八个建议
- 接口流量突增,如何做好性能优化?
- Java 以编程方式创建JAR文件
- POJO、Java Bean是如何定义的
- Spring 的 Bean 明明设置了 Scope 为 Prototype,为什么还是只能获取到单例对象?