分布式奸焙,集群瞎暑,微服務(wù),SOA概念解析与帆。

因?yàn)檫@兩天在啃一些理論知識(shí)了赌,而現(xiàn)在最火的微服務(wù),分布式玄糟,集群等等概念不可避免勿她。然而這些東西其實(shí)沒有一個(gè)明確的很容易理解的定義來解釋。也查閱了很多帖子阵翎,網(wǎng)站逢并,甚至問了群里的人,這三者 郭卫,經(jīng)常拿來一起說的砍聊,到底分別是什么?有什么區(qū)別和聯(lián)系贰军?
首先聲明文章中的觀點(diǎn)僅代表個(gè)人理解玻蝌。如果有意見或者別的看法歡迎留言或者私信,不喜勿噴。

微服務(wù)

首先從概念上講起灶伊,微服務(wù)是現(xiàn)在很流行的一個(gè)詞疆前。而且其實(shí)單獨(dú)講的話是很容易理解的寒跳,微就是小的意思聘萨。也就是小服務(wù)。舉個(gè)例子:微信有聊天的功能童太,有朋友圈的功能米辐,還有支付的功能。這里把功能用服務(wù)來理解:微信提供聊天的服務(wù)书释,提供查看和發(fā)表朋友圈的服務(wù)翘贮,還提供用戶綁定銀行卡支付或者收錢的服務(wù)。在傳統(tǒng)意義上爆惧,這個(gè)微信本身是一個(gè)服務(wù)狸页,但是如果我們用微服務(wù)來拆分,可以把微信這一個(gè)拆分成成一個(gè)個(gè)獨(dú)立的服務(wù)扯再。直接的表現(xiàn)是如果微信支付功能出問題了芍耘,暫時(shí)不能用了。但是并不影響聊天和朋友圈熄阻。這樣把一個(gè)完整的服務(wù)拆分成一個(gè)個(gè)單一的服務(wù)就算是微服務(wù)項(xiàng)目斋竞。因?yàn)槲沂莏ava開發(fā),所以用java來簡(jiǎn)單直觀的理解:就是一個(gè)project能搞定的項(xiàng)目拆分成多個(gè)project秃殉。拆分的基準(zhǔn):單一職責(zé)坝初、輕量級(jí)通信(HTTP)、獨(dú)立性并且進(jìn)程隔離钾军。
然后個(gè)人根據(jù)實(shí)際的理解就是沒有絕對(duì)正確或者錯(cuò)誤的拆分鳄袍,其實(shí)每次拆分服務(wù)對(duì)我來說都是一個(gè)很頭疼的問題。大概我學(xué)到和聽到的對(duì)上面基準(zhǔn)的通俗理解:

  • 服務(wù)的功能要單一吏恭。
  • 服務(wù)對(duì)應(yīng)的數(shù)據(jù)庫的表要明確而且最好只有一個(gè)左右主表拗小。
  • 服務(wù)要獨(dú)立(所謂獨(dú)立是此服務(wù)down了不影響別的服務(wù)的使用)。
    其實(shí)我覺得說這么多砸泛,主要還是服務(wù)的粒度問題十籍。

