簡單的Micro Service 2 =>架構(gòu)

下面我們創(chuàng)建一個Sample項目。

先來看看基本架構(gòu)的想法估蹄。

技術(shù)棧:

Kong+GrayLog+OAuth2+Springboot+Express+Swagger

Devops : Jenkins+Git+Docker+Rancher


架構(gòu)想法

1. 首先項目是基于IaaS塑煎,從供應(yīng)商那獲虛擬機, 小公司嘛臭蚁,不期望花太多的時間在Infra上, Docker 隔離環(huán)境差異性最铁,application 以docker image的方式發(fā)布。

2. 客戶端(Browser垮兑,APP或者其他第三方系統(tǒng))請求首先到第一層Loadbalancer冷尉,這個Loadbalancer是可選的,可能是云供應(yīng)商提供的系枪,也可以是自己的apache雀哨,Nginx(或者直接就是kong)或者F5。不是必須的嗤无,如果云廠商沒有提供震束,那可以忽略怜庸。

3.客戶端請求通過第一層的LB之后,到達(dá)API gateway垢村。個人理解割疾,API gateway 就是一個門,入戶大門也好房間之間的們也罷嘉栓,反正們的基本功能是必須的宏榕。它可以完成對API的簡單轉(zhuǎn)換,AuthC侵佃,Rate-limitting麻昼,logging,caching以及Transformations馋辈。這里我們用的是Kong(沒錯就是那個大猩猩)抚芦。Kong 基于Nginx開發(fā)出來的完整概念上的API gateway,在性能方面你可以放心使用迈螟。Kong有很多插件叉抡,如果需要自己開發(fā)插件的話,可能要稍微學(xué)一下Lua答毫。當(dāng)然對于控制狂來說可能會選擇Spring Cloud來自己寫一些變態(tài)需求褥民。

4.客戶端訪問的資源可能是一個需要AuthC。API gateway可以從認(rèn)證服務(wù)器LDAP/Oauth2來進(jìn)行認(rèn)證洗搂。然后將請求轉(zhuǎn)給Rancher的loadbalancer消返。

5.Rancher是一個容器編排軟件。隨著docker的流行耘拇,Rancher也已經(jīng)for production了撵颊。相比其他容器編排軟件(Kubernetes,Mesos, Swarm)來說,最大的好處就是難度適中驼鞭。給了我們中小型企業(yè)一個構(gòu)建自己的CaaS和PaaS的機會秦驯。請求發(fā)送到Rancher的LB后會轉(zhuǎn)給App容器完成相關(guān)任務(wù)。對于微服務(wù)來說挣棕,rancher+docker 很容易的就能實現(xiàn)服務(wù)注冊,服務(wù)發(fā)現(xiàn)亲桥,健康檢測洛心,路由,負(fù)載均衡题篷。

6.App容器開發(fā)語言不相關(guān)词身,只需要完成自己的微服務(wù)就好了,他所需要的其他服務(wù)地址番枚,只需要調(diào)用其服務(wù)名法严,Docker/Rancher的DNS會自動完成相關(guān)的轉(zhuǎn)換损敷。

7.App2 是一個springboot的實現(xiàn),可以通過spring config來完成一些業(yè)務(wù)相關(guān)的配置管理深啤。當(dāng)然Rancher也可以在容器啟動的時候以環(huán)境變量的方式將配置信息傳進(jìn)去拗馒。

8.spring config 從GIT 或者 本地磁盤獲取相關(guān)的配置文件。

9.任何第三放的服務(wù)溯街,都可以通過Rancher以Service的方式配置到rancher的Stack里面诱桂。

10.Graylog只是一個日志工具(可以被logstash,splunk等替代),應(yīng)用容器將日志直接輸出到syslog(理論基礎(chǔ)就是,開發(fā)人員不關(guān)心日志放哪里顶吮,看console就行了标锄,application不需要關(guān)心日志放哪里,負(fù)責(zé)輸出就行了突雪,日志服務(wù)器關(guān)心日志放哪里,取syslog就行啦)。

11. 所有容器/軟件都部署到IaaS上涡相,在IaaS的主機上只需要安裝Docker就可以了。

12.DevOps流程之后討論剩蟀。


Tech Stack Suggestion


好了催蝗,這就是一個基本的簡單的架構(gòu)。下面來詳細(xì)講解這個Demo育特。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末丙号,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子缰冤,更是在濱河造成了極大的恐慌犬缨,老刑警劉巖,帶你破解...
    沈念sama閱讀 207,113評論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件棉浸,死亡現(xiàn)場離奇詭異怀薛,居然都是意外死亡,警方通過查閱死者的電腦和手機迷郑,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,644評論 2 381
  • 文/潘曉璐 我一進(jìn)店門枝恋,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人嗡害,你說我怎么就攤上這事焚碌。” “怎么了霸妹?”我有些...
    開封第一講書人閱讀 153,340評論 0 344
  • 文/不壞的土叔 我叫張陵十电,是天一觀的道長。 經(jīng)常有香客問我,道長鹃骂,這世上最難降的妖魔是什么台盯? 我笑而不...
    開封第一講書人閱讀 55,449評論 1 279
  • 正文 為了忘掉前任,我火速辦了婚禮畏线,結(jié)果婚禮上静盅,老公的妹妹穿的比我還像新娘。我一直安慰自己象踊,他們只是感情好温亲,可當(dāng)我...
    茶點故事閱讀 64,445評論 5 374
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著杯矩,像睡著了一般栈虚。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上史隆,一...
    開封第一講書人閱讀 49,166評論 1 284
  • 那天魂务,我揣著相機與錄音,去河邊找鬼泌射。 笑死粘姜,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的熔酷。 我是一名探鬼主播孤紧,決...
    沈念sama閱讀 38,442評論 3 401
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼拒秘!你這毒婦竟也來了号显?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 37,105評論 0 261
  • 序言:老撾萬榮一對情侶失蹤躺酒,失蹤者是張志新(化名)和其女友劉穎押蚤,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體羹应,經(jīng)...
    沈念sama閱讀 43,601評論 1 300
  • 正文 獨居荒郊野嶺守林人離奇死亡揽碘,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,066評論 2 325
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了园匹。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片雳刺。...
    茶點故事閱讀 38,161評論 1 334
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖偎肃,靈堂內(nèi)的尸體忽然破棺而出煞烫,到底是詐尸還是另有隱情,我是刑警寧澤累颂,帶...
    沈念sama閱讀 33,792評論 4 323
  • 正文 年R本政府宣布,位于F島的核電站,受9級特大地震影響紊馏,放射性物質(zhì)發(fā)生泄漏料饥。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 39,351評論 3 307
  • 文/蒙蒙 一朱监、第九天 我趴在偏房一處隱蔽的房頂上張望岸啡。 院中可真熱鬧,春花似錦赫编、人聲如沸巡蘸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,352評論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽悦荒。三九已至,卻和暖如春嘹吨,著一層夾襖步出監(jiān)牢的瞬間搬味,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 31,584評論 1 261
  • 我被黑心中介騙來泰國打工蟀拷, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留碰纬,地道東北人。 一個月前我還...
    沈念sama閱讀 45,618評論 2 355
  • 正文 我出身青樓问芬,卻偏偏與公主長得像悦析,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子此衅,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 42,916評論 2 344

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