国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

什么是分布式微服務(wù)?

這篇具有很好參考價值的文章主要介紹了什么是分布式微服務(wù)?。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

前言

本文旨在講清楚什么是分布式微服務(wù)架構(gòu),通過解釋微服務(wù)架構(gòu)和分布式架構(gòu),來理解分布式微服務(wù)架構(gòu),并且揭示了其相較于單體架構(gòu)的優(yōu)點,以及該架構(gòu)面臨的問題。

在介紹分布式微服務(wù)之前,我們先從名字分析,這個名詞包含了兩部分,第一部分:分布式,第二部分:微服務(wù)。如果搞清楚了這兩個,那么基本上就弄明白了。

什么是微服務(wù)

微服務(wù)是一種架構(gòu)風格,用于構(gòu)建分布式系統(tǒng)(關(guān)于什么是分布式,這個后文會提到)。

它將一個大型應(yīng)用程序拆分為一組小型的、自治的服務(wù),每個服務(wù)都運行在獨立的進程中,并通過網(wǎng)絡(luò)進行通信。每個微服務(wù)專注于解決特定的業(yè)務(wù)問題,并可以獨立地進行開發(fā)、部署和擴展。

關(guān)于什么是架構(gòu)風格:

架構(gòu)風格是指軟件系統(tǒng)中構(gòu)件(可以理解系統(tǒng)的構(gòu)成部分)的組織方式和連接方式,
反映了領(lǐng)域中眾多系統(tǒng)所共有的結(jié)構(gòu)和語義特性(比如看一個生物是不是牛,那就去它身上找牛的特征 符合特征的就是牛 不符合的就不是),
并指導(dǎo)如何將各個構(gòu)件有效地組織成一個完整的系統(tǒng)(也就是搭建系統(tǒng))

比如最常見的單體架構(gòu)風格,就是把所有的功能都塞到一個應(yīng)用里面,然后打包以及部署

舉例說明

舉個例子,假設(shè)我們有一個在線電影平臺的網(wǎng)站。

傳統(tǒng)的單體架構(gòu)中,所有的功能,例如用戶管理、電影管理、支付管理等,都被打包在一個單一的應(yīng)用程序中。

這個應(yīng)用程序負責處理用戶的注冊和登錄、瀏覽電影、下訂單和支付等操作。

現(xiàn)在,我們可以使用微服務(wù)架構(gòu)來構(gòu)建這個電影平臺。我們可以將不同的功能模塊拆分為獨立的微服務(wù),例如上面提到的功能可以劃分為用戶服務(wù)、電影服務(wù)、訂單服務(wù)和支付服務(wù)

在這里我要插一句,上述是按功能來劃分服務(wù),但在實際開發(fā)中,不一定是按功能拆分。
拆分的方式有很多,可以從功能維度,就是上面的這種,
也可以從別的維度拆分,如業(yè)務(wù)域維度或者數(shù)據(jù)維度等等。

用戶服務(wù)負責處理用戶的注冊和登錄功能,它有自己的數(shù)據(jù)庫來存儲用戶信息。當用戶進行注冊時,用戶服務(wù)會驗證用戶信息,并將用戶信息存儲在自己的數(shù)據(jù)庫中。

電影服務(wù)負責管理電影的信息,例如電影的標題、演員、評分等。它也有自己的數(shù)據(jù)庫來存儲電影信息。當用戶瀏覽電影時,電影服務(wù)會提供電影列表和詳細信息。

訂單服務(wù)負責處理用戶下訂單的功能。當用戶下訂單時,訂單服務(wù)會驗證訂單信息并將訂單存儲在自己的數(shù)據(jù)庫中。

支付服務(wù)負責處理支付過程。當用戶確認支付時,支付服務(wù)會與支付網(wǎng)關(guān)進行通信并完成支付操作。

這樣,不同的功能模塊被拆分為獨立的微服務(wù),它們可以獨立開發(fā)、部署和擴展。每個微服務(wù)都有自己的責任范圍,可以根據(jù)需要獨立進行擴展或升級。微服務(wù)之間通過網(wǎng)絡(luò)進行通信,使用輕量級的通信協(xié)議,如HTTP或消息隊列。

什么是分布式

