什么是設(shè)計(jì)模式? Christopher Alexander 說(shuō)過(guò):“每一個(gè)模式描述了一個(gè)在我們周圍不斷重復(fù)發(fā)生的問(wèn)題,以及該問(wèn)題的解決方案的核心。這樣,你就能一次又一次地使...
什么是設(shè)計(jì)模式? Christopher Alexander 說(shuō)過(guò):“每一個(gè)模式描述了一個(gè)在我們周圍不斷重復(fù)發(fā)生的問(wèn)題,以及該問(wèn)題的解決方案的核心。這樣,你就能一次又一次地使...
背景知識(shí) 同步、異步、阻塞、非阻塞 首先,這幾個(gè)概念非常容易搞混淆,但NIO中又有涉及,所以總結(jié)一下。 同步:API調(diào)用返回時(shí)調(diào)用者就知道操作的結(jié)果如何了(實(shí)際讀取/寫入了多...
對(duì)于瀏覽器緩存,相信很多開(kāi)發(fā)者對(duì)它真的是又愛(ài)又恨。一方面極大地提升了用戶體驗(yàn),而另一方面有時(shí)會(huì)因?yàn)樽x取了緩存而展示了“錯(cuò)誤”的東西,而在開(kāi)發(fā)過(guò)程中千方百計(jì)地想把緩存禁掉。那么...
現(xiàn)象 應(yīng)用系統(tǒng)中的關(guān)鍵服務(wù)絕大部分都會(huì)是對(duì)數(shù)據(jù)庫(kù)的依賴。 當(dāng)多個(gè)進(jìn)程同時(shí)操作同一個(gè)數(shù)據(jù),會(huì)產(chǎn)生資源爭(zhēng)搶,數(shù)據(jù)一致性的問(wèn)題。 如果只有一個(gè)數(shù)據(jù)庫(kù)服務(wù)器,數(shù)據(jù)一致性問(wèn)題也就不存在...
前言 由于歷史原因,集中式架構(gòu)多用于傳統(tǒng)銀行、電信等行業(yè)。主機(jī)資源集中在大型主機(jī)或小型機(jī)上。集中式架構(gòu)下,包括操作系統(tǒng),中間件,數(shù)據(jù)庫(kù)等“基礎(chǔ)軟件” 均為閉源商用系統(tǒng)。集中式...
前言 不少在傳統(tǒng)行業(yè)摸爬滾打的程序員越來(lái)越焦慮了,有些甚至睡不著覺(jué)。為什么?傳統(tǒng)行業(yè)的程序員們每天進(jìn)行的都是業(yè)務(wù)代碼的編寫,接觸不到更新更好的技術(shù);公司的效益并不好,如未達(dá)到...
引言 幾乎每個(gè)面試的程序員都會(huì)碰到Spring相關(guān)的面試問(wèn)題,或淺或深。你都是如何回答面試官的問(wèn)題的?——我不知道,我一般會(huì)通過(guò)手寫一個(gè)Spring來(lái)加深自己的印象。 目標(biāo) ...
前言 程序員一門心思鉆研技術(shù)其實(shí)是一件很蠢的事情。 因?yàn)榇蟛糠秩瞬⒉皇悄?%的天才,也完全沒(méi)辦法做到十年如一日地鉆研技術(shù),至于光靠興趣驅(qū)動(dòng),未免太過(guò)理想。 如何解決 那么,如...
前言 為什么需要RPC,而不是簡(jiǎn)單的HTTP接口? 剛開(kāi)始還是菜鳥(niǎo)的時(shí)候,時(shí)常把RPC和HTTP搞混淆,本身概念還沒(méi)理解清楚,心里就浮躁的不行,導(dǎo)致鬧出了不少笑話。 什么是R...
為什么是kafka? 在我們大量使用分布式數(shù)據(jù)庫(kù)、分布式計(jì)算集群的時(shí)候,是否會(huì)遇到這樣的一些問(wèn)題: 我們想分析下用戶行為(pageviews),以便我們?cè)O(shè)計(jì)出更好的廣告位我想...
前言 今天是1024程序員節(jié),中國(guó)500w+的程序員今天可以享受一天專屬的節(jié)日,網(wǎng)絡(luò)上也有各種慶祝方式: 一些公司祭出了“程序員鼓勵(lì)師” 一些公司給程序員放了個(gè)“假” 還有公...
前言 大家應(yīng)該知道AOP編程首先要選擇它感興趣的連接點(diǎn)----即切入點(diǎn)(Point cut),那么,AOP能對(duì)切入點(diǎn)做什么樣的編程呢? 我們先將代理模式下的某個(gè)連接點(diǎn)細(xì)化,你...
引言 ArrayList,LinkedList,Vector,CopyOnWriteArrayList 底層實(shí)現(xiàn)原理和四個(gè)集合的區(qū)別是什么?為什么工作中會(huì)常用ArrayLis...
前言 有多少人在使用Spring框架時(shí),很多時(shí)候不知道或者忽視了多線程的問(wèn)題? ??因?yàn)閷懗绦驎r(shí),或做單元測(cè)試時(shí),很難有機(jī)會(huì)碰到多線程的問(wèn)題,因?yàn)闆](méi)有那么容易模擬多線程測(cè)試的...
前言 ??如果說(shuō)Spring最核心的東西是什么,那就非Beans組件莫屬了,Bean對(duì)于Spring的意義就象OOP對(duì)于Java的意義一樣。 ??今天要講的是Spring中的...
前言 做技術(shù)的,一定不能放棄技術(shù)。在精進(jìn)技術(shù)的同時(shí)完善其他方面的能力,十年如一日。不忘初心,方得始終。 正文 本文是看到阿里巴巴系統(tǒng)架構(gòu)師黃勇的采訪記錄有感而發(fā),如有侵權(quán),請(qǐng)...