拿一個(gè)實(shí)際的例子做比喻(這個(gè)是當(dāng)時(shí)我們顧問給我講解的,在此借鑒一下):
58同城唇礁,其實(shí)他主要的就是一個(gè)信息的發(fā)布和瀏覽的功能勾栗,現(xiàn)在又加了一些類似論壇的功能。我們?nèi)绻鸱诸愃频姆?wù)盏筐,可以選擇一種是根據(jù)功能拆分围俘,也就是房產(chǎn)信息的發(fā)布和瀏覽是一個(gè)服務(wù)。招聘信息的發(fā)布和瀏覽是一個(gè)服務(wù)。論壇信息的發(fā)布和瀏覽是一個(gè)服務(wù)界牡。這種是現(xiàn)在最常用的拆分方式簿寂。如果58同城以后想增加新功能,比如說增加一個(gè)婚戀信息的發(fā)布和瀏覽宿亡,那么可以在不更改原代碼的基礎(chǔ)上直接添加功能常遂。這就是微服務(wù)的方便之處和流行的原因。不過這種方式的粒度是非常小的挽荠,一個(gè)58同城拆分成十幾個(gè)甚至幾十個(gè)服務(wù)克胳。
如果發(fā)布瀏覽各種信息只是你所做項(xiàng)目的功能之一,這么拆分可能沒必要又麻煩圈匆,可以換一種拆分方式了漠另。那就是按照動(dòng)作拆分红且,用戶發(fā)布修改各種消息是一個(gè)服務(wù)岩灭,用戶瀏覽各種消息是另一個(gè)服務(wù)。這么拆分雖然很奇怪而且理解不了(其實(shí)我個(gè)人也覺得奇怪玄柏,而且沒這么用過)纬傲,但是好處也是可見的满败。這樣你可能暫時(shí)無法發(fā)布各種消息,會(huì)提示你種種原因嘹锁。但是瀏覽起來是不受影響的葫录,而且發(fā)布對(duì)應(yīng)的是讀寫庫,而瀏覽是只讀领猾。這樣對(duì)數(shù)據(jù)庫的規(guī)劃也很明確而且可以提高性能米同。
以上的例子只是為了說明拆分的規(guī)則不是判斷題,有對(duì)錯(cuò)之分摔竿。而且一個(gè)辯論題面粮,只要你覺得合理,就可以考慮继低。而且不同的業(yè)務(wù)場(chǎng)景有不同的考慮點(diǎn)熬苍,這個(gè)沒辦法一一列舉或者給出正確答案,只能自己一點(diǎn)點(diǎn)推敲琢磨和辨證考慮袁翁。
總體來說柴底,微服務(wù)是一種架構(gòu)設(shè)計(jì)。

分布式

接著說分布式粱胜,其實(shí)我個(gè)人覺得也是見名知意柄驻,分布分布,分別部署焙压。分布式是一種系統(tǒng)部署方式鸿脓。拿java比喻:一個(gè)項(xiàng)目是一個(gè)jar或者war抑钟,只能部署在一個(gè)服務(wù)器上(不考慮集群部署)。所以說分布式的前提是微服務(wù)野哭≡谒或者說分布式屬于微服務(wù)。
其實(shí)分布式是一個(gè)必然的流程,我們做成微服務(wù)一方面是便于開發(fā)拨黔,便于擴(kuò)展蛔溃,但是我覺得便于提供更好的服務(wù)也是其中一個(gè)原因。
我們都知道12306是并發(fā)量最大的軟件(業(yè)內(nèi)一直這么說蓉驹,淘寶京東的雙11也比不上)城榛。我們想想一種情形揪利。一個(gè)買票的流程:

  • 搜索某兩地車票
  • 判斷有沒有車态兴,有沒有票
  • 某人選擇某車票(硬座,無座疟位,臥鋪瞻润,高鐵等)
  • 提交身份證購票(判斷身份證合法性)
  • 支付(支付寶,微信甜刻,銀行卡等)
    其實(shí)完整一套流程下來绍撞,哪怕用戶比較果斷干脆,也是要處理一會(huì)的得院。如果12306是部署在一臺(tái)服務(wù)器上就出現(xiàn)一種情況:登錄完畢的用戶和正在選票的用戶和提交身份信息的用戶和支付的用戶都在同時(shí)訪問這個(gè)服務(wù)器傻铣。這其中的龐大訪問量,無論能不能處理都沒必要這么處理祥绞!如果采用分布式非洲,假如說用以上步驟操作微服務(wù)拆分,那么也可以每個(gè)服務(wù)單獨(dú)部署一個(gè)服務(wù)器(我這里的拆分是有問題的蜕径,只不過我是為了突出分布式的好處两踏,不要在意拆分細(xì)節(jié))。這樣的話查詢車票的用戶是一個(gè)服務(wù)器兜喻,正在提交身份信息的用戶是一個(gè)服務(wù)器梦染,正在支付的用戶是一個(gè)服務(wù)器。我們就把用戶的訪問量分散到了不同的服務(wù)器中朴皆,相對(duì)而言對(duì)單個(gè)服務(wù)器的壓力都小很多了帕识。
    這個(gè)就叫做分布式,而他的用處就是分別部署遂铡,提高服務(wù)器承壓能力肮疗。
