黄色网址大全免费-黄色网址你懂得-黄色网址你懂的-黄色网址有那些-免费超爽视频-免费大片黄国产在线观看

專(zhuān)注Java教育14年 全國(guó)咨詢(xún)/投訴熱線(xiàn):400-8080-105
動(dòng)力節(jié)點(diǎn)LOGO圖
始于2009,口口相傳的Java黃埔軍校
首頁(yè) 學(xué)習(xí)攻略 Java培訓(xùn) Java架構(gòu)師培訓(xùn)那些內(nèi)容,大家應(yīng)有所了解

Java架構(gòu)師培訓(xùn)那些內(nèi)容,大家應(yīng)有所了解

更新時(shí)間:2019-10-12 10:03:26 來(lái)源:動(dòng)力節(jié)點(diǎn) 瀏覽2379次



  大部分人對(duì)于BAT的技術(shù)有一種莫名的崇拜感,覺(jué)得只有非常牛逼和天才才能做出現(xiàn)在的這些系統(tǒng),但經(jīng)過(guò)前面兩篇博文的分析,我們可以看到其實(shí)并沒(méi)有什么神秘的力量和魔力融合在技術(shù)里面,而是業(yè)務(wù)的不斷發(fā)展推動(dòng)技術(shù)的不斷發(fā)展,一步一個(gè)腳印,持續(xù)幾年甚至十幾年的發(fā)展,才能達(dá)到當(dāng)前技術(shù)復(fù)雜度、先進(jìn)性、厲害度。


  拋開(kāi)BAT各自差異很大的業(yè)務(wù),站在技術(shù)的角度來(lái)看,其實(shí)BAT的技術(shù)架構(gòu)基本是一樣的,再將視角放大,你會(huì)發(fā)現(xiàn)整個(gè)互聯(lián)網(wǎng)行業(yè)的技術(shù)發(fā)展,最后都是殊途同歸。


  如果你正處于一個(gè)創(chuàng)業(yè)公司,或者正在成為另一個(gè)BAT的路上而拼搏,那么深入理解這種技術(shù)模式(或者叫技術(shù)結(jié)構(gòu)、技術(shù)架構(gòu)),對(duì)于自己的發(fā)展、公司的發(fā)展都大有裨益,你將不會(huì)再迷茫,你也不再會(huì)心里打鼓,CTO將對(duì)你刮目相看,CEO將奉你為神明:)