在我們?nèi)粘T诰W(wǎng)站搭建的上下文中,提到的分布式通常指的是分布式系統(tǒng)架構(gòu)

在這種架構(gòu)下,一個網(wǎng)站的功能被拆分為多個獨立的服務(wù),這些服務(wù)分布在不同的計算機節(jié)點上,并通過網(wǎng)絡(luò)進行通信和協(xié)作(注意這一句,這些服務(wù)分布在不同的計算機節(jié)點上)。

每個服務(wù)負責特定的功能或模塊,它們可以獨立地進行開發(fā)、部署和擴展。這種分布式架構(gòu)可以提高網(wǎng)站的性能、可靠性和可擴展性。

圖解分布式與微服務(wù)

下面的圖簡單揭示了將一個單體架構(gòu)的系統(tǒng),轉(zhuǎn)變?yōu)樯鲜鑫⒎?wù)和分布式架構(gòu)的過程。

單體架構(gòu)及部署

什么是分布式微服務(wù)?,框架,分布式,微服務(wù),架構(gòu),Spring Cloud,Alibaba

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

首先使用微服務(wù)架構(gòu)會將功能拆分為一個個的微服務(wù)
什么是分布式微服務(wù)?,框架,分布式,微服務(wù),架構(gòu),Spring Cloud,Alibaba
注意這里,拆分后的每個服務(wù)都是一個小的、獨立的應(yīng)用程序,可以單獨測試、部署以及擴展。

分布式

然后將這些微服務(wù)部署到服務(wù)器上,這就是分布式
什么是分布式微服務(wù)?,框架,分布式,微服務(wù),架構(gòu),Spring Cloud,Alibaba
上述是每個服務(wù)都部署到一個不同的服務(wù)器上,但在實際開發(fā)中要按照服務(wù)器的規(guī)格來部署,有的可能可以部署兩個或者三個,有的可能只能部署一個。

值得注意的是,同樣的服務(wù)可能部署多個,可能有時候用戶支付比較頻繁,一個服務(wù)不夠用,那么我就可以再部署一個支付服務(wù)上去,以提供更加穩(wěn)定、快速的響應(yīng),比如以下這樣:
什么是分布式微服務(wù)?,框架,分布式,微服務(wù),架構(gòu),Spring Cloud,Alibaba

影響

別看我們上面又是將單體應(yīng)用的功能拆分成微服務(wù),又是分開部署的,但要說對用戶的有什么負面影響的話,我的回答是基本沒有,從用戶使用體驗來說,和之前的單體架構(gòu)沒有什么區(qū)別的。

要說有的話那就是他們會覺得響應(yīng)越來越快,越來越穩(wěn)定。

如果你也這么覺得的話,我覺得那真是泰褲辣!
什么是分布式微服務(wù)?,框架,分布式,微服務(wù),架構(gòu),Spring Cloud,Alibaba
其實將單體應(yīng)用拆分為微服務(wù)并進行分布式部署對用戶基本是百利無一害,要硬說有的話,那一害,害的是程序猿。
什么是分布式微服務(wù)?,框架,分布式,微服務(wù),架構(gòu),Spring Cloud,Alibaba

單體架構(gòu)改為微服務(wù)和分布式架構(gòu)以后,大概會造成以下影響:

  1. 性能改善:通過微服務(wù)架構(gòu)和分布式部署,可以提高系統(tǒng)的性能和響應(yīng)能力。每個微服務(wù)可以獨立擴展和優(yōu)化,從而提供更快速的響應(yīng)時間和更高的并發(fā)處理能力。

  2. 可用性增強:微服務(wù)架構(gòu)的分布式部署可以提高系統(tǒng)的可用性。如果其中一個微服務(wù)出現(xiàn)故障,其他微服務(wù)仍然可以繼續(xù)工作,避免整個應(yīng)用停止運行。這意味著用戶可以繼續(xù)使用其他可用的功能而不會完全失去服務(wù)。

  3. 更好的擴展性:微服務(wù)架構(gòu)允許根據(jù)需求獨立擴展每個微服務(wù)(參考之前提到的支付服務(wù))。這意味著當用戶量增加時,可以根據(jù)需要增加相關(guān)微服務(wù)的實例數(shù),以應(yīng)對高負載。這樣可以確保系統(tǒng)在用戶增長期間仍然保持穩(wěn)定的性能和可用性。

  4. 獨立功能開發(fā)和部署:微服務(wù)架構(gòu)允許不同的團隊獨立開發(fā)和部署各個微服務(wù)。這樣可以加快新功能的上線速度,并允許更靈活的迭代和持續(xù)交付。用戶可以更快地獲得新功能和改進,而無需等待整個應(yīng)用程序的發(fā)布。

  5. 潛在的復(fù)雜性增加:微服務(wù)架構(gòu)和分布式部署可能引入一定的復(fù)雜性。由于需要管理多個微服務(wù)和它們之間的通信,涉及到一些額外的技術(shù)和工具。這可能導(dǎo)致對開發(fā)、部署和運維的一些挑戰(zhàn),需要適當?shù)墓芾砗唾Y源投入。

