我感覺Oracle想將BEA LiquidVM 」JVM on a hypervisor「技術中的精華部分整合到現有的HotSpot代碼中;當然了,虛擬化是JRockit JVM中最有意思,也是最棒的部分,非常迎合當前的虛擬化、雲、集群等趨勢,可以通過這些手段管理計算機資源,相對於IBM J9 JVM來說,這些內容也是極具競爭力的。Oracle對JCP的未來及其在Java 7中所扮演的角色所談甚少,來自RedMonk的Stephen O'Grady指出:
我也覺得移除permgen並使用thread-local的GC非常好。thread-local的GC指的是對逃逸分析(escape analysis)和堆棧分配(stack allocation)的優化,而Hotspot已經在這方面做了很多工作。大多數程序所創建的臨時對象都用在單獨的線程上下文中,很少被其他線程所用。這樣,我們就可以直接在棧上為這些對象開闢內存空間(這麼做更快),無需使用堆,也不必使用常規的GC手段進行對象檢測與移除了(這麼做會降低GC的次數,進而提升效率)。
對permgen的改進亟須解決一個問題:像Groovy或是JRuby這樣的語言會在執行期動態生成大量的小類(small classes)以提供動態特性,而隨著JVM上動態語言的不斷增多,該問題也變得越來越嚴重。這些類污染了Java內存中特定的「permgen」部分而且難以回收,導致了嚴重的內存問題。JSR 292的invokedynamic就是為瞭解決該問題的:動態語言可以通過該指令在運行期直接鏈接到調用地址上,因此避免了生成大量內部類的煩惱。
我認為最好的處理方式並不是消滅掉這些JVM,而是取其精華,棄其糟粕。這些工程團隊都有一些優秀的人才,他們做出了很多創新性的工作,我希望他們能在這個領域繼續做下去,只有這樣JVM才能繼續充當老大的角色,吸引眾多具有開創性的新語言,如Scala、Clojure、Groovy及JRuby等。
我覺得Oracle對JCP的態度要比Sun此前的做法更注重實效,但現在還很難預測未來的走向。MySQL
我們不難發現JavaFX在Oracle RIA計劃中所佔據的重要地位;它填平了Oracle終止BEA綁定Adobe Flash/Flex開發工具計劃所導致的RIA鴻溝。實際上,Oracle對RIA的態度著實令人迷惑,因為ADF可以支持任何框架的客戶端顯示,而JavaFX現在卻變成了Oracle自己的東西。JavaFX的擁護者,同時也是開發者Jim Weaver對Oracle支持JavaFX平台的舉措信心十足:
今天的聲明更令我堅信JavaFX將會繼續發展下去,會有越來越多的應用選擇JavaFX作為RIA平台的。目前JavaFX至少面臨三個大的挑戰,我相信Oracle會全力以赴迎接這些挑戰的。NetBeans
對於NetBeans來說,玩玩還是沒問題的,Oracle中間件領導Thomas Kurian將NetBeans定義為「輕量級的開發環境」;但如果真的想為Oracle平台開發企業級應用,那還得使用JDeveloper,JDeveloper主要面向的是Oracle的ADF框架,後者則是Oracle數據庫、中間件及各種應用的根基。這與Oracle對BEA Eclipse開發工具所持有的態度是一樣的。事實上,令我們感到驚訝的是Oracle並沒有草草地將NetBeans解決掉並免費送給別人——比如捐獻給Apache或是其他開源組織。Stephen O'Grady也持有同樣的觀點:Oracle並不打算在Sun的IDE上做太多投資:
聲明中提到了NetBeans以及OpenOffice.org,我們推測Oracle並不打算在這個時候就干掉他們。是的,他們還會留存於世,不過將要退居二線了,把頭把交椅讓給JDeveloper。GlassFish
根據Oracle所述,GlassFish將變成參考實現。除此之外,Oracle並沒有承諾其他任何東西。早上有人對我說,Oracle並沒有為GlassFish安排任何銷售團隊和市場部門,和MySQL的下場一樣。這裡有兩種解讀方式:首先,如評論所說,「Oracle認為捆綁銷售GF+WLS將會獲得更多的機會,進而滿足不同項目的需求」。另一方面,Oracle認為捆綁銷售產品會破壞其WebServer產品線,因此會通過組織的變更慢慢地將GlassFish扼殺掉。WebLogic銷售的那幫傢伙怎麼會推出一個更便宜的WebLogic替代品呢?Cloud
眾多客戶都不再需要虛擬或是物理設備了,這有利於提供所謂的最佳架構。儘管Ellison非常討厭Cloud,但Cloud還是有其用武之地的。Ellison討厭Cloud的原因在於他認為Cloud並不是什麼新玩意兒。Cloud不過是通過網絡交付價值的數據庫和中間件而已。公平的說,他的觀點還是有一定價值的,尤其在當今這個世界上,廠商不斷地拋出「Cloud」這個詞兒,好像它馬上就要過時了一樣。換句話說,從大眾擁抱Cloud這個事實以及「Cloud」術語所暗示的那樣,無論你認為Cloud是新東西還是老古董都無所謂,至少它簡化了設備的銷售。我想說的是,Oracle並沒有過多地談及Cloud,但這並不意味著Cloud已死,只不過是Ellison對Sun業務的未來規劃而已。Open Source
Sun的很多開源項目都沒有達到預先的期望,無論從競爭力還是回報角度來說都是如此,他們將不得不面臨退出歷史舞台的命運結局。Oracle是一個更加注重利潤的公司,這一點要遠遠超過Sun,單憑這一點,那些沒什麼搞頭的開源項目也將面臨著停業謝客的結局。
坦率地說,Oracle的聲明並沒有過多地提到開源。單詞open倒是出現了不少,但source卻並沒有一同出現。從宏觀角度來看,我認為這會對開源社區造成消極的影響,因為此次收購是從一個非常注重開源的公司到對開源並不是那麼熱衷的公司的轉變。但實際上,我覺得有必要一個一個地談談這些開源社區,就拿Java來說吧,它肯定沒什麼問題。Oracle的舉措定會讓Java社區歡天喜地。但MySQL注定要成為一個孤獨的人了,而OpenSolaris的命運則充滿了變數。來自ZDNet的Dana Blankenhorn也認為Oracle的這種做法會對開源社區造成非常消極的影響:
現在Oracle掌握著任何開源業務底層代碼的版權,他的名聲注定了利潤最大化才是追求的唯一目標:圈地、拉攏客戶這些事情Oracle都干的出來。此次收購有一點值得我們關注:Oracle不再支持個人或是小公司可以通過社區的形式迎戰業界巨頭的做法了,因此那些巨頭會輕鬆將你擊垮。來自RedMonk的Michael Coté覺得Oracle不會再像Sun那樣對開源運動進行大量投入了:
除非你有預算並確實需要高性能的硬件和中間件,否則Oracle是不會(就是為了賺取利潤)關注LAMP、開源、「lesscode」這些東西的。Ellison對Java的態度還是非常友好的:Java並不需要直接為公司創造利潤,它只要能為整為公司的其他業務添磚加瓦就夠了。Oracle相信其「閉源」的產品(Oracle DB、WebLogic等)要「好過」那些開源的對手(MySQL、GlassFish等),只要開源產品不搞出什麼麻煩出來,那就沒什麼事。裁員
歡迎光臨 PC Infinity (http://pcinhk.com/discuz/) | Powered by Discuz! 7.0.0 |