進階Java架構師必看的15本書

一、大型網站技術架構:核心原理與案例分析

本書經過梳理大型網站技術發展歷程,剖析大型網站技術架構模式,深刻講述大型互聯網架構設計的核心原理,並經過一組典型網站技術架構設計案例,爲讀者呈現一幅包括技術選型、架構設計、性能優化、Web安全、系統發佈、運維監控等在內的大型網站開發全景視圖。前端

本書做者李智慧,曾在阿里巴巴擔任技術專家,參與阿里巴巴基礎技術平臺開發和架構設計。web

image.png

二、分佈式服務框架原理與實踐

微服務是當前很是熱的技術關鍵詞之一,那麼微服務如何落地呢?首先要實現服務化,微服務架構是一種服務化架構風格。首先分析了做爲一個分佈式服務框架所需具有的能力,包括服務註冊中心、服務調用、服務路由、服務發佈/灰度發佈等;接着分析了服務底層如何有效地進行通訊,包括通訊框架、序列化/反序列化及協議棧等;而後分析了服務如何作到高可靠性及高安全性等重要特性;最後也闡述了從服務化如何向微服務演進。乾貨滿滿!面試

做者李林鋒多年來在華爲一直從事核心代碼的架構設計和開發,屬於實戰型架構師,這本書集合了他多年的架構思路,書中內容組織清晰,圖例詳實,很是便於理解與吸取。
image.png算法

三、互聯網創業核心技術:構建可伸縮的web應用

可伸縮架構技術是全部互聯網技術中最重要,也是最引人入勝的技術。《互聯網創業核心技術:構建可伸縮的web應用》針對互聯網創業需求快速迭代,業務快速發展,短期內用戶、數據、訪問量激增的特色,提綱挈領地描述了伸縮性架構的基本原理與設計原則,詳細闡述了Web應用前端層、服務層、數據層的可伸縮架構,並花大量篇幅講述了緩存技術和異步處理技術的可伸縮設計及其在Web系統中的具體應用。數據庫

《互聯網創業核心技術:構建可伸縮的web應用》面向互聯網創業公司工程師,也適用於全部互聯網行業的工程師,對非互聯網行業的軟件工程師也有借鑑做用。事實上,《互聯網創業核心技術:構建可伸縮的web應用》適合全部對可伸縮架構有興趣的軟件技術人員閱讀。編程

image.png

四、高擴展性網站的50條原則

《高擴展性網站的50條原則》給出了設計高擴展網站的50條原則,如不要過分設計、設計時就考慮擴展性、把方案簡化3倍以上、減小DNS查找、儘量減小對象等,每一個原則都與不一樣的主題綁定在一塊兒。大部分原則是面向技術的,只有少許原則解決的是與關鍵習慣和方法有關的問題,固然,每一個原則都對構建可擴展的產品相當重要。緩存

image.png

五、架構即將來:現代企業可擴展的Web架構、流程和組織(原書第2版)

任何一個持續成長的公司最終都須要解決系統、組織和流程的擴展性問題。本書匯聚了做者從eBay、VISA、Salesforce.com到Apple超過30年的豐富經驗,全面闡釋了通過驗證的信息技術擴展方法,對所須要掌握的產品和服務的平滑擴展作了詳盡的論述,並在第1版的基礎上更新了擴展的策略、技術和案例。安全

針對技術和非技術的決策者,馬丁•阿伯特和邁克爾•費舍爾詳盡地介紹了影響擴展性的各個方面,包括架構、過程、組織和技術。經過閱讀本書,你能夠學習到以最大化敏捷性和擴展性來優化組織機構的新策略,以及對雲計算(IaaS/PaaS)、NoSQL、DevOps和業務指標等的新看法。並且利用其中的工具和建議,你能夠系統化地清除擴展性道路上的障礙,在技術和業務上取得史無前例的成功。性能優化

image.png

六、系統架構:複雜系統的產品設計與開發

本書由系統架構領域3位領軍人物親筆撰寫,該領域資深專家Norman R.Augustine做序推薦,Amazon全五星評價。架構