騰訊高級(jí)架構(gòu)師力推的Java技術(shù)架構(gòu),學(xué)習(xí)學(xué)習(xí)

  接下來(lái)小編將逐一介紹每個(gè)技術(shù)點(diǎn),包括為什么會(huì)有這些技術(shù)點(diǎn),這些技術(shù)點(diǎn)的主要場(chǎng)景是什么,這些技術(shù)點(diǎn)將如何發(fā)展。


  SQL


  即關(guān)系數(shù)據(jù)。前幾年NoSQL火了一陣子,很多人都理解為NoSQL是完全拋棄關(guān)系數(shù)據(jù),全部采用非關(guān)系型數(shù)據(jù),但事實(shí)經(jīng)過(guò)幾年的試驗(yàn)后,大家發(fā)現(xiàn)關(guān)系數(shù)據(jù)不可能完全拋棄,NoSQL不是NoSQL,而是NotOnlySQL,即NoSQL是SQL的補(bǔ)充。


  所以互聯(lián)網(wǎng)行業(yè)也必須依賴(lài)關(guān)系數(shù)據(jù),考慮到Oracle太貴,還需要專(zhuān)人維護(hù),一般情況下互聯(lián)網(wǎng)行業(yè)都是用MySQL、PostgreSQL這類(lèi)開(kāi)源數(shù)據(jù)庫(kù)。這類(lèi)數(shù)據(jù)庫(kù)的特點(diǎn)是開(kāi)源免費(fèi),拿來(lái)就用;但缺點(diǎn)是性能相比商業(yè)數(shù)據(jù)庫(kù)要差較多。隨著互聯(lián)網(wǎng)業(yè)務(wù)的發(fā)展,性能要求越來(lái)越高,必然要面對(duì)一個(gè)問(wèn)題:將數(shù)據(jù)拆分到多個(gè)數(shù)據(jù)庫(kù)實(shí)例才能滿(mǎn)足業(yè)務(wù)的性能需求(其實(shí)Oracle也一樣,只是時(shí)間早晚的問(wèn)題)。


  數(shù)據(jù)庫(kù)拆分滿(mǎn)足了性能的要求,但帶來(lái)了復(fù)雜度的問(wèn)題:數(shù)據(jù)如何拆分、數(shù)據(jù)如何組合。這個(gè)復(fù)雜度的問(wèn)題解決起來(lái)并不是那么容易,如果每個(gè)業(yè)務(wù)都去實(shí)現(xiàn)一遍,重復(fù)造輪子將導(dǎo)致投入浪費(fèi)、效率降低,業(yè)務(wù)開(kāi)發(fā)想快都快不起來(lái)。


  所以互聯(lián)網(wǎng)公司流行的做法是發(fā)展到一定階段后,就會(huì)將這部分功能獨(dú)立成中間件,例如百度的DBProxy、淘寶的TDDL。不過(guò)這部分的要求很高,將分庫(kù)分表做到自動(dòng)化和平臺(tái)化,不是一件容易的事情,所以一般是很牛逼的公司才會(huì)做。典型的有:百度的DBProxy、淘寶TDDL。


  NoSQL


  NoSQL首先體現(xiàn)在數(shù)據(jù)結(jié)構(gòu)上與傳統(tǒng)的SQL的不同,例如典型的Memcached的Key-value結(jié)構(gòu)、Redis的復(fù)雜數(shù)據(jù)結(jié)構(gòu)、MongoDB的文檔數(shù)據(jù)結(jié)構(gòu);其次NoSQL無(wú)一例外的都會(huì)將性能作為自己的一大買(mǎi)點(diǎn)。


  NoSQL的這兩個(gè)特點(diǎn)很好的彌補(bǔ)了關(guān)系數(shù)據(jù)庫(kù)的不足,因此在互聯(lián)網(wǎng)行業(yè)NoSQL的應(yīng)用基本上是基礎(chǔ)要求,要是你聽(tīng)到一個(gè)號(hào)稱(chēng)自己是互聯(lián)網(wǎng)公司卻連NoSQL都沒(méi)用,那基本上可以判斷是掛羊頭賣(mài)狗肉類(lèi)型的。


  由于NoSQL方案一般都會(huì)自己本身就提供集群的功能,例如Memcached的一致性hash集群、Redis3.0的集群,因此NoSQL在剛開(kāi)始應(yīng)用的時(shí)候很方便,不像SQL分庫(kù)分表那么復(fù)雜。一般公司也不會(huì)在開(kāi)始的時(shí)候就考慮將NoSQL包裝成存儲(chǔ)平臺(tái),但如果公司發(fā)展很大,例如Memcached的節(jié)點(diǎn)有上千甚至幾千的時(shí)候,NoSQL集群就很有意義了:首先是集中管理能夠大大提升運(yùn)維效率;其次是集中管理可以大大提升資源利用效率,2000臺(tái)機(jī)器,如果利用率能提升10%,就是減少200臺(tái)機(jī)器,一年幾十萬(wàn)就節(jié)省出來(lái)了。


  所以,NoSQL發(fā)展到一定規(guī)模后,一般都是走集群路線(xiàn),當(dāng)然要發(fā)展到這個(gè)階段,一般也是很牛逼的公司才會(huì)這么做。


  典型的有:Twitter的Twemproxy,豆瓣的BeansDB、騰訊TTC。


  小文件存儲(chǔ)


  除了關(guān)系型的業(yè)務(wù)數(shù)據(jù)外,互聯(lián)網(wǎng)行業(yè)還有很多用于展示的數(shù)據(jù),例如淘寶的商品圖片、商品描述;Facebook的用戶(hù)圖片,新浪微博的一條微博內(nèi)容等等。這些數(shù)據(jù)具有3個(gè)典型特征:一是數(shù)據(jù)小,一般在1M一下;二是數(shù)量巨大,F(xiàn)acebook2013年就達(dá)到了每天上傳3.5億張的照片;三是訪(fǎng)問(wèn)量巨大,F(xiàn)acebook每天的訪(fǎng)問(wèn)量超過(guò)10億。


  由于互聯(lián)網(wǎng)行業(yè)基本上每個(gè)業(yè)務(wù)都會(huì)有大量的小數(shù)據(jù),如果每個(gè)業(yè)務(wù)都自己去考慮如何設(shè)計(jì)海量存儲(chǔ)和海量訪(fǎng)問(wèn),效率自然會(huì)低,重復(fù)造輪子,投入浪費(fèi),自然而然的想法就是將小文件存儲(chǔ)做成統(tǒng)一的和業(yè)務(wù)無(wú)關(guān)的平臺(tái)。


  和SQL和NoSQL不同的是,小文件存儲(chǔ)不一定需要公司或者業(yè)務(wù)規(guī)模很大,基本上可以認(rèn)為業(yè)務(wù)在起步階段就可以考慮做小文件統(tǒng)一存儲(chǔ)。得益于開(kāi)源運(yùn)動(dòng)的發(fā)展和最近幾年大數(shù)據(jù)的火爆,在開(kāi)源方案的基礎(chǔ)上封裝一個(gè)小文件存儲(chǔ)平臺(tái)并不是太難的事情。例如HBase、Hadoop、Hypertable、FastDFS等都可以作為小文件存儲(chǔ)的底層平臺(tái),只需要在這些開(kāi)源方案三再包裝一下基本上就可以用了。


  典型的有:淘寶的TFS、京東JFS、Facebook的Haystack。


  開(kāi)發(fā)框架


  在系列文章的第2篇《BAT解密:業(yè)務(wù)如何驅(qū)動(dòng)技術(shù)發(fā)展》中我們深入分析了互聯(lián)網(wǎng)業(yè)務(wù)發(fā)展的一個(gè)特點(diǎn):復(fù)雜性越來(lái)越高。復(fù)雜性增加的典型現(xiàn)象就是系統(tǒng)越來(lái)越多,不同的系統(tǒng)由不同的小組開(kāi)發(fā)。如果每個(gè)小組用不同的開(kāi)發(fā)框架和技術(shù),將會(huì)帶來(lái)很多問(wèn)題,典型的問(wèn)題有:


  技術(shù)人員之間沒(méi)有共同的技術(shù)語(yǔ)言,交流合作少


  每類(lèi)技術(shù)都需要投入大量的人力和資源和熟練精通


  不同團(tuán)隊(duì)之間人員無(wú)法快速流動(dòng),人力資源不能高效的利用


  所以,互聯(lián)網(wǎng)公司都會(huì)指定一個(gè)大的技術(shù)方向,然后使用統(tǒng)一的開(kāi)發(fā)框架,例如Java相關(guān)的開(kāi)發(fā)框架SSH、SpringMVC、Play、Ruby的RubyonRails、PHP的ThinkPHP、Python的Django等等。使用統(tǒng)一的開(kāi)發(fā)框架能夠解決上面提到的各種問(wèn)題,大大提升組織和團(tuán)隊(duì)的開(kāi)發(fā)效率。


  對(duì)于框架的選擇,有一個(gè)總的原則:優(yōu)選成熟的框架,避免盲目追逐新技術(shù)!為什么呢?


  首先,成熟的框架資料文檔齊備,各種坑基本上都有人踩過(guò)了,遇到問(wèn)題很容易通過(guò)搜索解決


  其次,成熟的框架受眾更廣,招聘時(shí)更加容易招聘到合適的人才


  第三,成熟的框架更加穩(wěn)定,不會(huì)出現(xiàn)大的變動(dòng),適合長(zhǎng)期發(fā)展


  以我親身經(jīng)歷的一個(gè)反例為例:我們使用了Play1作為Java開(kāi)發(fā)框架,因?yàn)樗禽p量級(jí)的Java開(kāi)發(fā)框架,但沒(méi)想到Play2直接改為Scala語(yǔ)言開(kāi)發(fā),Play1的架構(gòu)演進(jìn)停滯,而我們又不能切換為Play2,結(jié)果就導(dǎo)致只能一直用Play1,有新的需求只能自己開(kāi)發(fā)。


  服務(wù)器


  開(kāi)發(fā)框架只是負(fù)責(zé)完成業(yè)務(wù)功能的開(kāi)發(fā),真正能夠運(yùn)行起來(lái),給用戶(hù)提供服務(wù),還需要服務(wù)器配合。


  獨(dú)立開(kāi)發(fā)一個(gè)成熟的web服務(wù)器,成本非常高;且業(yè)界又有那么多成熟的開(kāi)源web服務(wù)器,所以互聯(lián)網(wǎng)行業(yè)基本上都是拿來(lái)主義,挑選一個(gè)流行的開(kāi)源服務(wù)器即可。牛逼一點(diǎn)的公司,可能會(huì)在開(kāi)源服務(wù)器的基礎(chǔ)上,結(jié)合自己的業(yè)務(wù)特點(diǎn)做二次開(kāi)發(fā),例如淘寶的Tengine,但一般公司基本上只需要將開(kāi)源服務(wù)器摸透,優(yōu)化一下參數(shù),調(diào)整一下配置就差不多了。


  選擇一個(gè)服務(wù)器主要和開(kāi)發(fā)語(yǔ)言相關(guān),例如:Java的有Tomcat、Jboss、Resin等,PHP/Python的用Nginx,當(dāng)然最保險(xiǎn)的就是用Apache了,什么語(yǔ)言都支持。


  有的人可能擔(dān)心Apache的性能之類(lèi)的問(wèn)題,其實(shí)不用過(guò)早擔(dān)心這個(gè),等到你的業(yè)務(wù)真的發(fā)展到Apache撐不住的時(shí)候再考慮切換也可以,那時(shí)候你有的是錢(qián),有的是人,有的是時(shí)間。


  容器


  容器是最近幾年年才開(kāi)始火起來(lái)的,其中以Docker為代表,在BAT級(jí)別的公司已經(jīng)有較多的應(yīng)用,例如騰訊:騰訊萬(wàn)臺(tái)規(guī)模的Docker應(yīng)用實(shí)踐;新浪微博:微博紅包:大規(guī)模Docker集群實(shí)踐經(jīng)驗(yàn)分享等等。


  傳統(tǒng)的虛擬化技術(shù)是虛擬機(jī),解決了跨平臺(tái)的問(wèn)題,但由于虛擬機(jī)太龐大,啟動(dòng)慢,運(yùn)行時(shí)太占資源,在互聯(lián)網(wǎng)行業(yè)并沒(méi)有大規(guī)模的應(yīng)用;而Docker的容器技術(shù),雖然沒(méi)有跨平臺(tái),但啟動(dòng)快,幾乎不占資源,推出后立刻就火起來(lái)了,預(yù)計(jì)Docker類(lèi)的容器技術(shù)將是技術(shù)發(fā)展的主流方向。


  千萬(wàn)不要以為Docker只是一個(gè)虛擬化或者容器技術(shù),它將在很大程度上改變我們目前的技術(shù)形勢(shì):


  運(yùn)維方式會(huì)發(fā)生革命性的變化:Docker啟動(dòng)快,幾乎不占資源,隨時(shí)啟動(dòng)和停止,基于Docker打造自動(dòng)化運(yùn)維、智能化運(yùn)維將成為主流方式


  設(shè)計(jì)模式會(huì)發(fā)生本質(zhì)化的變化:?jiǎn)?dòng)一個(gè)新的容器實(shí)例代價(jià)如此低,將鼓勵(lì)設(shè)計(jì)思路朝“微服務(wù)”的方向發(fā)展。


  例如一個(gè)傳統(tǒng)的網(wǎng)站包括登錄注冊(cè)、頁(yè)面訪(fǎng)問(wèn)、搜索等功能,沒(méi)有用容器的情況下,除非有特別大的訪(fǎng)問(wèn)量,否則這些功能開(kāi)始時(shí)都是集成在一個(gè)系統(tǒng)里面的;有了容器技術(shù)后,一開(kāi)始設(shè)計(jì)就可以將這些功能按照服務(wù)的方式設(shè)計(jì),避免后續(xù)訪(fǎng)問(wèn)量增大時(shí)又要重構(gòu)系統(tǒng)。


  如何學(xué)習(xí)呢?有沒(méi)有Java架構(gòu)師學(xué)習(xí)視頻教程?咨詢(xún)動(dòng)力節(jié)點(diǎn)官網(wǎng)在線(xiàn)老師:回復(fù)“Java架構(gòu)師資源


