91欧美超碰AV自拍|国产成年人性爱视频免费看|亚洲 日韩 欧美一厂二区入|人人看人人爽人人操aV|丝袜美腿视频一区二区在线看|人人操人人爽人人爱|婷婷五月天超碰|97色色欧美亚州A√|另类A√无码精品一级av|欧美特级日韩特级

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

微服務(wù)及技術(shù)棧介紹

馬哥Linux運(yùn)維 ? 來源:博客園 ? 作者: 可均可可 ? 2021-07-29 16:06 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

簡(jiǎn)介 這些年軟件的設(shè)計(jì)規(guī)模越來越龐大,業(yè)務(wù)需求也越來越復(fù)雜,針對(duì)系統(tǒng)的性能、高吞吐率、高穩(wěn)定性、高擴(kuò)展等特性提出了更高的要求??梢哉f業(yè)務(wù)需求是軟件架構(gòu)能力的第一推動(dòng)力,由于這些因素導(dǎo)致了軟件架構(gòu)思想和相關(guān)技術(shù)也在發(fā)生著巨變。

這些變化反應(yīng)在軟件架構(gòu)行業(yè)里,就是我們開始越來越多的聽到了很多新的詞匯,比如:“分布式”、“SOA”、“微服務(wù)”、“中臺(tái)”等概念。 今天我就把我學(xué)習(xí)微服務(wù)的過程記錄下來,包括所有技術(shù)的實(shí)現(xiàn)細(xì)節(jié)和個(gè)人的理解。

俗話說:好記性,不如爛筆頭,以防自己忘記,以后可以查詢。當(dāng)然,這些東西有很多東西都是自己的理解,里面的插圖也是自己畫的,可能會(huì)有一些有失偏頗的地方,當(dāng)然希望有高手可以指正,不靈賜教,大家共同進(jìn)步。

架構(gòu)發(fā)展歷程

現(xiàn)在的科學(xué)技術(shù)可以說是日新月異,發(fā)展迅速。相對(duì)于我們軟件設(shè)計(jì)行業(yè)也在發(fā)生著巨變,業(yè)務(wù)越來越復(fù)雜,需求越來越龐大、繁雜,軟件架構(gòu)和部署的規(guī)模也發(fā)生著翻天覆地的變化,作為軟件架構(gòu)思想之一的“微服務(wù)架構(gòu)”也在按著自己的規(guī)律進(jìn)化著,接下來我們就簡(jiǎn)單的了解一下“微服務(wù)架構(gòu)”發(fā)展經(jīng)歷的三個(gè)時(shí)期,這些只是個(gè)人理解。

單體架構(gòu)(Monolithic)

單體應(yīng)用時(shí)代:應(yīng)用程序無論如何分層,都是一個(gè)解決方案,或者說都是一個(gè)項(xiàng)目,這里的“解決方案”和“項(xiàng)目”不是我們使用的Visual Studio里面的概念,最終的程序代碼都會(huì)在一個(gè)進(jìn)程里運(yùn)行。

優(yōu)點(diǎn):開發(fā)簡(jiǎn)單,集中管理,沒有分布式的損耗,都是系統(tǒng)進(jìn)程內(nèi)的通信。 缺點(diǎn):不好維護(hù),升級(jí)困難,耦合嚴(yán)重,無法應(yīng)付高并發(fā)和大數(shù)據(jù)場(chǎng)景,無法快捷迭代。 只能采用同一種技術(shù),很難用不同的語言或者相同語言不同版本開發(fā)不同模塊。

系統(tǒng)耦合性太強(qiáng),其中一個(gè)模塊有問題,這個(gè)系統(tǒng)就會(huì)癱瘓,一個(gè)模塊升級(jí),整個(gè)系統(tǒng)就得停機(jī)維護(hù)。

要上線,必須一起上線,互相等待,無法快速相應(yīng)市場(chǎng)需求。

集群負(fù)擔(dān)大,如果想要集群,只能對(duì)整個(gè)系統(tǒng)進(jìn)行集群,即使一個(gè)模塊有壓力。 垂直拆分 隨著業(yè)務(wù)規(guī)模的越來越龐大,系統(tǒng)設(shè)計(jì)就越來越復(fù)雜,大的系統(tǒng)就開始進(jìn)行業(yè)務(wù)的垂直拆分。比如:有專門做商品秒殺的部門,有專門做生鮮商品的部門,有專門做超市的部門,等等,當(dāng)然這是根據(jù)部門天生劃分的,也有根據(jù)業(yè)務(wù)需求進(jìn)行系統(tǒng)劃分的。

