<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          現(xiàn)代云原生設(shè)計(jì)理念

          共 1616字,需瀏覽 4分鐘

           ·

          2021-02-06 08:54

          前文傳送門(mén)

          現(xiàn)代設(shè)計(jì)理念

          你會(huì)如何設(shè)計(jì)云原生應(yīng)用程序?

          需要遵循哪些原則、模式和最佳實(shí)踐?

          需要特別關(guān)注些底層/操作

          十二要素應(yīng)用程序

          目前被普遍認(rèn)可的基于云的方法論是"十二要素應(yīng)用程序",它給出了開(kāi)發(fā)人員要遵循的一組原則和實(shí)踐,幫助構(gòu)建針對(duì)現(xiàn)代云環(huán)境優(yōu)化的應(yīng)用程序。

          盡管適用于任何基于Web的應(yīng)用程序,但許多從業(yè)者都將“十二要素”視為構(gòu)建云原生應(yīng)用程序的堅(jiān)實(shí)基礎(chǔ)。基于這些原則構(gòu)建的系統(tǒng)可以快速部署和擴(kuò)展,并可以添加功能以對(duì)市場(chǎng)變化做出快速反應(yīng)。

          重申“十二要素”方法論:

          要素描述
          Code Base代碼倉(cāng)庫(kù)中一套代碼,多處部署
          Dependencies每個(gè)微服務(wù)顯式聲明并打包自己的依賴(lài)項(xiàng)、變更項(xiàng)
          Configurations在環(huán)境中外掛配置
          Backing Services將支撐性服務(wù)(數(shù)據(jù)存儲(chǔ),緩存,消息代理)看做附加資源,通過(guò)可尋址的URL公開(kāi)
          Build, Release, Run嚴(yán)格區(qū)分構(gòu)建和運(yùn)行階段,現(xiàn)代CI/CD技術(shù)實(shí)現(xiàn)了這一原則。
          Processes將應(yīng)用程序作為一個(gè)或多個(gè)無(wú)狀態(tài)進(jìn)程執(zhí)行
          Port Binding通過(guò)端口綁定暴露服務(wù)
          Concurrency對(duì)進(jìn)程模型進(jìn)行橫向擴(kuò)展
          Disposability快速啟動(dòng)和正常關(guān)閉可最大程度地提高魯棒性
          Dev/Prod Parity保持開(kāi)發(fā)、生產(chǎn)盡可能相似
          Logging將日志視為事件流,使用事件聚合器將事件傳遞到數(shù)據(jù)挖掘/日志管理工具
          Admin Processes用一次性動(dòng)作 執(zhí)行管理任務(wù)

          凱文·霍夫曼(Kevin Hoffman)詳細(xì)介紹了最初的12個(gè)要素(寫(xiě)于2011年)。此外,他針對(duì)現(xiàn)代云應(yīng)用程序提出另外三個(gè)要素。

          新要素描述
          API First使一切成為服務(wù)(如果你的代碼將被前端、網(wǎng)關(guān)或其他服務(wù)使用)
          Telemetry在程序設(shè)計(jì)中包含遙測(cè)、健康檢查
          Authentication/Authorization一開(kāi)始就實(shí)現(xiàn)身份認(rèn)證和鑒權(quán)

          關(guān)鍵的設(shè)計(jì)考量

          除了十二要素方法提供的指導(dǎo)之外,還必須注意幾個(gè)關(guān)鍵的設(shè)計(jì)考量。

          ??Communication 通信

          • 前端如何與后端服務(wù)通信???

          ? ? ? ? ?是直接通信嗎?還是提煉出后端網(wǎng)關(guān) (提供靈活性、管控力和安全性) ?

          • 后端服務(wù)之間如何通信?

          ? ? ? ? ?直接Http調(diào)用 (可能導(dǎo)致耦合,影響性能和敏捷性) ??是考慮使用queue/Topic技術(shù)解耦消息?

          第4章“云原生通信模式”詳細(xì)介紹了通信。

          ??Resiliency 彈性

          微服務(wù)架構(gòu)將系統(tǒng)從進(jìn)程內(nèi)網(wǎng)絡(luò)通信轉(zhuǎn)移到進(jìn)程外網(wǎng)絡(luò)通信。??

          在分布式體系結(jié)構(gòu)中,

          • 當(dāng)服務(wù)B不響應(yīng)來(lái)自服務(wù)A的網(wǎng)絡(luò)請(qǐng)求,會(huì)發(fā)生什么???

          • ?當(dāng)服務(wù)C臨時(shí)不可用,其他調(diào)用C的服務(wù)被阻塞又該怎么辦?

          第6章“云原生彈性”詳細(xì)介紹了彈性。

          ??Distributed Data 分布式數(shù)據(jù)

          按照設(shè)計(jì)預(yù)期,每個(gè)微服務(wù)都內(nèi)嵌自己的數(shù)據(jù),通過(guò)公開(kāi)接口暴露。

          如果是這樣,如何實(shí)現(xiàn)跨多個(gè)服務(wù)的數(shù)據(jù)查詢(xún)/事務(wù)?

          分布式數(shù)據(jù)將在第5章“云原生數(shù)據(jù)模式”中詳細(xì)介紹。

          ??Identity 身份

          您的服務(wù)將如何識(shí)別誰(shuí)在訪(fǎng)問(wèn)它以及他們擁有哪些權(quán)限?

          身份將在第8章“身份”中詳細(xì)介紹。

          Ref

          • https://tanzu.vmware.com/content/blog/beyond-the-twelve-factor-app
          • https://docs.microsoft.com/en-us/dotnet/architecture/cloud-native/definition
          • ??后臺(tái)回復(fù) cloud-native, 獲取微軟官方《云原生.pdf》下載鏈接????





          更多干貨及最佳實(shí)踐分享
          關(guān)注并星標(biāo)我們
          ~。。~


          瀏覽 25
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          評(píng)論
          圖片
          表情
          推薦
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  国产黄色免费观看 | 西西大胆无码视频 | 北条麻妃无码播放 | 国产黄色网啪啪啪精品视频a | igaO免费观看 |