image.png

image.png


提交申請(qǐng)后,顧問(wèn)老師會(huì)電話(huà)與您溝通安排學(xué)習(xí)

  • 全國(guó)校區(qū) 2025-05-15 搶座中
  • 全國(guó)校區(qū) 2025-06-05 搶座中
  • 全國(guó)校區(qū) 2025-06-26 搶座中
免費(fèi)課程推薦 >>
技術(shù)文檔推薦 >>
主站蜘蛛池模板: 青青网在线视频 | 色天天综合色天天天天看大 | 三级黄色片免费 | 道日本一本草久 | 天天靠天天擦天天摸 | 一个人看的www片免费高清中文 | 日批在线视频 | 精品一区一区三区新区乱码 | 99re这里 | 动漫视频成人无h码在线观看 | 黄色免费网址在线观看 | 亚洲第一成年网站大全亚洲 | 99黄色网| 天堂免费在线视频 | 国产小视频你懂的 | 国产精品免费看 | 久久天天躁夜夜躁狠狠85麻豆 | 网站免费黄色 | 免费国产好深啊好涨好硬视频 | 亚洲一级毛片免费在线观看 | 国产精品手机视频一区二区 | 日韩三级黄色片 | 91在线欧美精品观看 | 欧洲一区 | 国产乱视频 | 色爽视频 | 欧美在线视频免费 | 456极品嫩模在线视频 | 在线观看www成人影院 | 日韩欧美在线精品 | 视频一区 国产 | 黄色一级片在线免费观看 | 18女人水真多免费高清毛片 | 中文字幕1区2区 | 福利社看片 | 9191精品国产费久久 | 免费网站黄色 | xxxxxx日本人免费 | 亚洲人成亚洲精品 | 免费一级国产生活片 | 欧美精品在欧美一区二区 |