Hadoop生態(tài)系統(tǒng)
Hadoop最新版本2.7.0于上個月末發(fā)布,并宣稱:“這個版本的Hadoop已經(jīng)不支持JDK 1.6運(yùn)行環(huán)境,只支持JDK 7+”。
Spark生態(tài)系統(tǒng)
近期,spark社區(qū)也非?;钴S,討論是否應(yīng)該終止支持Java 6,經(jīng)過這幾天的討論,社區(qū)決定從Spark 1.5開始,不再支持Java 1.6!
(1)Spark 1.4.x(~ Jun 2015)會在Java 6,7,8上面工作;
(2)Spark 1.5+ (~ Sep 2015)只能在Java 7,8上面工作,不再支持Java 6!
Java 6與Java 7對比
Java 1.4到1.5的修改很大,在編譯compile-time 方面提升很大,Java 6在運(yùn)行時runtime智能上做了優(yōu)化,Java 7的主要改進(jìn):模塊化。我們分析一下Java 7的主要修改:
* Modularization 模塊化– JSR 294 或者 Project Jigsaw
* JVM 對動態(tài)語言的支持
* 更多新的 I/O APIs 即將完成,包括真正的異步I/O 和最終的真實(shí)的文件系統(tǒng) file system API – JSR 203
* 對XML本地語言支持. (可能的probable)
* Safe rethrow – 允許catch捕獲語句讓編譯器更加聰明的知道基于什么情況下重新throw什么內(nèi)容。
* Null dereference expressions – Null 和 ‘?’ syntax 比較,語法類似 Groovy… 讓開發(fā)者避免過多的空值驗(yàn)證。
* 更好的類型推斷 Better type inference
* 多重捕獲Multi-catch
* JSR 296 – Swing 應(yīng)用框架 application framework – 這方面需要更簡單和簡潔。
“小的”sun方面的修改有:
* 升級的類加載class loader 架構(gòu);
* XRender pipeline for Java 2D:是Open JDK ntegrators Challenge project項(xiàng)目;
* Swing 更新 – JXLayer, DatePicker, CSS styling 等;
* JavaFX
sun方面“快速”的修改,主要是性能更新:
* 并發(fā)方面的細(xì)微調(diào)整 concurrency tweaks (JSR 166),更好的支持Multicore
* G1 垃圾收集器Garbage collector - 帶來更小的中斷時間,有希望替代 CMS (Concurrent mark sweep) GC
* 64 bit VM的壓縮指針Compressed pointer
* MVM-lite – 多個虛擬機(jī)能夠獨(dú)立運(yùn)行應(yīng)用和允許用kill -9殺死java應(yīng)用。