優(yōu)點(diǎn):垂直拆分,系統(tǒng)獨(dú)立部署和維護(hù),每個(gè)系統(tǒng)在自己進(jìn)程內(nèi)執(zhí)行,分而治之。 缺點(diǎn):拆分越多,存儲(chǔ)越復(fù)雜,系統(tǒng)間重復(fù)的東西也越多,單個(gè)系統(tǒng)還是單體模式。 分布式服務(wù) 隨著業(yè)務(wù)系統(tǒng)的越來越龐大,軟件系統(tǒng)設(shè)計(jì)起來越來越復(fù)雜。

為了避免過度復(fù)雜的業(yè)務(wù)需求,開始對(duì)業(yè)務(wù)系統(tǒng)的進(jìn)行垂直拆分,形成多個(gè)獨(dú)立的業(yè)務(wù)系統(tǒng),如果多個(gè)系統(tǒng)之間要通信,可以通過跨進(jìn)程的技術(shù)完成通訊。但是垂直拆分也導(dǎo)致了大量重復(fù)代碼、重復(fù)模塊的產(chǎn)生,比如:用戶模塊、日志模塊、支付模塊、認(rèn)證授權(quán)模塊等,這樣分散的代碼也給系統(tǒng)的維護(hù)和升級(jí)帶來了困難。

我們對(duì)業(yè)務(wù)重新劃分,把獨(dú)立的模塊接口化、服務(wù)化,提高重用,這個(gè)時(shí)候,我們就開始進(jìn)入了分布式服務(wù)的時(shí)代。(分布式的第一要?jiǎng)?wù)就是不要分布式)

優(yōu)點(diǎn): 獨(dú)立進(jìn)程部署,獨(dú)立進(jìn)程運(yùn)行,獨(dú)立演化。服務(wù)之間可以做到高內(nèi)聚,低耦合。

獨(dú)立開發(fā)和維護(hù),業(yè)務(wù)解耦,無論是業(yè)務(wù)系統(tǒng)還是分布式服務(wù)都獨(dú)立演化。

分布式管理

隔離性增強(qiáng)

由一系列服務(wù)組裝成系統(tǒng),不用重復(fù)建設(shè),模塊、代碼可以復(fù)用。 缺點(diǎn): 數(shù)據(jù)一致性(多服務(wù)完成一個(gè)任務(wù))和系統(tǒng)的可用性(集群)成為問題

數(shù)據(jù)庫也進(jìn)行了拆分

維護(hù)、設(shè)計(jì)、架構(gòu)成本增加,調(diào)試、糾錯(cuò)更難

網(wǎng)絡(luò)傳輸分布式損耗成本

不適合高并發(fā)和大數(shù)據(jù)的環(huán)境 微服務(wù)架構(gòu) 微服務(wù)的出現(xiàn)時(shí)分布式架構(gòu)已經(jīng)很成熟了,架構(gòu)中各種問題已經(jīng)有了很成熟的解決方案,對(duì)于現(xiàn)在的業(yè)務(wù)系統(tǒng)來說,分布式架構(gòu)已經(jīng)變成了一種常規(guī)手段,這個(gè)時(shí)候,微服務(wù)就出現(xiàn)了。微服務(wù)架構(gòu)是一個(gè)用分布式服務(wù)拆分業(yè)務(wù)邏輯,完成解耦的架構(gòu)模式(架構(gòu)風(fēng)格)。

微服務(wù)肯定是分布式的一種,是在分布式技術(shù)成熟之后,然后把分布式當(dāng)成解耦手段來架構(gòu)系統(tǒng)——因?yàn)椴鸱值姆?wù)很細(xì)致,服務(wù)數(shù)量規(guī)模開始變多了,服務(wù)的體量開始縮小了,由以前幾個(gè)大的服務(wù),轉(zhuǎn)變?yōu)槎鄠€(gè)獨(dú)立運(yùn)行的、原子性質(zhì)的服務(wù)。

微服務(wù)最重要的特性是: 可用性:描述一個(gè)系統(tǒng)在一段時(shí)間內(nèi)提供有用資源的能力,從而減少停工時(shí)間,而保持其服務(wù)的高度可用性。

伸縮性:根據(jù)需求動(dòng)態(tài)添加和刪除系統(tǒng)中資源的能力,是水平或垂直擴(kuò)展的專門實(shí)現(xiàn)。 集群(負(fù)載均衡)可以解決系統(tǒng)的高可用和伸縮特性。 優(yōu)點(diǎn): 可以使用不同語言或者相同語言的不同版本開發(fā)各個(gè)模塊。

系統(tǒng)耦合性低,各個(gè)模塊分而治之,獨(dú)立部署,獨(dú)立發(fā)布,獨(dú)立維護(hù)。

