1. <strong id="7actg"></strong>
    2. <table id="7actg"></table>

    3. <address id="7actg"></address>
      <address id="7actg"></address>
      1. <object id="7actg"><tt id="7actg"></tt></object>

        .NET微服務(wù)最佳實踐eShopOnContainers

        共 1702字,需瀏覽 4分鐘

         ·

        2021-03-05 18:56


        本文翻譯自微軟Docs, 內(nèi)嵌譯者多年使用的參悟,如理解有誤,請不吝賜教。

        微軟與社區(qū)專家合作,開發(fā)了功能齊全的云原生微服務(wù)示例應(yīng)用eShopOnContainers。
        該應(yīng)用旨在展示使用.NET、Docker以及可選的Azure,Kubernetes技術(shù)來構(gòu)建電商平臺。

        功能 & 要求

        簡要回顧eShopOnContainers應(yīng)用的業(yè)務(wù)功能和技術(shù)目標,示例應(yīng)用代表一個出售各種實體產(chǎn)品的(例如T恤和咖啡杯)電商平臺。

        電商平臺要實現(xiàn)的一些基本功能:

        ?列出商品目錄?按類型過濾商品?按品牌過濾商品?將商品添加到購物車?編輯或刪除購物車中的物品?支付?注冊帳號?登錄?登出?訂單審核

        示例應(yīng)用還具有以下非功能性要求:

        ?必須具有高可用性,并且必須自動擴展以滿足不斷增長的流量(并在流量減少后再縮減)。?提供易于使用的運行狀態(tài)監(jiān)視和診斷日志,以幫助解決遇到的問題。?它應(yīng)該支持敏捷開發(fā),包括對持續(xù)集成和部署(CI/CD)的支持。?除了支持傳統(tǒng)的Web前端和SPA Web前端,該應(yīng)用程序還必須支持不同系統(tǒng)的移動客戶端應(yīng)用程序。?支持跨平臺托管和跨平臺開發(fā)。


        Web或移動客戶端通過HTTPS訪問ASP.NET Core MVC服務(wù)器程序或API網(wǎng)關(guān)程序

        API網(wǎng)關(guān)具有多種優(yōu)勢,例如將后端服務(wù)與各個前端客戶端解耦,并提供更好的安全性。

        該應(yīng)用程序還利用了BFF模式(服務(wù)于前端的后端),該模式建議為每個前端客戶端創(chuàng)建單獨的API網(wǎng)關(guān)。

        上面的體系圖演示了基于請求是來自Web客戶端還是來自移動客戶端的API網(wǎng)關(guān)。


        示例應(yīng)用的功能被分解為許多不同的微服務(wù):

        ?負責(zé)身份驗證和身份?列出產(chǎn)品目錄中的商品?購物車管理以及訂單管理。這些獨立的服務(wù)都有其自己的持久化存儲,沒有可以與所有服務(wù)交互的單個主數(shù)據(jù)存儲,
        服務(wù)之間的協(xié)調(diào)和通信是通過消息總線來完成的。



        每個微服務(wù)根據(jù)其各自的需求獨立設(shè)計。因此它們的技術(shù)堆棧是可以不同的(目前服務(wù)均是.NET構(gòu)建并為云設(shè)計)。

        簡單的服務(wù)提供了基本的創(chuàng)建、讀取、更新、刪除訪問(CRUD),而更高級的服務(wù)則使用領(lǐng)域驅(qū)動設(shè)計方法和模式來管理業(yè)務(wù)復(fù)雜性。

        代碼結(jié)構(gòu)

        因為eShopOnContainers示例程序使用微服務(wù),其GitHub存儲庫中包含許多獨立的項目文件。
        除了獨立的項目方案和可執(zhí)行文件之外,各種服務(wù)還被設(shè)計為在獨立的容器中運行。

        下圖顯示了完整的Visual Studio解決方案,管理組織了各種不同的項目。

        該代碼被組織為支持不同的微服務(wù),并且在每個微服務(wù)中,代碼分為領(lǐng)域邏輯、基礎(chǔ)設(shè)施以及用戶界面/服務(wù)端點。

        Ref

        ?  https://docs.microsoft.com/en-us/dotnet/architecture/cloud-native/introduce-eshoponcontainers-reference-app?  https://github.com/dotnet-architecture/eShopOnContainers


        往期精彩回顧




        【推薦】.NET Core開發(fā)實戰(zhàn)視頻課程 ★★★

        .NET Core實戰(zhàn)項目之CMS 第一章 入門篇-開篇及總體規(guī)劃

        【.NET Core微服務(wù)實戰(zhàn)-統(tǒng)一身份認證】開篇及目錄索引

        Redis基本使用及百億數(shù)據(jù)量中的使用技巧分享(附視頻地址及觀看指南)

        .NET Core中的一個接口多種實現(xiàn)的依賴注入與動態(tài)選擇看這篇就夠了

        10個小技巧助您寫出高性能的ASP.NET Core代碼

        用abp vNext快速開發(fā)Quartz.NET定時任務(wù)管理界面

        在ASP.NET Core中創(chuàng)建基于Quartz.NET托管服務(wù)輕松實現(xiàn)作業(yè)調(diào)度

        現(xiàn)身說法:實際業(yè)務(wù)出發(fā)分析百億數(shù)據(jù)量下的多表查詢優(yōu)化

        關(guān)于C#異步編程你應(yīng)該了解的幾點建議

        C#異步編程看這篇就夠了


        瀏覽 70
        點贊
        評論
        收藏
        分享

        手機掃一掃分享

        分享
        舉報
        評論
        圖片
        表情
        推薦
        點贊
        評論
        收藏
        分享

        手機掃一掃分享

        分享
        舉報
        1. <strong id="7actg"></strong>
        2. <table id="7actg"></table>

        3. <address id="7actg"></address>
          <address id="7actg"></address>
          1. <object id="7actg"><tt id="7actg"></tt></object>
            懂色AV绯色av蜜桃av | 口述三个男人躁我一个爽漫画 | 美女免费网站 | 麻豆伦理在线观看 | 日本wwwwxxxx泡妞下课 | 无码人妻精品一区二区蜜桃在线看 | 国产伦精品一区二区三区免.费 | 免费在线黄片 | 91露脸熟女四川熟女在线观看 | 丰满美女av |