分布式設(shè)計(jì)架構(gòu)
分布式好處

其實(shí)我看了只想笑笑,說句mmp忧便。如果你把分布式的優(yōu)點(diǎn)理解成這三條族吻,你能告訴我微服務(wù)是干嘛的么帽借?單純的分布式,就是分別部署超歌!而說到分布式設(shè)計(jì)或者說到分布式系統(tǒng)架構(gòu)砍艾,才是包含了微服務(wù)拆分和分布式部署的一種完整的項(xiàng)目設(shè)計(jì)架構(gòu)。才有以上的優(yōu)點(diǎn)巍举。
我覺得不把這個(gè)概念單獨(dú)拿出來是讓很多人懵逼的問題脆荷。因?yàn)榫W(wǎng)上隨便一搜索分布式出來的都是分布式設(shè)計(jì)架構(gòu)。其實(shí)是有區(qū)別的吧懊悯?這個(gè)問題反正當(dāng)時(shí)是困擾我了蜓谋,因?yàn)槲耶?dāng)時(shí)理解微服務(wù)和分布式,字面意思都理解炭分,但是看了分布式架構(gòu)的概念后卻不能理解微服務(wù)包含分布式是為什么桃焕。所以我單獨(dú)列出來,因?yàn)榉謩e部署本身不會(huì)很多人講捧毛,所以可能默認(rèn)的提起分布式就是分布式系統(tǒng)观堂,分布式架構(gòu)啥的。但是請(qǐng)記住分布式這三個(gè)字本身只是分別部署的意思呀忧!
分布式系統(tǒng)以及分布式系統(tǒng)架構(gòu)的優(yōu)缺點(diǎn)
這個(gè)是我看到的講解分布式架構(gòu)優(yōu)點(diǎn)和缺點(diǎn)比較完整和容易理解的文章师痕,如果有興趣的同學(xué)可以點(diǎn)進(jìn)去看看。

集群

下一個(gè)概念而账,集群胰坟。其實(shí)這個(gè)概念百度百科上也有,說起來高大上而且多么多好泞辐。但是我覺得實(shí)際上java部署上的使用就是一個(gè)服務(wù)對(duì)應(yīng)多個(gè)節(jié)點(diǎn):通俗講笔横,A服務(wù)部署在1,2铛碑,3三個(gè)服務(wù)器上狠裹。通過一些算法,例如輪詢汽烦,權(quán)重輪詢涛菠,ip_hash等等方法,在訪問A服務(wù)的時(shí)候隨機(jī)訪問1.2.3服務(wù)器撇吞。這樣多人同時(shí)訪問可以把壓力均分(均不均分看負(fù)載均衡算法)到多個(gè)服務(wù)器俗冻,減輕單個(gè)服務(wù)器的壓力。而且還有一個(gè)好處就是如果1服務(wù)器down了牍颈,可以訪問2.3服務(wù)器迄薄,不會(huì)影響A服務(wù)的調(diào)用。
如果不這樣部署多個(gè)節(jié)點(diǎn)煮岁,單個(gè)服務(wù)器壓力大不說讥蔽,假如停個(gè)電斷個(gè)網(wǎng)啥的涣易,A服務(wù)就訪問不到了。所以說集群一方面也是為了高并發(fā)減壓的冶伞,和分布式有相同的作用新症。另一方面也是上一個(gè)保險(xiǎn)。就跟我們重要事情要早起响禽,可能定個(gè)手機(jī)鬧鐘徒爹,頂個(gè)鬧表的鬧鐘,最后還讓別人幾點(diǎn)幾點(diǎn)叫自己一樣芋类。就是多重保險(xiǎn)隆嗅。
集群的好處:

  1. 提高性能
  2. 降低成本
  3. 提高可擴(kuò)展性
  4. 增強(qiáng)可靠性