本書首先講解了什麼是系統,什麼是系統架構,並從形式和功能兩個方面講解了如何分析系統。以後開始講解如何建立良好的系統架構。在將概念演化爲架構的過程當中,架構師須要對系統進行分解,以看清這些組件的結構以及它們之間的交互狀況,所以須要根據一些衡量指標來構建權衡空間,以便使用優化算法找出優點較大的架構。

image.png

七、Java性能優化權威指南

Java性能優化聖經!Java之父重磅推薦!

本書由曾任職於Oracle/Sun的性能優化專家編寫,系統而詳細地講解了性能優化的各個方面,幫助你學習Java虛擬機的基本原理、掌握一些監控Java程序性能的工具,從而快速找到程序中的性能瓶頸,並有效改善程序的運行性能。

Java性能優化的任何問題,均可以從本書中找到答案!

image.png

八、大規模分佈式存儲系統:原理解析與架構實戰

阿里巴巴高級技術專家(OceanBase核心開發人員)撰寫,陽振坤、章文嵩、楊衛華、汪源、餘鋒(褚霸)、賴春波等來自阿里、新浪、網易和百度的資深技術專家聯袂推薦。

系統講解構建大規模存儲系統的核心技術和原理,詳細分析Google、Microsoft和阿里巴巴的大規模分佈式存儲系統的原理。

實戰性強,經過對阿里巴巴的分佈式數據庫OceanBase的實現細節進行深刻分析,完整講解了大規模分佈式存儲系統的架構方法與應用實踐。

image.png

九、大規模分佈式系統架構與設計實戰

本書從做者的實戰經驗出發,深刻淺出地講解了如何創建一個Hadoop那樣的分佈式系統,實現對多臺計算機CPU、內存、硬盤的統一利用,從而獲取強大計算能力去解決複雜問題。通常互聯網企業的分佈式存儲計算系統都是個大平臺,系統複雜、代碼龐大,並且只適合公司的業務,工程師很難下載安裝到本身的電腦裏學習和吃透。

本書對分佈式核心技術進行了大量概括和總結,並從中抽取出一套簡化的框架和編程API進行講解,方便工程師瞭解分佈式系統的主要技術實現。這不是一本空談概念、四處摘抄的書,這本書包含了大量精煉示例,手把手教你掌握分佈式核心技術。

image.png

十、企業IT架構轉型之道:阿里巴巴中臺戰略思想與架構實戰

在當今整個中國社會都處於互聯網轉型的浪潮中,無論是政府職能單位、業務規模龐大的央企,仍是面臨最激烈競爭的零售行業都處於一個重要的轉折點,這個轉折對企業業務模式帶來了衝擊,固然也給企業的信息中心部門帶來了挑戰:如何構建IT系統架構更好地知足互聯網時代下企業業務發展的須要。阿里巴巴的共享服務理念以及企業級互聯網架構建設的思路,給這些企業帶來了很多新的思路,這也是我最終決定寫這本書的最主要緣由。

本書從阿里巴巴啓動中臺戰略提及,詳細闡述了共享服務理念給企業業務發展帶來的業務價值。接着會分享阿里巴巴在建設共享服務體系時如何進行技術框架的選擇,哪些重要的技術平臺支撐起了共享服務體系,這也是迄今爲止對阿里巴巴集團中間件體系對外最全面系統的介紹。除了技術層面以外,本書還分享了阿里巴巴內部的一些經驗和實踐,如組織的架構和體制如何更好地支持共享服務體系的持續發展。

image.png

十一、盡在雙11:阿里巴巴技術演進與超越

從 2009 年淘寶商城起,雙 11 已歷經八年。每一年的雙 11 既是當年的結束,又是走向將來的起點。技術的突破創新,商業模式的更替交互,推進着雙 11 邁步向前。

《盡在雙11——阿里巴巴技術演進與超越》是迄今惟一由阿里巴巴集團官方出品、全面闡述雙11八年以來在技術和商業上演進和創新曆程的書籍。內容涵蓋在雙11背景下阿里技術架構八年來的演進,如何確保穩定性這條雙 11 生命線的安全和可靠,技術和商業交織發展的歷程,無線和互動的持續創新與突破,以及對商家的賦能和生態的促進與繁榮。