簡單總結(jié)一下就是:

系統(tǒng)的角度出發(fā),微服務(wù)架構(gòu)和分布式部署可以帶來更好的性能、可用性和擴展性

用戶可以獲得更快的響應(yīng)時間,更穩(wěn)定的服務(wù),并且更快地獲得新功能。

但對于開發(fā)者說,需要注意潛在的復(fù)雜性和管理挑戰(zhàn),并確保適當?shù)?code>監(jiān)控和故障處理機制以保證用戶體驗的一致性。

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

相對于分布式架構(gòu)和微服務(wù)架構(gòu),可能大家對這個詞更加熟悉:分布式微服務(wù)架構(gòu)

什么是分布式微服務(wù)架構(gòu)

將上面的兩種架構(gòu)方式合到一起就變成了:分布式微服務(wù)架構(gòu)。

在分布式微服務(wù)架構(gòu)中,一個大型的應(yīng)用程序?qū)徊鸱譃?code>多個小而自治的服務(wù)單元,每個服務(wù)單元獨立運行在分布式環(huán)境中,并通過輕量級的通信協(xié)議進行相互通信。每個服務(wù)單元都專注于完成特定的業(yè)務(wù)功能,并可以獨立地進行開發(fā)、部署、擴展和維護。

分布式微服務(wù)架構(gòu)有助于解決傳統(tǒng)單體應(yīng)用程序復(fù)雜性和可擴展性問題,提供更靈活、可靠和可維護的系統(tǒng)架構(gòu)。它適用于大型、復(fù)雜的應(yīng)用程序和需要快速迭代的敏捷開發(fā)環(huán)境。通過拆分應(yīng)用程序為多個服務(wù)單元,分布式微服務(wù)使得團隊可以更快地交付業(yè)務(wù)價值,并更好地應(yīng)對不斷變化的業(yè)務(wù)需求。

面臨的問題

分布式微服務(wù)架構(gòu)雖然相較于傳統(tǒng)的單體應(yīng)用具有很多的優(yōu)點,但是其在提出之際面臨的問題也不少,大概是以下幾個方面,以下描述中微服務(wù)簡稱為服務(wù)

  1. 各服務(wù)間通信和調(diào)用
    在一個分布式系統(tǒng)中,服務(wù)之間需要進行通信和調(diào)用來完成業(yè)務(wù)功能。
    我該如何確保通信的可靠性、安全性,以及如何避免服務(wù)之間的耦合

  2. 服務(wù)注冊與發(fā)現(xiàn)
    在一個分布式系統(tǒng)中,有大量的微服務(wù)實例需要管理和發(fā)現(xiàn)
    我該如何有效地注冊和發(fā)現(xiàn)這些服務(wù)實例,以便其他服務(wù)可以動態(tài)地與它們進行通信?

  3. 負載均衡
    有多個服務(wù)實例的情況下(比如之前圖中存在的多個支付服務(wù)},
    我該如何合理地分配負載?

  4. 服務(wù)容錯和故障恢復(fù)
    服務(wù)可能會遇到故障、網(wǎng)絡(luò)延遲或異常等問題。
    我該如何處理服務(wù)故障和不可用情況,實現(xiàn)服務(wù)的容錯和故障恢復(fù)?

  5. 數(shù)據(jù)一致性和事務(wù)管理
    在分布式系統(tǒng)中,由于服務(wù)之間的數(shù)據(jù)交互和操作,并發(fā)情況下可能出現(xiàn)數(shù)據(jù)一致性的問題。
    我該如何處理分布式環(huán)境下的數(shù)據(jù)一致性,確保事務(wù)的原子性、一致性、隔離性和持久性?。

  6. 分布式系統(tǒng)的監(jiān)控和調(diào)試
    在分布式系統(tǒng)中,需要對各個服務(wù)的運行狀態(tài)、性能指標和日志進行監(jiān)控和調(diào)試,以及及時發(fā)現(xiàn)和解決問題
    我該如何實現(xiàn)對分布式系統(tǒng)的監(jiān)控、日志聚合、異常跟蹤和性能分析?

  7. 部署和擴展
    在分布式微服務(wù)架構(gòu)中,如何有效地部署和擴展服務(wù),以適應(yīng)不斷變化的需求和負載。比如我今天突然要加兩到三個支付服務(wù),那我該怎么做?
    也就是我該如何自動化部署服務(wù)、實現(xiàn)彈性擴展和平滑升級,同時保持系統(tǒng)的高可用性和穩(wěn)定性?