分類

  • 科學(xué)集群

科學(xué)集群是并行計(jì)算的基礎(chǔ)。通常侯繁,科學(xué)集群涉及為集群開發(fā)的并行應(yīng)用程序胖喳,以解決復(fù)雜的科學(xué)問題∥谆鳎科學(xué)集群對(duì)外就好像一個(gè)超級(jí)計(jì)算機(jī)禀晓,這種超級(jí)計(jì)算機(jī)內(nèi)部由十至上萬個(gè)獨(dú)立處理器組成,并且在公共消息傳遞層上進(jìn)行通信以運(yùn)行并行應(yīng)用程序坝锰。

  • 負(fù)載均衡集群

負(fù)載均衡集群為企業(yè)需求提供了更實(shí)用的系統(tǒng)。負(fù)載均衡集群使負(fù)載可以在計(jì)算機(jī)集群中盡可能平均地分?jǐn)偺幚碇馗丁X?fù)載通常包括應(yīng)用程序處理負(fù)載和網(wǎng)絡(luò)流量負(fù)載顷级。這樣的系統(tǒng)非常適合向使用同一組應(yīng)用程序的大量用戶提供服務(wù)。每個(gè)節(jié)點(diǎn)都可以承擔(dān)一定的處理負(fù)載确垫,并且可以實(shí)現(xiàn)處理負(fù)載在節(jié)點(diǎn)之間的動(dòng)態(tài)分配弓颈,以實(shí)現(xiàn)負(fù)載均衡。對(duì)于網(wǎng)絡(luò)流量負(fù)載,當(dāng)網(wǎng)絡(luò)服務(wù)程序接受了高入網(wǎng)流量删掀,以致無法迅速處理翔冀,這時(shí),網(wǎng)絡(luò)流量就會(huì)發(fā)送給在其它節(jié)點(diǎn)上運(yùn)行的網(wǎng)絡(luò)服務(wù)程序披泪。同時(shí)纤子,還可以根據(jù)每個(gè)節(jié)點(diǎn)上不同的可用資源或網(wǎng)絡(luò)的特殊環(huán)境來進(jìn)行優(yōu)化。與科學(xué)計(jì)算集群一樣款票,負(fù)載均衡集群也在多節(jié)點(diǎn)之間分發(fā)計(jì)算處理負(fù)載控硼。它們之間的最大區(qū)別在于缺少跨節(jié)點(diǎn)運(yùn)行的單并行程序。大多數(shù)情況下艾少,負(fù)載均衡集群中的每個(gè)節(jié)點(diǎn)都是運(yùn)行單獨(dú)軟件的獨(dú)立系統(tǒng)卡乾。

但是,不管是在節(jié)點(diǎn)之間進(jìn)行直接通信缚够,還是通過中央負(fù)載均衡服務(wù)器來控制每個(gè)節(jié)點(diǎn)的負(fù)載,在節(jié)點(diǎn)之間都有一種公共關(guān)系幔妨。通常鹦赎,使用特定的算法來分發(fā)該負(fù)載。

  • 高可用集群

當(dāng)集群中的一個(gè)系統(tǒng)發(fā)生故障時(shí)误堡,集群軟件迅速做出反應(yīng)钙姊,將該系統(tǒng)的任務(wù)分配到集群中其它正在工作的系統(tǒng)上執(zhí)行」÷祝考慮到計(jì)算機(jī)硬件和軟件的易錯(cuò)性煞额,高可用性集群的主要目的是為了使集群的整體服務(wù)盡可能可用。如果高可用性集群中的主節(jié)點(diǎn)發(fā)生了故障沾谜,那么這段時(shí)間內(nèi)將由次節(jié)點(diǎn)代替它膊毁。次節(jié)點(diǎn)通常是主節(jié)點(diǎn)的鏡像。當(dāng)它代替主節(jié)點(diǎn)時(shí)基跑,它可以完全接管其身份婚温,因此使系統(tǒng)環(huán)境對(duì)于用戶是一致的。

