Lambda表達(dá)式是自Java SE 5引入泛型以來(lái)最重大的Java語(yǔ)言新特性,本文是2012年度最后一期Java Magazine中的一篇文章,它介紹了Lamdba的設(shè)計(jì)初衷,應(yīng)用場(chǎng)景與基本語(yǔ)法。
http://www.codeceo.com/article/java-jvm-lambda.html
優(yōu)化JVM 縮短Eclipse的啟動(dòng)時(shí)間首先要聲明一下,這個(gè)案例在<深入理解JVM虛擬機(jī)>這本書(shū)中也提到過(guò). 這本書(shū)是我曾經(jīng)學(xué)習(xí)JVM的第一本書(shū).里面關(guān)于Heap的優(yōu)化思想,來(lái)源于此.建議大家想學(xué)JVM原理的,可以找來(lái)此書(shū)看看. 寫(xiě)這篇文章,是因?yàn)樽罱诮o一個(gè)社交網(wǎng)站服務(wù)器做調(diào)優(yōu),突然覺(jué)得我機(jī)器上的eclipse跑的比較多,所以順便優(yōu)化下eclipse.至于基于 WebSphere服務(wù)器的性能調(diào)優(yōu),這回涉及到更多的工具和方法,會(huì)在以后的文章中看到.
http://www.codeceo.com/article/jvm-imPRove-eclipse-start-time.html
JVM 線程堆棧分析過(guò)程詳解在這篇文章里我將教會(huì)你如何分析JVM的線程堆棧以及如何從堆棧信息中找出問(wèn)題的根因。在我看來(lái)線程堆棧分析技術(shù)是Java EE產(chǎn)品支持工程師所必須掌握的一門(mén)技術(shù)。在線程堆棧中存儲(chǔ)的信息,通常遠(yuǎn)超出你的想象,我們可以在工作中善加利用這些信息。
http://www.codeceo.com/article/jvm-thread-stack.html
淺析JVM內(nèi)存結(jié)構(gòu)和6大區(qū)域其實(shí)對(duì)于我們一般理解的計(jì)算機(jī)內(nèi)存,它算是CPU與計(jì)算機(jī)打交道最頻繁的區(qū)域,所有數(shù)據(jù)都是先經(jīng)過(guò)硬盤(pán)至內(nèi)存,然后由CPU再?gòu)膬?nèi)存中獲取數(shù)據(jù)進(jìn)行處理,又將數(shù)據(jù)保存到內(nèi)存,通過(guò)分頁(yè)或分片技術(shù)將內(nèi)存中的數(shù)據(jù)再flush至硬盤(pán)。那JVM的內(nèi)存結(jié)構(gòu)到底是如何呢?JVM做為一個(gè)運(yùn)行在操作系統(tǒng)上,但又獨(dú)立于os運(yùn)行的平臺(tái),它的內(nèi)存至少應(yīng)該包括象寄存器、堆棧等區(qū)域。
http://www.codeceo.com/article/jvm-memory-6-areas.html
JVM并發(fā)機(jī)制探討—內(nèi)存模型、內(nèi)存可見(jiàn)性和指令重排序并發(fā)本來(lái)就是個(gè)有意思的問(wèn)題,尤其是現(xiàn)在又流行這么一句話:“高帥富加機(jī)器,窮矮搓搞優(yōu)化”。從這句話可以看到,無(wú)論是高帥富還是窮矮搓都需要深入理解并發(fā)編程,高帥富加多了機(jī)器,需要協(xié)調(diào)多臺(tái)機(jī)器或者多個(gè)CPU對(duì)共享資源的訪問(wèn),因此需要了解并發(fā),窮矮搓搞優(yōu)化需要編寫(xiě)各種多線程的代碼來(lái)壓榨 CPU的計(jì)算資源,讓它在同一時(shí)刻做更多的事情,這個(gè)更需要了解并發(fā)。
http://www.codeceo.com/article/jvm-memory-model-visual.html
如何通過(guò)編程發(fā)現(xiàn)Java死鎖死鎖是指,兩個(gè)或多個(gè)動(dòng)作一直在等待其他動(dòng)作完成而使得所有動(dòng)作都始終處在阻塞的狀態(tài)。想要在開(kāi)發(fā)階段檢測(cè)到死鎖是非常困難的,而想要解除死鎖往往需要重新啟動(dòng)程序。更糟的是,死鎖通常發(fā)生在負(fù)載最重的生產(chǎn)過(guò)程中,而想要在測(cè)試中發(fā)現(xiàn)它,十分不易。之所以這么說(shuō),是因?yàn)闇y(cè)試線程之間所有可能的交叉是不現(xiàn)實(shí)的。盡管出現(xiàn)了一些靜態(tài)分析庫(kù)可以幫助我們發(fā)現(xiàn)可能出現(xiàn)的死鎖,我們還是有必要在運(yùn)行時(shí)檢測(cè)到死鎖,并且得到有用的信息,以便我們解決這個(gè)問(wèn)題或者重啟程序,或者做些其他的事情。
http://www.codeceo.com/article/java-dead-lock.html
JVM性能優(yōu)化,提高Java的伸縮性很多程序員在解決JVM性能問(wèn)題的時(shí)候,花開(kāi)了很多時(shí)間去調(diào)優(yōu)應(yīng)用程序級(jí)別的性能瓶頸,當(dāng)你讀完這本系列文章之后你會(huì)發(fā)現(xiàn)我可能更加系統(tǒng)地看待這類的問(wèn)題。我說(shuō)過(guò)JVM的自身技術(shù)限制了Java企業(yè)級(jí)應(yīng)用的伸縮性。首先我們先列舉一些主導(dǎo)因素。
http://www.codeceo.com/article/jvm-java-performance.html
每個(gè)Java程序員必須知道的5個(gè)JVM命令行標(biāo)志本文是Neward & Associates的總裁Ted Neward為developerworks獨(dú)家撰稿“你不知道5個(gè)……”系列中的一篇,JVM是多數(shù)開(kāi)發(fā)人員視為理所當(dāng)然的Java功能和性能背后的重負(fù)荷機(jī)器。然而,我們很少有人能理解JVM是如何進(jìn)行工作的—像任務(wù)分配和垃圾收集、轉(zhuǎn)動(dòng)線程、打開(kāi)和關(guān)閉文件、中斷和/或JIT編譯Java字節(jié)碼,等等。
http://www.codeceo.com/article/5-jvm-command.html
最常用的 Eclipse 快捷鍵總結(jié)本文是一些最實(shí)用、最齊全、最省時(shí)間的 Eclipse 快捷鍵總結(jié),這些快捷鍵可以讓幫助你完成工作中的任何一個(gè)操作。歡迎參考。
http://www.codeceo.com/article/eclipse-shortcuts.html
Java 8中的default方法使用詳解Java 8發(fā)布以后,可以給接口添加新方法,但是,接口仍然可以和它的實(shí)現(xiàn)類保持兼容。這非常重要,因?yàn)槟汩_(kāi)發(fā)的類庫(kù)可能正在被多個(gè)開(kāi)發(fā)者廣泛的使用著。而Java 8之前,在類庫(kù)中發(fā)布了一個(gè)接口以后,如果在接口中添加一個(gè)新方法,那些實(shí)現(xiàn)了這個(gè)接口的應(yīng)用使用新版本的接口就會(huì)有崩潰的危險(xiǎn)。
http://www.codeceo.com/article/java-8-default-method.html
待續(xù)....
新聞熱點(diǎn)
疑難解答
圖片精選
網(wǎng)友關(guān)注