可以更快的相應(yīng)市場(chǎng)的需求,更符合敏捷開發(fā)。

可以對(duì)不同模塊使用集群策略,哪里有問題治哪里。 缺點(diǎn): 開發(fā)難度更大,系統(tǒng)結(jié)構(gòu)更復(fù)雜。

運(yùn)行效率低,網(wǎng)絡(luò)調(diào)用成本很大。 SOA面向服務(wù)架構(gòu) Service-Oriented Architecture面向服務(wù)架構(gòu):是一個(gè)組件模型,它將應(yīng)用程序的不同功能單元(稱為服務(wù))進(jìn)行拆分,并通過這些服務(wù)之間定義良好的接口和協(xié)議聯(lián)系起來。如圖:

微服務(wù)架構(gòu)的發(fā)展歷程

我們要解決微服務(wù)的高可用和可伸縮的兩個(gè)問題,自然就會(huì)想到通過集群來實(shí)現(xiàn),這個(gè)思路沒有錯(cuò)。如果我們實(shí)現(xiàn)了服務(wù)集群,那另外兩個(gè)問題就會(huì)出現(xiàn),這兩個(gè)問題也導(dǎo)致了微服務(wù)架構(gòu)的發(fā)展版本的差異。

第一個(gè):服務(wù)的發(fā)現(xiàn)問題,調(diào)用方如何發(fā)現(xiàn)服務(wù),有了新的服務(wù),我們?nèi)绾沃?,有服?wù)實(shí)例掉線,我們?nèi)绾螘缘茫l(fā)現(xiàn)服務(wù)就很重要,這個(gè)是基礎(chǔ)問題,第一個(gè)問題不解決,第二個(gè)問題也沒有辦法實(shí)現(xiàn);

第二個(gè):如何調(diào)用服務(wù),如何管理那么多的服務(wù)實(shí)例。有那么多的集群實(shí)例,也就有那么多的服務(wù)實(shí)例,我們?cè)撛趺慈フ{(diào)用這些服務(wù)呢?多個(gè)服務(wù)調(diào)用的關(guān)系如何呢? 由于這些問題,那我們就看看微服務(wù)架構(gòu)的三個(gè)版本是如何解決的。

集中式代理——Nginx V1.0版本(服務(wù)注冊(cè)/服務(wù)發(fā)現(xiàn)——手動(dòng))

服務(wù)發(fā)現(xiàn),手動(dòng)修改配置文件,重新啟動(dòng)。

負(fù)載均衡,可以輪訓(xùn)、權(quán)重、哈希等等。

服務(wù)新增無法發(fā)現(xiàn),需要手動(dòng)配置,服務(wù)掉線可以自動(dòng)檢查。

客戶端的實(shí)現(xiàn)很簡(jiǎn)單,不需要額外的代碼,簡(jiǎn)單,高效。 客戶端嵌入——Consul V2.0版本(服務(wù)注冊(cè)/服務(wù)發(fā)現(xiàn)——自動(dòng)——服務(wù)治理)

服務(wù)注冊(cè)與發(fā)現(xiàn),動(dòng)態(tài)增加,自動(dòng)完成。

健康檢查,可以查看損壞服務(wù),去掉服務(wù),自動(dòng)完成。

負(fù)載均衡,Consul返回所有活動(dòng)服務(wù)實(shí)例,客戶端自己實(shí)現(xiàn)負(fù)載均衡。 功能強(qiáng)大,自動(dòng)發(fā)現(xiàn)-自動(dòng)下線,客戶端集成比較復(fù)雜,負(fù)載均衡在客戶端實(shí)現(xiàn)。 服務(wù)網(wǎng)格——Service Mesh V3.0——技術(shù)不成熟,華為+唯品會(huì),Istio

SideCar服務(wù)管理服務(wù)實(shí)例的注冊(cè)和發(fā)現(xiàn),服務(wù)實(shí)例的治理和調(diào)用。Service Mesh’s Control Plan管理所有的SideCar。這個(gè)技術(shù)我就不多談了,網(wǎng)上的資料也很多,目前這個(gè)技術(shù)還不是很成熟,使用的范圍也不是很廣,只有一些大的公司有過使用,比如:微軟等。

微服務(wù)架構(gòu)必備技術(shù)棧

微服務(wù)是一種軟件設(shè)計(jì)、架構(gòu)思想,當(dāng)然,里面也包含了相關(guān)技術(shù)點(diǎn)要解決當(dāng)前要?jiǎng)?wù)。學(xué)習(xí)微服務(wù),我們不能空口而談,一定要落實(shí)到具體的技術(shù)棧上。當(dāng)今使用比較多兩個(gè)技術(shù)體系,一個(gè)是Java,另外一個(gè)就是Net,廢話不多說,我是使用微軟相關(guān)技術(shù)棧的軟件架構(gòu)人員,當(dāng)然使用的“微服務(wù)”架構(gòu)技術(shù)棧也都是微軟的。