高可用性集群使服務(wù)器系統(tǒng)的運(yùn)行速度和響應(yīng)速度盡可能快媳否。它們經(jīng)常利用在多臺(tái)機(jī)器上運(yùn)行的冗余節(jié)點(diǎn)和服務(wù)栅螟,用來相互跟蹤。如果某個(gè)節(jié)點(diǎn)失敗篱竭,它的替補(bǔ)者將在幾秒鐘或更短時(shí)間內(nèi)接管它的職責(zé)力图。因此,對(duì)于用戶而言,集群永遠(yuǎn)不會(huì)停機(jī)掺逼。

參考集群技術(shù)—百度百科
其實(shí)我反正目前集群的使用上吃媒,幾乎都是為了防止單服務(wù)down機(jī),負(fù)載均衡只能算是添頭吧吕喘。然后最后一句通俗講解:java開發(fā)中常用的集群就是一個(gè)服務(wù)部署到多個(gè)服務(wù)器防止宕機(jī)和緩解并發(fā)壓力赘那。

SOA (面向服務(wù)的架構(gòu))

其實(shí)這個(gè)概念,我也是不久前才理解的氯质。而且可能比較淺薄募舟,但是真的查閱了很多資料和問了很多人,才總結(jié)出來的闻察,如果說錯(cuò)了歡迎指出拱礁!
首先,這是一個(gè)架構(gòu)蜓陌,是一個(gè)組件模型觅彰,它將應(yīng)用程序的不同功能單元(稱為服務(wù))進(jìn)行拆分,并通過這些服務(wù)之間定義良好的接口和契約聯(lián)系起來钮热。接口是采用中立的方式進(jìn)行定義的填抬,它應(yīng)該獨(dú)立于實(shí)現(xiàn)服務(wù)的硬件平臺(tái)、操作系統(tǒng)和編程語言隧期。這使得構(gòu)建在各種各樣的系統(tǒng)中的服務(wù)可以以一種統(tǒng)一和通用的方式進(jìn)行交互(出自百度百科)飒责。
然后我個(gè)人理解這句話的意思:soa是一種思想赘娄,一種方法論,也可以理解為他是一個(gè)規(guī)范宏蛉。熟悉java的人應(yīng)該知道規(guī)范是什么遣臼。jdbc是規(guī)范,我們通過jdbc可以用java連接各種數(shù)據(jù)庫拾并。而soa也是規(guī)范揍堰,只不過他不是java的,而是面向所有的嗅义。只要遵循它定義的標(biāo)準(zhǔn)屏歹,可以任意兩個(gè)語言連接。我用java寫了一個(gè)接口之碗,然后用php調(diào)用是可以蝙眶。用c++寫了一個(gè)接口,用python調(diào)用也是可以的褪那。soa主張的就是我不管你是誰幽纷,只要你接口和契約是對(duì)的,就可以調(diào)用博敬。用一個(gè)例子比喻:我們存取東西的時(shí)候友浸,存的時(shí)候獲得一張小票。取得時(shí)候用這個(gè)小票就可以取到了冶忱。不管存的人是男是女尾菇,也不管取的人是男是女。更不管這兩個(gè)人是什么關(guān)系認(rèn)不認(rèn)識(shí)囚枪,只要你有票就可以。soa和這個(gè)類似劳淆,不管提供接口和調(diào)用接口的是什么链沼,只要符合條件就可以。
我感覺這個(gè)就是SOA最本質(zhì)的理解沛鸵。只不過因?yàn)镾OA提到的多服務(wù)括勺,提供和調(diào)用等。就意味著它不會(huì)是一個(gè)服務(wù)曲掰。所以soa要用于多服務(wù)的情境下疾捍。然后說到多服務(wù)又要不可避免的微服務(wù)分布式系統(tǒng),集群之類的栏妖。這才使得這些概念混肴在一起了乱豆。
現(xiàn)在很多時(shí)候,我們會(huì)聽到一些很可笑或者說不正規(guī)的語句和要求:比如說soa的單點(diǎn)登錄和token認(rèn)證吊趾。你能告訴我soa的單點(diǎn)登錄和token認(rèn)證和普通分布式系統(tǒng)的單點(diǎn)登錄token驗(yàn)證有什么區(qū)別么宛裕?無論是我知識(shí)淺薄還是見識(shí)淺短瑟啃。反正我是覺得沒有區(qū)別!只不過是把一個(gè)理念帶進(jìn)去了顯得這句話高大上了而已(我當(dāng)時(shí)因?yàn)檫@個(gè)問題真的糾結(jié)了好久揩尸,自己怎么想也想不明白蛹屿,然后問人,問群岩榆,貼吧也發(fā)帖子問错负。最后得到的回答總結(jié)起來是沒區(qū)別)。
在百度百科都有明確的回答勇边。soa只是思想犹撒,方法論。甚至是一種設(shè)計(jì)模式粥诫。你問我一個(gè)設(shè)計(jì)模式的單點(diǎn)登錄怎么做油航?反正各種吐槽吧~~現(xiàn)在真的有的人隨便知道點(diǎn)名詞就要一直瞎用。
然后這個(gè)帖子我覺得把我自己的理解都說出來了怀浆。如果有不同的意見歡迎提出來谊囚。再最后說一遍幾個(gè)名詞的概念理解:
微服務(wù):一個(gè)主項(xiàng)目拆分成不同的小服務(wù)。
java常用的dubbo执赡,cloud框架就是微服務(wù)框架镰踏。核心是有一個(gè)注冊(cè)中心。
好處是每個(gè)服務(wù)可獨(dú)立開發(fā)測(cè)試部署沙合。維護(hù)性和擴(kuò)展性強(qiáng)奠伪。

