一. ?? 什么是微服務(wù)?
將系統(tǒng)的業(yè)務(wù)功能劃分為極小的獨(dú)立微服務(wù)
,每個(gè)微服務(wù)只關(guān)注于完成某個(gè)小的任務(wù)。系統(tǒng)中的單個(gè)微服務(wù)可以被獨(dú)立部署和擴(kuò)展,且各個(gè)微服務(wù)之間是高內(nèi)聚、松耦合的。微服務(wù)之間采用輕量化通信機(jī)制暴露接來(lái)實(shí)現(xiàn)通信。
那么微服務(wù)可以怎么拆分呢?
二. ?? 拆分模型
Ⅰ. 壓力模型拆分
壓力模型簡(jiǎn)單來(lái)說(shuō)就是用戶(hù)訪問(wèn)量,我們要識(shí)別出某些超高并發(fā)量的業(yè)務(wù),盡可能把這部分業(yè)務(wù)獨(dú)立拆分出來(lái)。
可分為三個(gè)拆分維度:
1. 垂直拆分(Vertical Decomposition)
按照業(yè)務(wù)功能將系統(tǒng)劃分為多個(gè)微服務(wù),每個(gè)微服務(wù)只負(fù)責(zé)其中一個(gè)或幾個(gè)相關(guān)功能模塊。
2. 水平拆分(Horizontal Decomposition)
按照系統(tǒng)請(qǐng)求流量將系統(tǒng)劃分為多個(gè)微服務(wù),每個(gè)微服務(wù)只負(fù)責(zé)處理部分請(qǐng)求。
3. 動(dòng)態(tài)拆分(Dynamic Decomposition)
根據(jù)系統(tǒng)壓力動(dòng)態(tài)地調(diào)整微服務(wù)的數(shù)量和節(jié)點(diǎn)位置。根據(jù)請(qǐng)求流量等因素,自動(dòng)創(chuàng)建或刪除微服務(wù)節(jié)點(diǎn),以實(shí)現(xiàn)擴(kuò)展和收縮。
Ⅱ. 業(yè)務(wù)模型拆分
1. 基于業(yè)務(wù)功能拆分
按照業(yè)務(wù)功能對(duì)微服務(wù)進(jìn)行拆分,每個(gè)微服務(wù)負(fù)責(zé)一個(gè)或多個(gè)功能模塊。例如,一個(gè)電商網(wǎng)站可以把商品管理、訂單管理、支付管理等功能分別拆分成不同的微服務(wù)。
2. 基于業(yè)務(wù)流程拆分
照業(yè)務(wù)流程對(duì)微服務(wù)進(jìn)行拆分,每個(gè)微服務(wù)負(fù)責(zé)一個(gè)或多個(gè)業(yè)務(wù)流程。例如,一個(gè)在線教育平臺(tái)可以把課程購(gòu)買(mǎi)、學(xué)習(xí)記錄、作業(yè)評(píng)分等業(yè)務(wù)流程分別拆分成不同的微服務(wù)。
3. 基于用戶(hù)場(chǎng)景拆分
按照用戶(hù)場(chǎng)景對(duì)微服務(wù)進(jìn)行拆分,每個(gè)微服務(wù)負(fù)責(zé)一種或多種用戶(hù)場(chǎng)景。例如,一個(gè)社交媒體平臺(tái)可以把用戶(hù)登錄、好友圈、私信聊天等用戶(hù)場(chǎng)景分別拆分成不同的微服務(wù)。
4. 基于數(shù)據(jù)拆分
按照數(shù)據(jù)模型對(duì)微服務(wù)進(jìn)行拆分,每個(gè)微服務(wù)負(fù)責(zé)一種或多種數(shù)據(jù)。例如,一個(gè)企業(yè)應(yīng)用可以把員工信息、薪資信息、績(jī)效信息等數(shù)據(jù)分別拆分成不同的微服務(wù)。
Ⅲ. 領(lǐng)域模型拆分
1. 按業(yè)務(wù)流程拆分
整個(gè)業(yè)務(wù)流程拆分為多個(gè)服務(wù),每個(gè)服務(wù)負(fù)責(zé)一個(gè)特定的業(yè)務(wù)流程。這種方式適用于業(yè)務(wù)流程比較簡(jiǎn)單,不涉及多個(gè)領(lǐng)域的復(fù)雜場(chǎng)景。
2. 按業(yè)務(wù)領(lǐng)域拆分
將整個(gè)業(yè)務(wù)系統(tǒng)拆分為多個(gè)服務(wù),每個(gè)服務(wù)負(fù)責(zé)一個(gè)特定的業(yè)務(wù)領(lǐng)域,例如訂單、支付、用戶(hù)管理等。這樣可以使每個(gè)服務(wù)專(zhuān)注于自己的業(yè)務(wù)領(lǐng)域,減少耦合,提高擴(kuò)展性和可維護(hù)性。
3. 按分層架構(gòu)拆分
將整個(gè)業(yè)務(wù)系統(tǒng)拆分為多個(gè)服務(wù),每個(gè)服務(wù)負(fù)責(zé)特定的應(yīng)用程序?qū)踊蚣夹g(shù)架構(gòu)層,例如Web服務(wù)、數(shù)據(jù)服務(wù)、緩存服務(wù)等。這種方式適用于需要將不同的技術(shù)架構(gòu)分開(kāi)管理、部署和擴(kuò)展的情況。
三. ?? 福利抽獎(jiǎng)
?? 送書(shū)抽獎(jiǎng)活動(dòng) (五選一)??
詳情點(diǎn)擊:https://item.jd.com/13251159.html
詳情點(diǎn)擊:https://item.jd.com/13568136.html
詳情點(diǎn)擊:https://item.jd.com/13432555.html文章來(lái)源:http://www.zghlxwxcb.cn/news/detail-478163.html
詳情點(diǎn)擊:https://item.jd.com/13836258.html
詳情點(diǎn)擊:https://item.jd.com/13432555.html
本次活動(dòng)贈(zèng)書(shū)5本,評(píng)論區(qū)抽取5位小伙伴送書(shū)
活動(dòng)時(shí)間: 截止到2023-06-18 20: 00 參與方式: 點(diǎn)贊、收藏本文章,并評(píng)論“Java不卷,我們不卷” 抽獎(jiǎng)時(shí)間: 2023.06.18 公布時(shí)間: 2023.06.18 通知方式:交流群內(nèi)公布或私信通知
更多活動(dòng)可繼續(xù)關(guān)注上方??的博客,好運(yùn)總會(huì)輪到你?。?!文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-478163.html
到了這里,關(guān)于【文末送書(shū)】微服務(wù)拆分規(guī)范的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!