今天我就把相關(guān)“微服務(wù)架構(gòu)”所用到的技術(shù)棧羅列出來,我也要說明一下,微服務(wù)架構(gòu)里面的很多技術(shù)是和開發(fā)語言無關(guān)的,無論是.Net還是Java平臺(tái)都可以使用。以后,一步一步的針對(duì)每項(xiàng)技術(shù)在做深入研究。

微服務(wù)架構(gòu)——服務(wù)通信

WebService、WCF、WebAPI,甚至可以是ASHX,ASPX,這都是微軟本身的技術(shù)體系,沒什么可說的。

主動(dòng)觸發(fā)

數(shù)據(jù)序列化傳遞

跨平臺(tái)

跨語言

Http穿透防火墻

微服務(wù)架構(gòu)——進(jìn)程通信

Net Remoting:Net平臺(tái)督郵的,不支持跨平臺(tái)。

gRPC:高性能、開源和通用RPC框架,面向服務(wù)端和移動(dòng)端,基于HTTP/2設(shè)計(jì),推薦使用。

微服務(wù)架構(gòu)——API網(wǎng)關(guān)服務(wù)(Ocelot) API網(wǎng)關(guān)——它是系統(tǒng)的暴露在外部的一個(gè)訪問入口。這個(gè)有點(diǎn)像代理訪問的家伙,就像一個(gè)公司的門衛(wèi)承擔(dān)著尋址、限制進(jìn)入、安全檢查、位置引導(dǎo)、等等功能。Ocelot是一個(gè)用.NET Core實(shí)現(xiàn)并且開源的API網(wǎng)關(guān),它功能強(qiáng)大,包括了:路由、請(qǐng)求聚合、服務(wù)發(fā)現(xiàn)、認(rèn)證、鑒權(quán)、限流熔斷、并內(nèi)置了負(fù)載均衡器與Service Fabric、Butterfly Tracing集成。這些功能只都只需要簡(jiǎn)單的配置即可完成。如圖:

官網(wǎng):https://ocelot.readthedocs.io/en/latest/index.html

微服務(wù)架構(gòu)——認(rèn)證&授權(quán)

現(xiàn)在的應(yīng)用開發(fā)層出不窮,基于瀏覽器的網(wǎng)頁應(yīng)用,基于微信的公眾號(hào)、小程序,基于iOSAndroid的App,基于Windows系統(tǒng)的桌面應(yīng)用和UWP應(yīng)用等等,這么多種類的應(yīng)用,就給應(yīng)用的開發(fā)帶來的挑戰(zhàn),我們除了分別實(shí)現(xiàn)各個(gè)應(yīng)用外,我們還要考慮各個(gè)應(yīng)用之間的交互,通用模塊的提煉,其中身份的認(rèn)證和授權(quán)就是每個(gè)應(yīng)用必不可少的的一部分。

而現(xiàn)在的互聯(lián)網(wǎng),對(duì)于信息安全要求又十分苛刻,所以一套統(tǒng)一的身份認(rèn)證和授權(quán)就至關(guān)重要。 IdentityServer4就是這樣一個(gè)框架,IdentityServer4是為ASP.NET CORE量身定制的實(shí)現(xiàn)了OpenId Connect和OAuth2.0協(xié)議的認(rèn)證授權(quán)中間件。

項(xiàng)目地址:https://github.com/IdentityServer/IdentityServer4

微服務(wù)架構(gòu)——瞬態(tài)故障處理

Polly它一款強(qiáng)大的類庫,Polly是一種.NET彈性和瞬態(tài)故障處理庫,允許我們以非常順暢和線程安全的方式來執(zhí)諸如行重試,斷路,超時(shí),故障恢復(fù)等策略。Polly針對(duì).NET 4.0,.NET 4.5和.NET Standard 1.1以及.NET Core實(shí)現(xiàn),該項(xiàng)目作者現(xiàn)已成為.NET基金會(huì)一員,項(xiàng)目一直在不停迭代和更新,你值得擁有。 項(xiàng)目地址:https://github.com/App-vNext/Polly

微服務(wù)架構(gòu)——分布式追蹤

