JVM程序員的閱讀清單

fmms 12年前發布 | 26K 次閱讀 程序員

        英文原文:A Reading List for JVM-based Developers

        前些天,我發現我和幾個同行進行的一系列討論中,有部分話題是關于在 Linux 系統 JVM 上運行大量線程的性能問題。我并不是說我是這個主題的專家,但我曾經以為掌握得很好的一些知識點卻并沒有我想的那么無懈可擊。之后,我閱讀了一些別人推薦 的有關這個主題的書,我不得不承認我原來很多知識點都不知道。這樣的情況經常發生,我通常會記下來少數一些我覺得值得研究的資源。

        所以,這里是我推薦的閱讀列表,給那些正在學習基于 JVM 開發的程序員們閱讀,他們需要了解環境的特性,尤其是當遇到和性能以及同步相關的問題時。老實說,我也不能說我閱讀了所有的材料。但經過上面提到的和同事 的對話后,我決定下功夫去彌補我知識體系上的缺陷,盡可能多的閱讀下面每一本書。并且我認為如果你想學會某一門技藝的話,你必須持續不斷的學習和鉆研。

        ● 《Jave Performance》是這個領域的一本新書,十月份剛出版,卻一本不可多得的好書。它涵蓋了工具和技術(性能測評,建立基準,性能調試等等),也涵蓋了更深的但很少被考慮的技術(如操作系統層次的工具、JIT、垃圾回收等等),甚至包含了處理基于 JAX-RS 的網絡應用。

JVM程序員的閱讀清單

        ● 《Java Concurrency in Practice Java 并發編程實戰 》對于任何一個想要了解 Java 標準庫中內建的并發基礎與結構的程序員來說,具有很好的指導作用。即使你不直接處理并發,你也需要了解這本書中闡述的原理。

JVM程序員的閱讀清單

        ● 《What Every Programmer Should Know About Memory 》(這里有 HTML 版本)是一本關于系統內存的系統介紹。你將會學到比你想象得多得多的知識,但也是個痛苦的過程。相信我 ;~)

        ● 《Linux Kernel Development (3rd Edition) 》 歸納在這個主題內似乎并不恰當,但事實上如果你開發服務器端的應用的話,系統通常都會在 Linux 系統上運行。它似乎是最這個主題的書,雖然我不是這個方面的專家。不管怎樣,都值得探索 Linux 內核發生了什么。我不建議你一口氣讀完這本書,除非你非常想要這么做–畢竟這是一本寫的很好的書——至少讀一讀關于進程管理和進程調度。還有虛擬操作系統 以及I/O的章節也非常值得瀏覽。

        有一些似乎不應該歸在這個主題,但依然非常有用,請閱讀:

        ● 《Effective Java   Effective Java 中文版》雖然是基于 Java 而寫的,但甚至對 Scala 來說都非常有用,同樣的,對于其他基于 JVM 的語言來說同樣適用。許多對 Java 適用的知識是很有用處的,至少,會影響你設計系統時的選擇。當你評估第三方庫時,你會從中獲取許多有用的信息。

        ● 《Inside the Machine 》雖然已經過時幾年了,但可能是最好的現代處理器架構的入門材料。雖然它并沒有涵蓋最前沿的技術,但它是一本非常好的介紹 x86 處理器以及大的發展方向(2006年底)的入門資料。這本書不再印刷了,你可以買它的電子版本。

        ● 《The Java Virtual Machine Specification  Java 虛擬機規范(Java SE 7 中文版》也許不是一本想輕松閱讀的第一選擇,但它包含許多非常關鍵的需要掌握的知識。

        ● 《JSR 133(Java Memory Model) FAQ 》在很長一段時間里,它都是獲取關于 Java 內存模型知識的最好的方法,并且你不需要深入到細枝末節。

        有了這些資料,你應該需要忙一陣了。我非常歡迎關于其他材料的建議,我希望將來會增加增補閱讀列表的博文。

        其他資源

        在 Thomas Lockney 這篇文章的評論,還有其他網友的資源推薦。

        @Staffan Nöteberg 推薦的 JVM 列表

        @Helwyr 推薦了兩個郵件列表資源:① The Disruptor discussion: http://code.google.com/p/disru… ②  Concurrency Interest: http://cs.oswego.edu/mailman/l…

        英文原文:Thomas Lockney    編譯:伯樂在線- 唐小娟

 本文由用戶 fmms 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!