分布式:分開部署,一個(gè)主項(xiàng)目部署到不同的服務(wù)器首懈“砺剩基于微服務(wù)實(shí)現(xiàn)。
把一個(gè)完整項(xiàng)目部署到多臺(tái)服務(wù)器上究履,減少服務(wù)器壓力而且有一定的容錯(cuò)性滤否。比如消息發(fā)布和消息瀏覽分開部署,這樣消息發(fā)布的服務(wù)器宕機(jī)不影響消息瀏覽最仑。

分布式系統(tǒng)/架構(gòu):使用微服務(wù)和分布式的一種架構(gòu)設(shè)計(jì)藐俺。
集群:一個(gè)服務(wù)分別部署在多臺(tái)服務(wù)器,通過負(fù)載均衡算法訪問泥彤。
soa(Service-Oriented Architecture):一種思想欲芹,也可以理解為規(guī)范。有點(diǎn)類似于設(shè)計(jì)模式的橋接吟吝。

好了菱父,就總結(jié)到這里,然后全文手打,如果對(duì)你有幫助請(qǐng)點(diǎn)個(gè)關(guān)注和喜歡~~然后全文是我自己的觀點(diǎn)滞伟,有不同意見歡迎留言或者私信揭鳞。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市梆奈,隨后出現(xiàn)的幾起案子野崇,更是在濱河造成了極大的恐慌,老刑警劉巖亩钟,帶你破解...
    沈念sama閱讀 221,576評(píng)論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件乓梨,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡清酥,警方通過查閱死者的電腦和手機(jī)扶镀,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,515評(píng)論 3 399
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來焰轻,“玉大人臭觉,你說我怎么就攤上這事∪柚荆” “怎么了蝠筑?”我有些...
    開封第一講書人閱讀 168,017評(píng)論 0 360
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)揩懒。 經(jīng)常有香客問我什乙,道長(zhǎng),這世上最難降的妖魔是什么已球? 我笑而不...
    開封第一講書人閱讀 59,626評(píng)論 1 296
  • 正文 為了忘掉前任臣镣,我火速辦了婚禮,結(jié)果婚禮上智亮,老公的妹妹穿的比我還像新娘忆某。我一直安慰自己,他們只是感情好阔蛉,可當(dāng)我...
    茶點(diǎn)故事閱讀 68,625評(píng)論 6 397
  • 文/花漫 我一把揭開白布褒繁。 她就那樣靜靜地躺著,像睡著了一般馍忽。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上燕差,一...
    開封第一講書人閱讀 52,255評(píng)論 1 308
  • 那天遭笋,我揣著相機(jī)與錄音,去河邊找鬼徒探。 笑死瓦呼,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的测暗。 我是一名探鬼主播央串,決...
    沈念sama閱讀 40,825評(píng)論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼磨澡,長(zhǎng)吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來了质和?” 一聲冷哼從身側(cè)響起稳摄,我...
    開封第一講書人閱讀 39,729評(píng)論 0 276
  • 序言:老撾萬榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎饲宿,沒想到半個(gè)月后厦酬,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 46,271評(píng)論 1 320
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡瘫想,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,363評(píng)論 3 340
  • 正文 我和宋清朗相戀三年仗阅,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片国夜。...
    茶點(diǎn)故事閱讀 40,498評(píng)論 1 352
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡减噪,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出车吹,到底是詐尸還是另有隱情筹裕,我是刑警寧澤,帶...
    沈念sama閱讀 36,183評(píng)論 5 350
  • 正文 年R本政府宣布礼搁,位于F島的核電站饶碘,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏馒吴。R本人自食惡果不足惜扎运,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,867評(píng)論 3 333
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望饮戳。 院中可真熱鬧豪治,春花似錦、人聲如沸扯罐。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,338評(píng)論 0 24
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽歹河。三九已至掩浙,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間秸歧,已是汗流浹背厨姚。 一陣腳步聲響...
    開封第一講書人閱讀 33,458評(píng)論 1 272
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留键菱,地道東北人谬墙。 一個(gè)月前我還...
    沈念sama閱讀 48,906評(píng)論 3 376
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國和親拭抬。 傳聞我的和親對(duì)象是個(gè)殘疾皇子部默,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,507評(píng)論 2 359

