最近一件有趣的事情是,據(jù)說(shuō)騰訊的財(cái)付通在招聘 Java 方面的高手,"參與系統(tǒng)架構(gòu)選型",要把底層架構(gòu)從 C/C++ 遷移到 Java 架構(gòu)上來(lái)。另外,百付寶的后臺(tái)技術(shù)據(jù)說(shuō)也是基于 C++ 的(最開(kāi)始的時(shí)候只是一兩個(gè)人寫(xiě)核心代碼)。我相信,現(xiàn)在百付寶或許規(guī)模還比較小,總有一天,也要面臨向 Java 的遷移。這和阿姆達(dá)爾定律有點(diǎn)類(lèi)似,要得到更大的計(jì)算能力,就要盡量減少整個(gè)系統(tǒng)中的非并行的環(huán)節(jié)。只是一兩個(gè)人能搞定的地方,再加入更多的開(kāi)發(fā)人員也是無(wú)濟(jì)于事的,除非,改變協(xié)作的模式。
去年接觸到的一些國(guó)內(nèi)的電子商務(wù)公司,有些已經(jīng)在進(jìn)行技術(shù)架構(gòu)上的變遷,當(dāng)然,多數(shù)是從 Windows 平臺(tái)遷移到 LAMP 平臺(tái),究其原因,也無(wú)非是成本與效率,而后者,更為大家所看重。當(dāng)然,也有一些頑固派,比如京東,仍然固守原來(lái)的手工作坊技術(shù)模式。
如果單兵作戰(zhàn)的話,很多程序高手會(huì)說(shuō),"用什么語(yǔ)言都是無(wú)所謂的"。但是如果是團(tuán)隊(duì)協(xié)作開(kāi)發(fā)的話,用什么語(yǔ)言,影響則是不一樣的。對(duì)于電子商務(wù)網(wǎng)站來(lái)說(shuō),語(yǔ)言的選擇意味著不同的架構(gòu)路線、不同的開(kāi)發(fā)框架、不同的測(cè)試框架、不同的部署流程,最后更為主要的是不同的開(kāi)發(fā)效率,意味著可以把更多的開(kāi)發(fā)資源并入到當(dāng)前的環(huán)節(jié)中。
事實(shí)上,對(duì)于一個(gè)高速發(fā)展中的網(wǎng)站,每隔18 或 36 個(gè)月,幾乎總要有一次架構(gòu)上變革的陣痛。沒(méi)有這種變革的勇氣,意味著以后也不會(huì)有人敢做這個(gè)嘗試。沒(méi)有這種陣痛,就不會(huì)有成長(zhǎng)。
變化的節(jié)奏最后影響一切。編程語(yǔ)言的選擇并非無(wú)關(guān)緊要,短期看來(lái)似乎影響不大,從長(zhǎng)期來(lái)看,決定最終的競(jìng)爭(zhēng)結(jié)果。這就是我要說(shuō)的。