JDK9的新特性
1. 轻量级的JSON API ;
2. HTTP 2 Client API ( 支持 HTTP 2.0 和 WebSockets , 替代传统的 HttpURLConnection ) ;
3. Process API 更新 , 以提升对操作系统进程的控制和管理 ;
4. Improve contended lockin g , 提升访问对象时的线程竞争处理 ;
5. Segmented code c ache, 更好的性能 , 更短的扫描时间 , 更少的碎片 ;
6. Smart Java co mpiler , 或者叫 sjavac , 用于更大项目的构建 ;
OpenJDK自打8开始是出了名的好编译, 傻瓜式的. 好奇下利用中午抽空编译了OpenJDK9, 体会就是你再也看不到熟悉的rt.jar等一堆lib下的jar包了, 对应的你能看到的是一堆.so(Ubuntu下编译)和类似bootmodule.jimage的东东, 它还在bin目录下提供一个新工具叫jimage的东西, 专门处理这样的文件.
这个bin目录下的工具还真热闹, JDK8的时候就增加过两个工具jdeps (分析依赖的) 和 jjs (一个js交换式控制台), 然后自JDK8开始内存模型中永久代被彻底干没了;
OpenJDK比起Oracle官方提供的JDK除实现不同, 加上优化导致性能的弱势外, 我肉眼看到的也就是bin目录的不同, 就是那两个好用的性能监测工具jvisualvm (Java visualVM) 和 jmc (Java Mission Control)在OpenJDK中看不到身影.
1. 轻量级的JSON API ;
2. HTTP 2 Client API ( 支持 HTTP 2.0 和 WebSockets , 替代传统的 HttpURLConnection ) ;
3. Process API 更新 , 以提升对操作系统进程的控制和管理 ;
4. Improve contended lockin g , 提升访问对象时的线程竞争处理 ;
5. Segmented code c ache, 更好的性能 , 更短的扫描时间 , 更少的碎片 ;
6. Smart Java co mpiler , 或者叫 sjavac , 用于更大项目的构建 ;
OpenJDK自打8开始是出了名的好编译, 傻瓜式的. 好奇下利用中午抽空编译了OpenJDK9, 体会就是你再也看不到熟悉的rt.jar等一堆lib下的jar包了, 对应的你能看到的是一堆.so(Ubuntu下编译)和类似bootmodule.jimage的东东, 它还在bin目录下提供一个新工具叫jimage的东西, 专门处理这样的文件.
这个bin目录下的工具还真热闹, JDK8的时候就增加过两个工具jdeps (分析依赖的) 和 jjs (一个js交换式控制台), 然后自JDK8开始内存模型中永久代被彻底干没了;
OpenJDK比起Oracle官方提供的JDK除实现不同, 加上优化导致性能的弱势外, 我肉眼看到的也就是bin目录的不同, 就是那两个好用的性能监测工具jvisualvm (Java visualVM) 和 jmc (Java Mission Control)在OpenJDK中看不到身影.