- 授課品牌:
武漢達(dá)內(nèi)教育
- 機(jī)構(gòu)級(jí)別:代理會(huì)員
- 信譽(yù)等級(jí):
學(xué)校評(píng)價(jià)(我要提問/點(diǎn)評(píng))
- 學(xué)校被點(diǎn)評(píng):0 次
- 好評(píng)(0%)
- 中評(píng)(0%)
- 差評(píng)(0%)
資料認(rèn)證
未通過身份證認(rèn)證
未通過辦學(xué)許可認(rèn)證
- 學(xué)校瀏覽人次:次
- 加盟時(shí)間:2021年04月16日
簡(jiǎn)單的Java性能優(yōu)化方法
你是否正打算優(yōu)化hashCode()方法?是否想要繞開正則表達(dá)式?Lukas Eder介紹了很多簡(jiǎn)單方便的性能優(yōu)化小貼士以及擴(kuò)展程序性能的技巧。
最近“全網(wǎng)域(Web Scale)”一詞被炒得火熱,人們也正在通過擴(kuò)展他們的應(yīng)用程序架構(gòu)來使他們的系統(tǒng)變得更加“全網(wǎng)域”。但是究竟什么是全網(wǎng)域?或者說如何確保全網(wǎng)域?
擴(kuò)展的不同方面
全網(wǎng)域被炒作的最多的是擴(kuò)展負(fù)載(Scaling load),比如支持單個(gè)用戶訪問的系統(tǒng)也可以支持10 個(gè)、100個(gè)、甚至100萬個(gè)用戶訪問。在理想情況下,我們的系統(tǒng)應(yīng)該保持盡可能的“無狀態(tài)化(stateless)”。即使必須存在狀態(tài),也可以在網(wǎng)絡(luò)的不同處理終端上轉(zhuǎn)化并進(jìn)行傳輸。當(dāng)負(fù)載成為瓶頸時(shí)候,可能就不會(huì)出現(xiàn)延遲。所以對(duì)于單個(gè)請(qǐng)求來說,耗費(fèi)50到100毫秒也是可以接受的。這就是所謂的橫向擴(kuò)展(Scaling out)。
擴(kuò)展在全網(wǎng)域優(yōu)化中的表現(xiàn)則完全不同,比如確保成功處理一條數(shù)據(jù)的算法也可成功處理10條、100條甚至100萬條數(shù)據(jù)。無論這種度量類型是是否可行,事件復(fù)雜度(大O符號(hào))是最佳描述。延遲是性能擴(kuò)展殺手。你會(huì)想盡辦法將所有的運(yùn)算處理在同一臺(tái)機(jī)器上進(jìn)行。這就是所謂的縱向擴(kuò)展(Scaling up)。
如果天上能掉餡餅的話(當(dāng)然這是不可能的),我們或許能把橫向擴(kuò)展和縱向擴(kuò)展組合起來。