image.png

十二、大型網站系統與Java中間件實踐

本書圍繞大型網站和支撐大型網站架構的Java中間件的實踐展開介紹。從分佈式系統的知識切入,讓讀者對分佈式系統有基本的瞭解;而後介紹大型網站隨着數據量、訪問量增加而發生的架構變遷;接着講述構建Java中間件的相關知識;以後的幾章都是根據筆者的經驗來介紹支撐大型網站架構的Java中間件系統的設計和實踐。

但願讀者經過本書能夠了解大型網站架構變遷過程當中的較爲通用的問題和解法,並瞭解構建支撐大型網站的Java中間件的實踐經驗。對於有必定網站開發、設計經驗,並想了解大型網站架構和支撐這種架構的系統的開發、測試等的相關工程人員,本書有很大的參考意義;對於沒有網站開發設計經驗的人員,經過本書也能宏觀瞭解大型網站的架構及相關問題的解決思路和方案。

image.png

1三、架構探險—從零開始寫Java Web框架

本書首先從一個簡單的Web應用開始,讓讀者學會如何使用IDEA、Maven、Git等開發工具搭建Java Web應用;接着經過一個簡單的應用場景,爲該 Web 應用添加若干業務功能,從需求分析與系統設計開始,帶領讀者動手完成該Web應用,完善相關細節,並對已有代碼進行優化;而後基於傳統Servlet框架搭建一款輕量級Java Web框架,一切都是從零開始,逐個實現類加載器、Bean 容器、IoC框架、MVC框架,所涉及的代碼也是整個框架的核心基礎。爲了使框架具有AOP特性,從代理技術講到AOP技術,從ThreadLocal技術講到事務控制技術。最後對框架進行優化與擴展,經過對現有框架的優化,使其能夠提供更加完備的功能,並以擴展 Web 服務插件與安全控制插件爲例,教會讀者如何設計一款可擴展的Web應用框架。

image.png

1四、架構探險:從零開始寫分佈式服務框架

隨着微服務的流行,支撐微服務的分佈式服務框架成爲你們優先發展的重點。服務化的基本原理掌握起來相對比較容易,可是要從零構建一個分佈式服務框架卻比較困難,涉及通訊、線程併發、服務調度等。本書詳細講解了構建服務框架所需的各類技術及框架選型,手把手教初學者搭建一套完整的分佈式服務框架,若是你想掌握分佈式服務框架底層的技術細節,本身開發一套適合本公司和領域的服務框架,本書是一個很是不錯的選擇!

image.png

1五、軟件架構師的12項修煉

本書將3大方面的軟技能分爲12項:關係技能包含文雅的舉止(在任何環境下都能與人文雅相處的能力)、溝通(與人有效交互的能力)、協商(將事情辦成的能力)、領導力(經過施加影響力將事情辦成的能力)和政治(「政治場合」與人交互的能力)等5項;我的技能包含透明化(使自我、團隊關係和項目透明化的能力)、激情(激發和保護激情的能力)和語境切換(將注意力迅速切換到新語境並保持專一的能力)等3項;商務技能包括商務知識(讀懂商務語言的能力和了解產品與顧客的能力)、創新(如何經過學習和思考來創新的能力)、實用主義(抓住關鍵問題的能力)、認知(認知目標、戰略及合做夥伴的能力)等4項。

本書不只幫助軟件開發人員系統地學習如何修煉這12項軟技能,並且還能讓他們進一步理解軟件架構師的角色和本質,使他們最終突破技術的「天花板」,成爲一名合格的軟件架構師。

image.png

推薦閱讀

乾貨:Spring Boot & Cloud 最強技術教程

工具:推薦一款在線創做流程圖、思惟導圖軟件

分享Java乾貨,高併發編程,熱門技術教程,微服務及分佈式技術,架構設計,區塊鏈技術,人工智能,大數據,Java面試題,以及前沿熱門資訊等。
image
相關文章
相關標籤/搜索