推薦閱讀更多精彩內(nèi)容

  • 單體架構(gòu) 什么是單體架構(gòu) 一個(gè)歸檔包(例如war格式或者Jar格式)包含了應(yīng)用所有功能的應(yīng)用程序,我們通常稱之為單...
    意識(shí)流丶閱讀 20,747評(píng)論 1 11
  • 一、傳統(tǒng)的可擴(kuò)展性架構(gòu)之分層架構(gòu)與SOA架構(gòu) 1累奈、分層架構(gòu) (1)概念 分層架構(gòu)是很常見的架構(gòu)模式贬派,它也叫 N 層...
    小manong閱讀 5,215評(píng)論 0 1
  • 講一個(gè)真實(shí)故事搞乏。 大約2003年,我認(rèn)識(shí)了一個(gè)女孩戒努,且稱她為M请敦,從上海到北京,是以前公司同事介紹到當(dāng)時(shí)我工作的公司...
    桃妖00閱讀 274評(píng)論 3 0
  • 啟動(dòng)第一步--加載BIOS 當(dāng)你打開計(jì)算機(jī)電源储玫,計(jì)算機(jī)會(huì)首先加載BIOS信息侍筛,BIOS信息是如此的重要,以至于計(jì)算...
    石樂志的LK閱讀 249評(píng)論 0 0
  • 今天端午節(jié)撒穷,公司沒有放假匣椰。這幾天工作量太大,我生病了端礼,真不想去上班了禽笑,拿起手機(jī)想給領(lǐng)導(dǎo)打電話請(qǐng)假。突然間我想起了蛤奥,...
    陳藝萱媽媽閱讀 590評(píng)論 0 4