隨著微服務(wù)架構(gòu)的流行,一些微服務(wù)架構(gòu)下的問題也會(huì)越來越突出,比如一個(gè)請(qǐng)求會(huì)涉及多個(gè)服務(wù),而服務(wù)本身可能也會(huì)依賴其他服務(wù),整個(gè)請(qǐng)求路徑就構(gòu)成了一個(gè)網(wǎng)狀的調(diào)用鏈,而在整個(gè)調(diào)用鏈中一旦某個(gè)節(jié)點(diǎn)發(fā)生異常,整個(gè)調(diào)用鏈的穩(wěn)定性就會(huì)受到影響,所以會(huì)深深的感受到“銀彈”這個(gè)詞是不存在的,每種架構(gòu)都有其優(yōu)缺點(diǎn)。

面對(duì)以上情況,我們就需要一些可以幫助理解系統(tǒng)行為、用于分析性能問題的工具,以便發(fā)生故障的時(shí)候,能夠快速定位和解決問題,這時(shí)候APM(應(yīng)用性能管理)工具就該閃亮登場(chǎng)了。 項(xiàng)目地址:https://github.com/SkyAPM/SkyAPM-dotnet

微服務(wù)架構(gòu)——分布式日志

一般我們需要進(jìn)行日志分析場(chǎng)景:直接在日志文件中g(shù)rep、awk就可以獲得自己想要的信息。但在規(guī)模較大也就是日志量多而復(fù)雜的場(chǎng)景中,此方法效率低下,面臨問題包括日志量太大如何歸檔、文本搜索太慢怎么辦、如何多維度查詢。

需要集中化的日志管理,所有服務(wù)器上的日志收集匯總。常見解決思路是建立集中式日志收集系統(tǒng),將所有節(jié)點(diǎn)上的日志統(tǒng)一收集,管理,訪問。 大型系統(tǒng)通常都是一個(gè)分布式部署的架構(gòu),不同的服務(wù)模塊部署在不同的服務(wù)器上,問題出現(xiàn)時(shí),大部分情況需要根據(jù)問題暴露的關(guān)鍵信息,定位到具體的服務(wù)器和服務(wù)模塊,構(gòu)建一套集中式日志系統(tǒng),可以提高定位問題的效率。

Exceptionless是一個(gè)開源的實(shí)時(shí)的日志收集框架,它可以應(yīng)用在基于ASP.NET,ASP.NET Core,Web Api,Web Forms,WPF,Console,MVC等技術(shù)棧的應(yīng)用程序中,并且提供了Rest接口可以應(yīng)用在Javascript,Node.js中。

它將日志收集變得簡(jiǎn)單易用并且不需要了解太多的相關(guān)技術(shù)細(xì)節(jié)及配置。在以前,我們做日志收集大多使用Log4net,Nlog等框架,在應(yīng)用程序變得復(fù)雜并且集群的時(shí)候,可能傳統(tǒng)的方式已經(jīng)不是很好的適用了,因?yàn)槭占鱾€(gè)日志并且分析他們將變得麻煩而且浪費(fèi)時(shí)間。

現(xiàn)在Exceptionless團(tuán)隊(duì)給我們提供了一個(gè)更好的框架來做這件事情,我認(rèn)為這是非常偉大并且有意義的,感謝他們。

官網(wǎng):http://exceptionless.com/ GitHub:https://github.com/exceptionless/Exceptionless

ELK是三個(gè)開源軟件的縮寫,分別為:Elasticsearch、Logstash以及Kibana,它們都是開源軟件。不過現(xiàn)在還新增了一個(gè)Beats,它是一個(gè)輕量級(jí)的日志收集處理工具(Agent),Beats占用資源少,適合于在各個(gè)服務(wù)器上搜集日志后傳輸給Logstash,官方也推薦此工具,目前由于原本的ELK Stack成員中加入了Beats工具所以已改名為Elastic Stack。推薦使用。

微服務(wù)架構(gòu)——分布式配置中心

Apollo(阿波羅)是攜程框架部門研發(fā)的配置管理平臺(tái),能夠集中化管理應(yīng)用不同環(huán)境、不同集群的配置,配置修改后能夠?qū)崟r(shí)推送到應(yīng)用端,并且具備規(guī)范的權(quán)限、流程治理等特性。 服務(wù)端基于Spring Boot和Spring Cloud開發(fā),打包后可以直接運(yùn)行,不需要額外安裝Tomcat等應(yīng)用容器。

Java客戶端不依賴任何框架,能夠運(yùn)行于所有Java運(yùn)行時(shí)環(huán)境,同時(shí)對(duì)Spring環(huán)境也有較好的支持。 .Net客戶端不依賴任何框架,能夠運(yùn)行于所有.Net運(yùn)行時(shí)環(huán)境。 項(xiàng)目地址:https://github.com/ctripcorp/apollo/

微服務(wù)架構(gòu)——分布式鎖

分布式鎖的解決方案有很多,我在這里就羅列一些,我會(huì)在以后的實(shí)踐中實(shí)現(xiàn)這些技術(shù)點(diǎn)。

