從1 億到50 億的技術(shù)之路 從2009 年到2016 年,筆者非常幸運(yùn)地經(jīng)歷了網(wǎng)站PV 從1 億到50 億的飛速發(fā)展歷程,在此過程中積累了一些大流量高并發(fā)網(wǎng)站架構(gòu)設(shè)計(jì)和優(yōu)化的經(jīng)驗(yàn)。從技術(shù)發(fā)展來看,筆者經(jīng)歷了Web 應(yīng)用系統(tǒng)從分布式、無線多端、中臺(tái)到國(guó)際化的改造;在解決大流量問題的方向上,積累了很多從端的優(yōu)化到管道到服務(wù)端甚至到基礎(chǔ)環(huán)境優(yōu)化的經(jīng)驗(yàn)?,F(xiàn)在您手頭這本書所介紹的內(nèi)容,大部分是筆者看到、學(xué)到的,是親身參與和實(shí)踐的經(jīng)驗(yàn)。 本書要表達(dá)的內(nèi)容并不是簡(jiǎn)單羅列所做過的事情,而主要是幫助讀者了解當(dāng)網(wǎng)站遇到類似問題時(shí),應(yīng)如何思考不同的解決思路、為什么要這樣做、如何做出最終的方案選擇……其實(shí)每種架構(gòu)的選擇必然有它專屬的現(xiàn)實(shí)場(chǎng)景,因此本書涉及的這些話題也不一定就是最完美的解決方案。但,我希望本書的分享能啟發(fā)大家在解決類似問題時(shí)的思考和判斷。 為什么值得推薦 羅馬不是一天建成的,能夠支撐億級(jí)交易量的大型網(wǎng)站也不是一蹴而就的。作者以一名親歷者的身份,闡述了一個(gè)大型網(wǎng)站在數(shù)年時(shí)間內(nèi)從雛形成長(zhǎng)為巨人時(shí)所經(jīng)歷的技術(shù)選型思考、方案選擇,以及遇到的眾多性能瓶頸和優(yōu)化方案。 全書可分成上下兩篇。上篇主要介紹整個(gè)網(wǎng)站由于業(yè)務(wù)發(fā)展所經(jīng)歷的幾次主要的架構(gòu)演進(jìn),包括從PHP 到Java 的改造、分布式改造、無線化改造、中臺(tái)的改造、國(guó)際化改造。下篇主要介紹如何從不同的層次解決整個(gè)網(wǎng)站在大流量情況下遇到的性能瓶頸,包括端和管道的優(yōu)化、應(yīng)用層代碼級(jí)優(yōu)化、應(yīng)用架構(gòu)的優(yōu)化、端到端的全鏈路優(yōu)化。最后介紹做架構(gòu)和性能優(yōu)化的過程中必須面對(duì)的穩(wěn)定性問題——如何體系化地解決網(wǎng)站的穩(wěn)定性,是非常關(guān)鍵的。 書中提供的經(jīng)驗(yàn)教訓(xùn)、優(yōu)化思路,對(duì)于相關(guān)從業(yè)人員而言,均是獨(dú)一無二的寶貴參考。 作者簡(jiǎn)介 許令波(君山),2009年加入淘寶,一直關(guān)注性能優(yōu)化領(lǐng)域,經(jīng)歷了淘寶PV從1億到10億的發(fā)展歷程,參與了淘寶高訪問量Web系統(tǒng)模板引擎的改造、靜態(tài)化、無線化、CDN等優(yōu)化改造項(xiàng)目。先后研究過分布式數(shù)據(jù)庫Cassandra系統(tǒng)、Tomcat、Jetty等系統(tǒng)的源碼。一直參與淘寶訪問量高的系統(tǒng)頁面詳情系統(tǒng)的優(yōu)化工作,設(shè)計(jì)并實(shí)現(xiàn)了sketch模板引擎、MVC框架Feiba等,將服務(wù)端性能提升近50%左右;所在的性能優(yōu)化小組一直在做詳情的前端優(yōu)化,將詳情頁的首屏展示時(shí)間縮短為1s之內(nèi)。著有技術(shù)暢銷書《深入分析Java Web技術(shù)內(nèi)幕(修訂版)》一書。 大咖推薦 君山經(jīng)歷了淘寶網(wǎng)發(fā)展速度和架構(gòu)變化最快的時(shí)代,這是一個(gè)機(jī)會(huì)和挑戰(zhàn)并存的時(shí)代,許許多多無法用常理理解的需求不斷涌現(xiàn),許許多多從未遇見過的問題橫在面前,許許多多新的創(chuàng)新的解法橫空出世!君山把傳統(tǒng)的軟件工程開發(fā)理念和新機(jī)遇下的技術(shù)創(chuàng)新相結(jié)合,在性能優(yōu)化領(lǐng)域不斷創(chuàng)新:小到字節(jié)碼層面的優(yōu)化、大到架構(gòu)上的重建——他的探索工作在淘寶網(wǎng)的技術(shù)發(fā)展史留下了痕跡。 君山做事情有幾個(gè)特點(diǎn):一是能把技術(shù)和業(yè)務(wù)相結(jié)合,在處理業(yè)務(wù)需求和問題時(shí)輕車熟路,在處理完業(yè)務(wù)需求的同時(shí)還會(huì)帶來技術(shù)上的創(chuàng)新;二是善于推動(dòng)技術(shù)創(chuàng)新落地,用自己的實(shí)踐詮釋了“創(chuàng)新只有被人使用、在業(yè)界形成潮流才算是真正的創(chuàng)新”這句話;三是善于總結(jié)思考,他每次都把技術(shù)和業(yè)務(wù)上遇到的問題和解法總結(jié)下來,并樂于分享,讓團(tuán)隊(duì)共同成長(zhǎng)! ——阿里巴巴研究員 小邪
做技術(shù)做到后期才會(huì)發(fā)現(xiàn)寫代碼并不是全部。隨著業(yè)務(wù)的快速迭代,對(duì)系統(tǒng)的架構(gòu)演進(jìn)和相關(guān)技術(shù)的權(quán)衡會(huì)變得越來越重,在不同的階段會(huì)有不同的取舍。特別是大型系統(tǒng),除了要考慮技術(shù),還要考慮相匹配的組織架構(gòu)、工程文化等因素——這些挑戰(zhàn)是很難通過親歷來獲取的,畢竟成功的大型系統(tǒng)不算太多。 作者曾是淘寶網(wǎng)一線的技術(shù)專家,親身經(jīng)歷了淘寶網(wǎng)業(yè)務(wù)飛速增長(zhǎng)的過程,并將其中的經(jīng)驗(yàn)和學(xué)習(xí)的過程記錄下來,完整地為我們展現(xiàn)了一個(gè)初級(jí)系統(tǒng)在演化成一個(gè)全球、分布式的系統(tǒng)的過程中,從語言選擇、分布式框架改造、平臺(tái)化演進(jìn)、系統(tǒng)優(yōu)化到穩(wěn)定性建設(shè)等關(guān)鍵過程的思考,內(nèi)容翔實(shí)可信。從這些最佳實(shí)踐中,技術(shù)點(diǎn)也許并不是最重要的,讀者可收獲多維度的啟發(fā)和共鳴,推薦閱讀! ——阿里云研究員 禇霸
一家偉大的互聯(lián)網(wǎng)企業(yè)一般都離不開高超技術(shù)的支撐,而高超技術(shù)的養(yǎng)成又離不開每天迎面而來的各種挑戰(zhàn)。本書作者有幸經(jīng)歷了淘寶網(wǎng)這些年的技術(shù)巨變,碰到了無數(shù)的問題,積攢了很多并發(fā)架構(gòu)設(shè)計(jì)和性能優(yōu)化的經(jīng)驗(yàn)。好的架構(gòu)是一個(gè)系統(tǒng)的根本,好的性能是一個(gè)系統(tǒng)穩(wěn)定運(yùn)行的保證,本書應(yīng)該可以給大家?guī)聿灰粯拥氖斋@。 ——PerfMa CEO 你假笨(寒泉子)
針對(duì)C端用戶的互聯(lián)網(wǎng)業(yè)務(wù)是爆發(fā)式的、井噴式的,其帶來的用戶流量壓力和對(duì)計(jì)算能力的要求也是非常驚人的,如何利用廉價(jià)的架構(gòu)設(shè)計(jì)來部署分布式服務(wù)以應(yīng)對(duì)億級(jí)流量的場(chǎng)景是個(gè)非常嚴(yán)峻的問題?!洞笮途W(wǎng)站技術(shù)架構(gòu)演進(jìn)與性能優(yōu)化》一書講解了高可用架構(gòu)演化的進(jìn)程,并提供了互聯(lián)網(wǎng)架構(gòu)性能優(yōu)化的方法。正所謂互聯(lián)網(wǎng)技術(shù)唯“快”而不破——解決了性能問題,其他問題也就迎刃而解。如果你的業(yè)務(wù)正處于流量并發(fā)暴增與系統(tǒng)架構(gòu)變革的十字路口,那么本書恰好就是你的菜。這是一本關(guān)于互聯(lián)網(wǎng)高并發(fā)架構(gòu)設(shè)計(jì)的優(yōu)秀書籍,它從各角度剖析系統(tǒng)設(shè)計(jì)的演化與優(yōu)化,循序漸進(jìn)地將一系列復(fù)雜問題闡述得清晰、簡(jiǎn)單、易懂,是一本理論與實(shí)踐相結(jié)合的實(shí)用書籍。 ——《分布式服務(wù)架構(gòu):原理、設(shè)計(jì)與實(shí)戰(zhàn)》、《可伸縮服務(wù)架構(gòu):框架與中間件》作者李艷鵬
對(duì)于一個(gè)高并發(fā)大流量網(wǎng)站的架構(gòu)師而言,你的系統(tǒng)到底能夠承受多高的并發(fā)、多大的流量,只有在你的系統(tǒng)經(jīng)歷了更高的并發(fā)、更大的流量以后才能知道。事前再多的設(shè)計(jì)、評(píng)審、測(cè)試、預(yù)演也只能讓你相信,而不能讓你知道。淘寶網(wǎng)作為全球最大的電子商務(wù)網(wǎng)站,每年的雙十一都會(huì)承受這個(gè)星球上可能是最大的并發(fā)訪問壓力,那么淘寶的技術(shù)人員遇到了哪些挑戰(zhàn)?做了哪些工作?感謝這本《大型網(wǎng)站技術(shù)架構(gòu)演進(jìn)與性能優(yōu)化》,讓我們一窺究竟。 ——《大型網(wǎng)站技術(shù)架構(gòu):核心原理與案例分析》作者李智慧
君山老師曾多次出席技術(shù)大會(huì)SDCC擔(dān)任講師及出品人,為技術(shù)總監(jiān)、架構(gòu)師等參會(huì)者帶去了很多干貨實(shí)料的分享。實(shí)踐出真知,任何脫離實(shí)際工作的討論無疑在浪費(fèi)寶貴的時(shí)間成本,作者在淘寶網(wǎng)經(jīng)歷了Web應(yīng)用系統(tǒng)從分布式、無線多端、中臺(tái)以及到國(guó)際化的改造;在解決大流量問題的方向上,積累了很多從端的優(yōu)化到管道到服務(wù)端甚至到基礎(chǔ)環(huán)境優(yōu)化的經(jīng)驗(yàn),這些助力他真正成為我們技術(shù)社區(qū)的明星專家,相信此書肯定會(huì)給廣大的技術(shù)開發(fā)者帶去最為一線的知識(shí)和成長(zhǎng)。 ——CSDN主編 錢曙光 |
|