這些問題能不能解決?又如何解決?本文后續(xù)主角Spring Cloud Alibaba將會給出答案。文章來源地址http://www.zghlxwxcb.cn/news/detail-563755.html

到了這里,關(guān)于什么是分布式微服務(wù)?的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔相關(guān)法律責任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費用

相關(guān)文章

  • Gin框架: Cookie和Session在單體架構(gòu)和分布式架構(gòu)下的應(yīng)用

    Gin 中單一Cookie的應(yīng)用 1 )路由處理 2 ) 控制器處理 設(shè)置cookie時,設(shè)置了兩個不同過期時間的cookie 5s 后第一個cookie 自動丟失 訪問 /delcookie 路由,第二個路由被主動刪除 HTTP 是無狀態(tài)協(xié)議,當你瀏覽了一個頁面 然后轉(zhuǎn)到同一個網(wǎng)站的另一個頁面,服務(wù)器無法認識到這是同一個

    2024年02月22日
    瀏覽(40)
  • 分布式服務(wù)框架_Zookeeper--管理分布式環(huán)境中的數(shù)據(jù)

    安裝和配置詳解 本文介紹的 Zookeeper 是以 3.2.2 這個穩(wěn)定版本為基礎(chǔ),最新的版本可以通過官網(wǎng) ? http://hadoop.apache.org/zookeeper/ 來獲取, Zookeeper 的安裝非常簡單,下面將從單機模式和集群模式兩個方面介紹 Zookeeper 的安裝和配置。 單機模式

    2024年02月12日
    瀏覽(23)
  • zookeeper —— 分布式服務(wù)協(xié)調(diào)框架

    zookeeper —— 分布式服務(wù)協(xié)調(diào)框架

    Zookeeper是一個開源的分布式的,為分布式應(yīng)用提供協(xié)調(diào)服務(wù)的Apache項目。 Zookeeper從設(shè)計模式角度來理解:是一個基于觀察者模式設(shè)計的分布式服務(wù)管理框架,它負責存儲和管理大家都關(guān)心的數(shù)據(jù),然后接受觀察者的注冊,一旦這些數(shù)據(jù)的狀態(tài)發(fā)生變化,Zookeeper就將負責通知已

    2024年02月07日
    瀏覽(25)
  • 單體架構(gòu) 微服務(wù)架構(gòu) 分布式 微服務(wù)通信方式 網(wǎng)關(guān)與nginx

    單體架構(gòu) 優(yōu)點:架構(gòu)簡單,維護成本低 缺點:各個模塊耦合度太高,當對一個模塊進行更新修改時,會影響到其他模塊,要一起進行修改。當存在性能瓶頸的時候,需要對整個服務(wù)進行擴容,不能有針對性的擴容,如一個程序的主要功能時其中某個服務(wù),要對其增加機器,

    2024年02月10日
    瀏覽(104)
  • 9.4. 分布式與微服務(wù)架構(gòu)

    9.4. 分布式與微服務(wù)架構(gòu)

    在本章節(jié)中,我們將介紹分布式系統(tǒng)和微服務(wù)架構(gòu)的基本概念。分布式系統(tǒng)解決了單體應(yīng)用面臨的可擴展性、高可用性等問題,而微服務(wù)架構(gòu)進一步提升了系統(tǒng)的可維護性和靈活性。 9.4.1. 分布式系統(tǒng)基本概念 分布式系統(tǒng)是由多個獨立的計算節(jié)點組成的系統(tǒng),這些節(jié)點通過網(wǎng)

    2024年02月08日
    瀏覽(88)
  • 什么是Python爬蟲分布式架構(gòu),可能遇到哪些問題,如何解決

    什么是Python爬蟲分布式架構(gòu),可能遇到哪些問題,如何解決

    目錄 什么是Python爬蟲分布式架構(gòu) 1. 調(diào)度中心(Scheduler): 2. 爬蟲節(jié)點(Crawler Node): 3. 數(shù)據(jù)存儲(Data Storage): 4. 反爬蟲處理(Anti-Scraping): 5. 分布式通信和協(xié)調(diào)(Communication and Coordination): Python爬蟲分布式架構(gòu)代碼示例 1. 調(diào)度中心(scheduler.py): 2. 爬蟲節(jié)點(crawl

    2024年02月10日
    瀏覽(21)
  • Dubbo——微服務(wù)框架(單體式->分布式->微服務(wù))

    Dubbo——微服務(wù)框架(單體式->分布式->微服務(wù))

    Dubbo是阿里巴巴開源的基于Java的高性能RPC(一種遠程調(diào)用)分布式服務(wù)框架,致力于提供高性能和透明化的RPC遠程服務(wù)調(diào)用方案,以及SOA服務(wù)治理方案,它提供了三大核心能力:面向接口的遠程方法調(diào)用,智能容錯和負載均衡,以及服務(wù)自動注冊和發(fā)現(xiàn)。; 每天為2千多個服

    2024年02月05日
    瀏覽(31)
  • 分布式核心知識以及常見微服務(wù)框架

    分布式核心知識以及常見微服務(wù)框架

    ?分布式中的遠程調(diào)用 在微服務(wù)架構(gòu)中,通常存在多個服務(wù)之間的遠程調(diào)用的需求。遠程調(diào)用通常包含兩個部分:序列化和通信協(xié)議。常見的序列化協(xié)議包括json、xml、 hession、 protobuf、thrift、text、 bytes等,目前主流的遠程調(diào)用技術(shù)有基于HTTP的RESTful接口以及基于TCP的RPC協(xié)議。

    2024年02月11日
    瀏覽(32)
  • 微服務(wù)【分布式架構(gòu)&認識微服務(wù)&SpringCloud】第1章

    微服務(wù)【分布式架構(gòu)&認識微服務(wù)&SpringCloud】第1章

    目錄 1,認識微服務(wù) 1.1,單體架構(gòu) 1.2,分布式架構(gòu) 1.3,微服務(wù) 1.4,SpringCloud 1.5,總結(jié) ?? 個人主頁: ?愛吃豆的土豆 ?? 版權(quán): ?本文由【愛吃豆的土豆】原創(chuàng)、在CSDN首發(fā)、需要轉(zhuǎn)載請聯(lián)系博主 ?? 如果文章對你有幫助、 歡迎關(guān)注、點贊、收藏(一鍵三連)和訂閱專欄哦 ?? 人

    2023年04月08日
    瀏覽(97)
  • 聊聊分布式架構(gòu)08——SpringBoot開啟微服務(wù)時代

    聊聊分布式架構(gòu)08——SpringBoot開啟微服務(wù)時代

    目錄 微服務(wù)架構(gòu)時代 快速入門 入門詳解 SpringBoot的自動配置 石器時代:XML配置bean 青銅時代:SpringConfig 鐵器時代:AutoConfigurationImportSelector 手寫簡單Starter SpringApplication啟動原理 微服務(wù)架構(gòu)時代 Spring Boot的出現(xiàn)與微服務(wù)架構(gòu)有關(guān),它是Spring Framework的一部分,旨在簡化開發(fā)獨

    2024年02月06日
    瀏覽(24)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包