Consul可以實(shí)現(xiàn)分布式鎖

Redis可以實(shí)現(xiàn)分布式鎖,推薦使用。

ZooKeeper可以實(shí)現(xiàn)分布式鎖

數(shù)據(jù)庫可以實(shí)現(xiàn)分布式鎖

微服務(wù)架構(gòu)——分布式事務(wù) 分布式事務(wù)的實(shí)現(xiàn)方式也不少,以后努力學(xué)習(xí)吧。

2PC(two-phase commit protocol,強(qiáng)一致性,沒有可用性)

3PC

TCC(Try-Confirm-Cancel)

本地消息表,推薦RabbitMQ

Saga模式

本地消息表:MQ分布式事務(wù)—本地消息表—基于消息的一致性。

上游投遞消息

下游獲取消息

上游投遞穩(wěn)定性

下游接受穩(wěn)定性

微服務(wù)架構(gòu)——容器化 Docker是一個(gè)開源的應(yīng)用容器引擎,可以打包應(yīng)用以及依賴包到一個(gè)可移植的鏡像中,然后發(fā)布到任何流行的Linux和Windows機(jī)器上,也可以實(shí)現(xiàn)虛擬化。 Docker使用客戶端-服務(wù)器(C/S)架構(gòu)模式,使用遠(yuǎn)程API來管理和創(chuàng)建Docker容器。

Docker容器通過Docker鏡像來創(chuàng)建。容器與鏡像的關(guān)系類似于面向?qū)ο?a href="http://www.makelele.cn/v/tag/1315/" target="_blank">編程中的對(duì)象與類。 Docker采用C/S架構(gòu)Docker daemon作為服務(wù)端接受來自客戶的請(qǐng)求,并處理這些請(qǐng)求(創(chuàng)建、運(yùn)行、分發(fā)容器)。

客戶端和服務(wù)端既可以運(yùn)行在一個(gè)機(jī)器上,也可通過socket或者RESTful API來進(jìn)行通信。 Docker daemon一般在宿主主機(jī)后臺(tái)運(yùn)行,等待接收來自客戶端的消息。Docker客戶端則為用戶提供一系列可執(zhí)行命令,用戶用這些命令實(shí)現(xiàn)跟Docker daemon交互。

微服務(wù)架構(gòu)——容器編排 Kubernetes是Google開源的一個(gè)容器編排引擎,它支持自動(dòng)化部署、大規(guī)??缮炜s、應(yīng)用容器化管理。在生產(chǎn)環(huán)境中部署一個(gè)應(yīng)用程序時(shí),通常要部署該應(yīng)用的多個(gè)實(shí)例以便對(duì)應(yīng)用請(qǐng)求進(jìn)行負(fù)載均衡。 在Kubernetes中,我們可以創(chuàng)建多個(gè)容器,每個(gè)容器里面運(yùn)行一個(gè)應(yīng)用實(shí)例,然后通過內(nèi)置的負(fù)載均衡策略,實(shí)現(xiàn)對(duì)這一組應(yīng)用實(shí)例的管理、發(fā)現(xiàn)、訪問,而這些細(xì)節(jié)都不需要運(yùn)維人員去進(jìn)行復(fù)雜的手工配置和處理。

Kubernetes也可以理解為Docker的編排容器,是管理應(yīng)用的全生命周期的工具,從創(chuàng)建應(yīng)用/部署,應(yīng)用提供服務(wù),擴(kuò)容縮容,更新,都非常的方便,而且可以做到故障自愈。 官網(wǎng):https://kubernetes.io/docs/home/ 微服務(wù)架構(gòu)——CI/CD Jenkins是一個(gè)開源的、提供友好操作界面的持續(xù)集成(CI)工具,主要用于持續(xù)、自動(dòng)的構(gòu)建/測(cè)試軟件項(xiàng)目、監(jiān)控外部任務(wù)的運(yùn)行。 官網(wǎng):https://www.jenkins.io/

原文鏈接:https://www.cnblogs.com/PatrickLiu/p/13925259.html

(版權(quán)歸原作者所有,侵刪)

編輯:jq

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴

原文標(biāo)題:微服務(wù)及技術(shù)棧介紹

文章出處:【微信號(hào):magedu-Linux,微信公眾號(hào):馬哥Linux運(yùn)維】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    基于OpenTelemetry的全鏈路追蹤微服務(wù)可觀測(cè)性實(shí)踐

    微服務(wù)拆分到第三年,我們的服務(wù)數(shù)量從最初的5個(gè)膨脹到了47個(gè)。一個(gè)用戶下單請(qǐng)求要經(jīng)過API Gateway -> 用戶服務(wù) -> 商品服務(wù) -> 庫存
    的頭像 發(fā)表于 02-26 15:43 ?203次閱讀

    華納云VPS容器服務(wù)網(wǎng)格流量管理:實(shí)現(xiàn)微服務(wù)高效路由

    在云計(jì)算和微服務(wù)架構(gòu)日益普及的今天,華納云香港VPS憑借其優(yōu)越的地緣優(yōu)勢(shì)和網(wǎng)絡(luò)自由,成為眾多企業(yè)部署容器化應(yīng)用的熱門選擇。復(fù)雜的微服務(wù)架構(gòu)帶來了流量管理的巨大挑戰(zhàn)。本文將深入探討如何利用容器服務(wù)
    的頭像 發(fā)表于 10-16 17:09 ?549次閱讀

    基于RFID與微服務(wù)架構(gòu)的智能倉庫管理系統(tǒng):實(shí)現(xiàn)倉儲(chǔ)數(shù)據(jù)的全鏈路精準(zhǔn)采集與管控

    針對(duì)傳統(tǒng)倉儲(chǔ)管理中普遍存在的賬實(shí)不符、流程效率低下及信息孤島等問題,本文介紹一套基于RFID射頻識(shí)別技術(shù)微服務(wù)軟件架構(gòu)的智能倉庫管理系統(tǒng)。系統(tǒng)通過“一物一碼”的電子身份標(biāo)識(shí),實(shí)現(xiàn)了對(duì)物資從入庫
    的頭像 發(fā)表于 10-13 11:18 ?783次閱讀
    基于RFID與<b class='flag-5'>微服務(wù)</b>架構(gòu)的智能倉庫管理系統(tǒng):實(shí)現(xiàn)倉儲(chǔ)數(shù)據(jù)的全鏈路精準(zhǔn)采集與管控

    軟通動(dòng)力數(shù)據(jù)庫專業(yè)服務(wù)解決方案亮相2025數(shù)博會(huì)

    8月28日,2025中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)(數(shù)博會(huì))在貴陽開幕,軟通動(dòng)力攜數(shù)據(jù)庫專業(yè)服務(wù)解決方案亮相盛會(huì),全面展示從數(shù)據(jù)庫遷移部署、性能優(yōu)化、容災(zāi)備份到智能運(yùn)維的全生命周期服務(wù)能力。
    的頭像 發(fā)表于 09-04 09:32 ?846次閱讀
    軟通動(dòng)力數(shù)據(jù)庫專業(yè)<b class='flag-5'>服務(wù)</b>全<b class='flag-5'>棧</b>解決方案亮相2025數(shù)博會(huì)

    如何基于Nginx構(gòu)建微服務(wù)網(wǎng)關(guān)

    今天,我將分享我們團(tuán)隊(duì)如何基于Nginx構(gòu)建了一個(gè)日均處理10億+請(qǐng)求的微服務(wù)網(wǎng)關(guān),以及踩過的那些坑。這套方案已經(jīng)穩(wěn)定運(yùn)行2年+,經(jīng)歷過多次大促考驗(yàn)。
    的頭像 發(fā)表于 09-02 16:29 ?833次閱讀

    Jtti海外VPS微服務(wù)架構(gòu)下的日志采集與分析優(yōu)化方案

    隨著跨境業(yè)務(wù)和分布式應(yīng)用的普及,越來越多的企業(yè)在海外VPS上構(gòu)建微服務(wù)架構(gòu),以提升系統(tǒng)擴(kuò)展性和靈活性。然而,微服務(wù)化帶來了一個(gè)新的挑戰(zhàn):日志數(shù)據(jù)分散在多個(gè)服務(wù)和節(jié)點(diǎn)中,若缺乏統(tǒng)一采集與分析機(jī)制,將
    的頭像 發(fā)表于 08-27 17:13 ?577次閱讀

    自動(dòng)駕駛中常提的“全”是個(gè)啥?有必要“全”嗎?

    [首發(fā)于智駕最前沿微信公眾號(hào)]隨著自動(dòng)駕駛技術(shù)落地,越來越多車企公布了自己的自動(dòng)駕駛方案,在很多車企的宣傳中,會(huì)使用“全自研”的說法來證明自己的實(shí)力。所謂“全”,字面意思是全套技術(shù)
    的頭像 發(fā)表于 08-27 09:43 ?1164次閱讀
    自動(dòng)駕駛中常提的“全<b class='flag-5'>棧</b>”是個(gè)啥?有必要“全<b class='flag-5'>棧</b>”嗎?

    電商API的微服務(wù)架構(gòu)優(yōu)化策略

    ? 隨著電子商務(wù)的快速發(fā)展,API(應(yīng)用程序編程接口)已成為電商平臺(tái)的核心組件,負(fù)責(zé)連接用戶、商家和后臺(tái)系統(tǒng)。微服務(wù)架構(gòu)通過將應(yīng)用拆分為獨(dú)立、可擴(kuò)展的服務(wù)單元,顯著提升了系統(tǒng)的靈活性和可維護(hù)性。然而
    的頭像 發(fā)表于 07-23 14:30 ?635次閱讀
    電商API的<b class='flag-5'>微服務(wù)</b>架構(gòu)優(yōu)化策略

    AI應(yīng)用創(chuàng)新與全技術(shù)融合分論壇即將召開

    2025開放原子開源生態(tài)大會(huì)即將啟幕,其中 “AI應(yīng)用創(chuàng)新與全技術(shù)融合分論壇”將于 7月24日重磅亮相。論壇聚焦人工智能技術(shù)與開源生態(tài)的深度融合,邀請(qǐng)各領(lǐng)域用戶、技術(shù)專家、開發(fā)者分享
    的頭像 發(fā)表于 07-23 09:54 ?953次閱讀

    蔡司“微服務(wù)”——全能在線售后管家,24小時(shí)守護(hù)您的設(shè)備!

    還在為設(shè)備故障煩惱? 急需技術(shù)支援卻找不到人? 想快速獲取用戶手冊(cè)或軟件升級(jí)? 現(xiàn)在 只需微信掃一掃設(shè)備上的藍(lán)色標(biāo)簽二維碼 蔡司“微服務(wù)”一鍵觸達(dá)! 9大功能板塊 全方位解決您的售后需求 服務(wù)更高
    發(fā)表于 07-10 16:44 ?1574次閱讀
    蔡司“<b class='flag-5'>微服務(wù)</b>”——全能在線售后管家,24小時(shí)守護(hù)您的設(shè)備!

    NVIDIA技術(shù)助力企業(yè)創(chuàng)建主權(quán)AI智能體

    AI Factory 的經(jīng)驗(yàn)證設(shè)計(jì)將加速基礎(chǔ)設(shè)施與軟件(包括全新 NVIDIA NIM 微服務(wù)和經(jīng)擴(kuò)展的 NVIDIA Blueprint)相結(jié)合,為各國和企業(yè)簡(jiǎn)化了全式 AI 開發(fā)的流程。
    的頭像 發(fā)表于 06-16 14:28 ?1361次閱讀

    曙光數(shù)創(chuàng)亮相2025中國智算中心全技術(shù)大會(huì)

    近日,曙光數(shù)創(chuàng)副總裁兼CTO張鵬攜三大液冷新品,正式亮相『2025中國智算中心全技術(shù)大會(huì)』暨第六屆中國數(shù)據(jù)中心綠色能源大會(huì)。曙光數(shù)創(chuàng)作為液冷數(shù)據(jù)中心技術(shù)創(chuàng)新引領(lǐng)者,以“新服務(wù)”、“新
    的頭像 發(fā)表于 06-13 14:40 ?1176次閱讀

    從云端到終端:RAKsmart服務(wù)器構(gòu)筑AI云平臺(tái)智慧城市全解決方案

    傳統(tǒng)服務(wù)器方案常面臨算力分散、運(yùn)維復(fù)雜、能效比低等問題,導(dǎo)致AI算法難以高效落地。而RAKsmart服務(wù)器憑借其技術(shù)創(chuàng)新與全服務(wù)能力,正在
    的頭像 發(fā)表于 05-09 09:47 ?642次閱讀

    企業(yè)使用NVIDIA NeMo微服務(wù)構(gòu)建AI智能體平臺(tái)

    已發(fā)布的 NeMo 微服務(wù)可與合作伙伴平臺(tái)集成,作為創(chuàng)建 AI 智能體的構(gòu)建模塊,使用商業(yè)智能與強(qiáng)大的邏輯推理模型 (包括 NVIDIA Llama Nemotron) 處理更多任務(wù)。
    的頭像 發(fā)表于 04-27 15:05 ?1305次閱讀

    Snap Store開發(fā)者工具圖譜:從全到云原生,一張圖解鎖Linux開發(fā)新姿勢(shì)!

    PyCharm+Postman構(gòu)建微服務(wù),還是云原生新人嘗試Kubectl+Helm馴服K8s,SnapStore早已備好全套裝備。本文作為《UbuntuSnap》系列的第三彈
    的頭像 發(fā)表于 03-25 09:22 ?878次閱讀
    Snap Store開發(fā)者工具圖譜:從全<b class='flag-5'>棧</b>到云原生,一張圖解鎖Linux開發(fā)新姿勢(shì)!