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

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

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

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

Dapr和Rainbond集成,實現(xiàn)云原生BaaS和模塊化微服務(wù)開發(fā)

OSC開源社區(qū) ? 來源:OSC開源社區(qū) ? 2023-04-14 09:42 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

背景

Dapr 是一個開源的分布式應(yīng)用運行時,幫助開發(fā)者構(gòu)建松耦合的分布式應(yīng)用程序,具有良好的可擴(kuò)展性和可維護(hù)性。Rainbond 是一款企業(yè)級的云原生應(yīng)用管理平臺,提供了豐富的功能和工具,方便開發(fā)者管理和部署應(yīng)用。Rainbond 和 Dapr 結(jié)合可以提供以下價值點:

「1.為Dapr擴(kuò)展云原生支持:」Rainbond 提供了一套完整的云原生應(yīng)用支持方案,包括應(yīng)用開發(fā)、應(yīng)用編排、應(yīng)用交付、應(yīng)用運維等應(yīng)用全生命周期管理能力,而 Dapr 只是應(yīng)用開發(fā)框架,包括應(yīng)用開發(fā)模型、服務(wù)發(fā)現(xiàn)、事件驅(qū)動等功能。將 Rainbond 和 Dapr 結(jié)合起來可以提供更完整的云原生應(yīng)用支持,幫助開發(fā)人員更快地構(gòu)建和部署應(yīng)用。

「2.讓Dapr應(yīng)用可移植性增強:」Rainbond提供應(yīng)用模版能力,Dapr開發(fā)的應(yīng)用以模版的方式打包,可以方便交付和遷移到其他平臺運行。

「3.為Rainbond擴(kuò)充服務(wù)治理能力:」Rainbond 支持通過插件擴(kuò)展服務(wù)治理能力,和 Dapr結(jié)合,可以通過Dapr的方式實現(xiàn)服務(wù)治理。將二者結(jié)合起來,可以提供更完整的服務(wù)治理功能,幫助開發(fā)人員更好地管理和控制應(yīng)用中的服務(wù)。

「4.為Rainbond增加BaaS能力:」在Rainbond上開發(fā)軟件,需要自己安裝后端數(shù)據(jù)庫和中間件,而Dapr將后端能力以API的方式對外提供,開發(fā)者只需要通過API統(tǒng)一訪問后端能力,實現(xiàn)了BaaS體驗。

總之,Dapr和Rainbond能互相補充能力不足,Rainbond 解決了應(yīng)用生命周期管理的問題,開發(fā)者不需要懂底層技術(shù),但還是需要了解后端服務(wù), Dapr 補足了這塊能力,讓開發(fā)者更加專注業(yè)務(wù)。

Rainbond和Dapr的整合思路

9bc68666-d9e7-11ed-bfe3-dac502259ad0.png

在 Dapr 微服務(wù)框架的業(yè)務(wù)體系中,Daprd 是整個業(yè)務(wù)的核心,應(yīng)用程序通過運行時 API 發(fā)送請求給 Daprd,Daprd 負(fù)責(zé)處理這些請求,并與底層服務(wù)進(jìn)行交互。Daprd 是由 Dapr Services 中的 dapr-sidecar-injector 服務(wù)進(jìn)行注入的,當(dāng) Pod 滿足注入條件后進(jìn)行注入。同時 Dapr Services 中的 dapr-operator 會監(jiān)聽整個集群下的 Dapr 配置資源(CRD),當(dāng)捕獲到有 Dapr 配置類資源的創(chuàng)建后,會記錄在內(nèi)存中,再次注入的 Daprd 如果 Pod 聲明了使用該配置,則會提供對應(yīng)的能力。

「Dapr Service 的安裝」:Rainbond 將 Dapr Services 資源進(jìn)行了整合,作為一個插件應(yīng)用上架到了應(yīng)用商店,通過安裝便可以快速讓我們的集群具備 dapr 微服務(wù)架構(gòu)能力,避免了集群中執(zhí)行 dapr init -k命令,同時解決了國外鏡像拉取的問題。

「DaprD注入」:傳統(tǒng)注入方式我們需要手動添加注入條件字段,費時費力且不易維護(hù)還容易出錯;Rainbond 支持通過切換應(yīng)用的治理模式的方式,為我們的 Pod 添加不同屬性字段以滿足不同微服務(wù)架構(gòu)的注入條件,從而達(dá)到批量注入,快速使用、便于管理的效果。

「Dapr配置」:Dapr 提供了四種配置 Daprd 的資源來擴(kuò)展我們的服務(wù)治理能力,分別為Configuration、Component、Resiliency、Subscription,我們需要通過編寫 Yaml 的形式在集群中創(chuàng)建這些資源供業(yè)務(wù)組件使用,Rainbond 平臺在應(yīng)用的 k8s 資源的管理入口,其效果與kubectl有些類似但比kubectl更易于管理。其中 Configuration 資源用于存儲應(yīng)用程序的配置信息,例如連接字符串、密鑰、證書等,需要為 Pod 配置的 annotations屬性去聲明才可使用,Rainbond 的組件視圖提供對annotations屬性配置,簡化了我們配置的流程。

「Dapr Component安裝和對接」:Rainbond 的應(yīng)用商店已經(jīng)有很多后端實現(xiàn),如 MySQL、Redis等,在Rainbond里可以一鍵安裝便可使用。在Dapr應(yīng)用的K8s資源管理里配置Component的yaml,綁定后端服務(wù)的地址。

「Dapr應(yīng)用開發(fā):」Dapr開發(fā)的應(yīng)用可以用源碼、鏡像、yaml部署到Rainbond平臺上,然后根據(jù)Dapr的API規(guī)范訪問后端服務(wù),Rainbond提供對Dapr應(yīng)用的持續(xù)集成、持續(xù)交付、環(huán)境管理、配置管理、日志和性能監(jiān)控、訪問網(wǎng)關(guān)、應(yīng)用運維等能力,輔助Dapr應(yīng)用的開發(fā)和管理。

部署和使用流程

基于 Rainbond 使用 Dpar 的目標(biāo):

  • 一鍵部署 Dapr Service,讓集群具備 Dapr 微服務(wù)架構(gòu)能力。
  • 自動為業(yè)務(wù)組件注入 Daprd。
  • 可視化管理 Dapr 配置。
  • 簡化 Daprd 屬性參數(shù)配置流程。
  • 多種方式交付你的 Dapr 業(yè)務(wù)。

下面我通過部署一個發(fā)布訂閱的示例,供大家快速了解并掌握 Dapr 在 Rainbond 中是如何使用的

前提條件

  1. Rainbond 版本大于 v5.13。
  2. Rainbond 已經(jīng)對接過開源應(yīng)用商店并擁有推送權(quán)限。

實踐步驟

9bdaf326-d9e7-11ed-bfe3-dac502259ad0.png

1. 安裝 Rainbond Service Mesh 插件

Rainbond ServiceMesh 插件負(fù)責(zé)按照指定治理模式對應(yīng)用組件進(jìn)行加工調(diào)整,以滿足微服務(wù)治理插件注入的基本條件。通過在平臺管理->應(yīng)?市場->開源應(yīng)?商店->搜索 Rainbond-ServiceMesh 并進(jìn)行安裝

2. 安裝Dapr 應(yīng)用插件

創(chuàng)建一個以 dapr-system 為英文名的團(tuán)隊,安裝 Dapr Services 。通過在平臺管理->應(yīng)?市場->開源應(yīng)?商店->搜索 Rainbond-Dapr 并進(jìn)行安裝。

3. 綁定 Component

Dapr 支持對接多種 Component 實現(xiàn),如 Redis、Mysql、Oauth等,在 Rainbond 平臺中安裝也非常簡單,大部分實現(xiàn)都可以在 Rainbond 應(yīng)用商店中找到,少數(shù)不支持的存儲也歡迎大家參與應(yīng)用制作發(fā)布到應(yīng)用商店中來。本次示例我們需要安裝的是 Redis 通過在平臺管理->應(yīng)?市場->開源應(yīng)?商店->搜索 Redis 并進(jìn)行安裝。安裝完成后,在應(yīng)用視圖->k8s資源->編寫 Component 資源進(jìn)行綁定。

apiVersion:dapr.io/v1alpha1
kind:Component
metadata:
name:pubsub
spec:
type:pubsub.redis
version:v1
metadata:
-name:"redisHost"
value:"YOUR_REDIS_HOST_HERE"
-name:"redisPassword"
value:"YOUR_REDIS_PASSWORD_HERE"

如果是 MySQL ,步驟是平臺管理->應(yīng)?市場->開源應(yīng)?商店->搜索 MySQL 并進(jìn)行安裝,安裝完成后在 應(yīng)用視圖->k8s資源->編寫 Component 資源進(jìn)行綁定。

apiVersion:dapr.io/v1alpha1
kind:Component
metadata:
name:
spec:
type:state.mysql
version:v1
metadata:
-name:connectionString
value:""
-name:schemaName
value:""
-name:tableName
value:""
-name:pemPath
value:""

4. 切換應(yīng)用治理模式

將業(yè)務(wù)應(yīng)用的治理模式切換至 Dapr 。通過在 應(yīng)用視圖->治理模式->選擇 Dapr 治理模式進(jìn)行切換。其中 dapr 治理模式會為我們組件的 annotations 屬性添加字段dapr.io/enabled: "true"以及dapr.io/app-id="xxx" 其中 xxx 為組件的英文名,由于dapr.io/app-id是Dapr 體系中的唯一標(biāo)識,Rainbond 支持自行配置,如果檢測到有該屬性字段,則優(yōu)先使用原配置。滿足注入條件后,dapr-sidecar-injector 服務(wù)開始工作,為我們的業(yè)務(wù)組件注入 Daprd。

5. 部署業(yè)務(wù)

Rainbond 提供了多種方式部署你的業(yè)務(wù),鏡像、Helm、Yaml、源碼等等。這里我選擇使用鏡像部署,具體步驟為: 應(yīng)用視圖->添加組件->指定鏡像->填寫鏡像地址。

demo鏡像地址:
registry.cn-hangzhou.aliyuncs.com/zhangqihang/pubsub-node-subscriber:latest
registry.cn-hangzhou.aliyuncs.com/zhangqihang/pubsub-react-form:latest
registry.cn-hangzhou.aliyuncs.com/zhangqihang/pubsub-go-subscriber:latest

由于 Dapr 中消息隊列需要為組件 annotations 屬性設(shè)置 dapr.io/app-port 字段,切換治理模式的時候并沒有自動生成,所以我們需要在組件視圖->其他設(shè)置->Kubernetes屬性->新增屬性->選擇 annotations->添加 dapr.io/app-port=組件端口字段。同理其他擴(kuò)展的 annotations 屬性字段均在此處配置。

6. 部署最終效果

pubsub-react-form 組件的組件視圖->端口->打開對外服務(wù)便可實現(xiàn)訪問消息發(fā)布組件,向訂閱 A、B、C中發(fā)布消息,通過觀察pubsub-node-subscriberpubsub-go-subscriber組件的日志可看到訂閱的內(nèi)容,日志位置:組件視圖->日志。

7. 通過Dapr控制臺管理

訪問 dapr dashboard 可以查看到我們的微服務(wù)組件在 Dapr 中的注冊信息。

9be97c20-d9e7-11ed-bfe3-dac502259ad0.png

8.發(fā)布應(yīng)用模版

Rainbond提供應(yīng)用一鍵發(fā)布應(yīng)用模版的能力,在Dapr開發(fā)應(yīng)用的應(yīng)用視圖,點擊發(fā)布來發(fā)布應(yīng)用模版,并通過應(yīng)用模版在線和離線快速安裝到其他環(huán)境。不過在其他環(huán)境使用時需要先安裝Rainbond和Dapr基礎(chǔ)環(huán)境。

在Rainbond上擴(kuò)展Dapr

鏈路追蹤

鏈路追蹤是一種網(wǎng)絡(luò)監(jiān)控和故障排除技術(shù),用于追蹤數(shù)據(jù)包在網(wǎng)絡(luò)中的路徑和經(jīng)過的節(jié)點,以便優(yōu)化網(wǎng)絡(luò)性能和發(fā)現(xiàn)問題,在 Dapr 中是通過配置Configuration資源綁定追蹤器實現(xiàn)進(jìn)行工作的。下面是以 Zipkin 追蹤器實現(xiàn)的Configuration資源配置示例。更多詳見 Dapr Observability[1]。

應(yīng)用視圖->k8s資源->編寫 Configuration 資源

apiVersion:dapr.io/v1alpha1
kind:Configuration
metadata:
name:daprConfig
namespace:default
spec:
tracing:
samplingRate:"1"
zipkin:
endpointAddress:"http://localhost:9411/api/v2/spans"

熔斷限流

限制每秒允許的最大 HTTP 請求數(shù),速率限制可以保護(hù)您的應(yīng)用程序免受拒絕服務(wù) (DOS) 攻擊。我們需要配置component資源作為中間件,然后通過Configuration 資源進(jìn)行綁定,然后在業(yè)務(wù)組件中配置掛載使用。

應(yīng)用視圖->k8s資源->編寫 Component 資源作為中間件,設(shè)置每秒的最大請求數(shù)為 10。

apiVersion:dapr.io/v1alpha1
kind:Component
metadata:
name:ratelimit
spec:
type:middleware.http.ratelimit
version:v1
metadata:
-name:maxRequestsPerSecond
value:10

應(yīng)用視圖->k8s資源->編寫 Configuration 配置資源綁定中間件。

apiVersion:dapr.io/v1alpha1
kind:Configuration
metadata:
name:appconfig
spec:
httpPipeline:
handlers:
-name:ratelimit
type:middleware.http.ratelimit

組件視圖->其他設(shè)置->Kubernetes屬性->新增屬性->選擇annotations->添加 dapr.io/config 屬性字段綁定 Configuration 。


審核編輯 :李倩


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

    關(guān)注

    0

    文章

    358

    瀏覽量

    22701
  • 微服務(wù)
    +關(guān)注

    關(guān)注

    0

    文章

    150

    瀏覽量

    8105
  • 云原生
    +關(guān)注

    關(guān)注

    0

    文章

    266

    瀏覽量

    8581

原文標(biāo)題:Dapr和Rainbond集成,實現(xiàn)云原生BaaS和模塊化微服務(wù)開發(fā)

文章出處:【微信號:OSC開源社區(qū),微信公眾號:OSC開源社區(qū)】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

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

掃碼添加小助手

加入工程師交流群

    評論

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

    模塊化高精度銣原子鐘存在的意義

    在時頻計量領(lǐng)域,銣原子鐘以其穩(wěn)定性和可靠性成為通信、導(dǎo)航、科研等領(lǐng)域的核心設(shè)備。西安同步電子科技有限公司的SYN3306型高性能銣原子鐘,通過將10MHz輸出設(shè)計為模塊化結(jié)構(gòu),實現(xiàn)了從“單一功能設(shè)備
    的頭像 發(fā)表于 01-21 19:09 ?129次閱讀

    Istio服務(wù)網(wǎng)格生產(chǎn)環(huán)境性能調(diào)優(yōu)的最佳實踐

    隨著微服務(wù)架構(gòu)的普及,服務(wù)間通信的復(fù)雜度呈指數(shù)級增長。傳統(tǒng)的應(yīng)用層負(fù)載均衡和服務(wù)發(fā)現(xiàn)方案已經(jīng)無法滿足現(xiàn)代云原生應(yīng)用的需求。Istio作為目前最成熟的
    的頭像 發(fā)表于 01-20 15:40 ?216次閱讀

    鼎陽科技推PXIe模塊化示波器、PXIe模塊化矢量網(wǎng)絡(luò)分析儀產(chǎn)品組合,構(gòu)建新一代模塊化、軟件定義的測試平臺

    、卓越性能與靈活的系統(tǒng)集成能力,這三款產(chǎn)品進(jìn)一步豐富了公司的產(chǎn)品矩陣,為通信、新能源、半導(dǎo)體等領(lǐng)域的研發(fā)與生產(chǎn)測試提供更靈活高效的解決方案。 模塊化數(shù)字示波器 高分辨率模塊化示波器 鼎陽MS高分辨率
    的頭像 發(fā)表于 01-14 10:35 ?6.6w次閱讀
    鼎陽科技推PXIe<b class='flag-5'>模塊化</b>示波器、PXIe<b class='flag-5'>模塊化</b>矢量網(wǎng)絡(luò)分析儀產(chǎn)品組合,構(gòu)建新一代<b class='flag-5'>模塊化</b>、軟件定義的測試平臺

    香港服務(wù)器支持Docker和Kubernetes嗎?

    云原生技術(shù)成為主流的今天,Docker和Kubernetes(K8s)已成為現(xiàn)代應(yīng)用開發(fā)和部署的事實標(biāo)準(zhǔn)。對于選擇香港服務(wù)器的開發(fā)者與企
    的頭像 發(fā)表于 10-21 15:47 ?697次閱讀

    儲能變流升壓一體機:模塊化集成設(shè)計,賦能高效可靠儲能系統(tǒng)

    儲能變流升壓一體機憑借其先進(jìn)的模塊化設(shè)計與工廠預(yù)制模式,為現(xiàn)代儲能電站建設(shè)提供了高效、可靠的解決方案,有效縮短了現(xiàn)場施工周期,降低了整體工程成本與復(fù)雜度。 核心優(yōu)勢與顯著特點 高度集成,快速部署
    的頭像 發(fā)表于 08-18 10:46 ?1026次閱讀
    儲能變流升壓一體機:<b class='flag-5'>模塊化</b><b class='flag-5'>集成</b>設(shè)計,賦能高效可靠儲能系統(tǒng)

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

    ,電商API在高并發(fā)、低延遲和數(shù)據(jù)一致性方面面臨嚴(yán)峻挑戰(zhàn)。本文將從基礎(chǔ)概念出發(fā),逐步分析優(yōu)化策略,幫助開發(fā)者構(gòu)建高性能、可靠的電商API系統(tǒng)。 1. 微服務(wù)架構(gòu)在電商中的應(yīng)用 微服務(wù)架構(gòu)將傳統(tǒng)單體應(yīng)用分解為多個小型
    的頭像 發(fā)表于 07-23 14:30 ?629次閱讀
    電商API的<b class='flag-5'>微服務(wù)</b>架構(gòu)優(yōu)化策略

    新品推薦|模塊化集成式高速連接器

    LRM連接器隨著電子技術(shù)的快速發(fā)展,在電力傳輸、工業(yè)自動、航空航天等領(lǐng)域,對高效、穩(wěn)定、可靠的電氣連接解決方案的需求日益增長。因此日晟萬晟開發(fā)了新一代模塊化集成式高速連接器-LRM系
    的頭像 發(fā)表于 07-07 18:15 ?1414次閱讀
    新品推薦|<b class='flag-5'>模塊化</b><b class='flag-5'>集成</b>式高速連接器

    云原生環(huán)境里Nginx的故障排查思路

    本文聚焦于云原生環(huán)境下Nginx的故障排查思路。隨著云原生技術(shù)的廣泛應(yīng)用,Nginx作為常用的高性能Web服務(wù)器和反向代理服務(wù)器,在容器
    的頭像 發(fā)表于 06-17 13:53 ?987次閱讀
    <b class='flag-5'>云原生</b>環(huán)境里Nginx的故障排查思路

    鴻蒙5開發(fā)寶藏案例分享---模塊化設(shè)計案例分享

    代碼詳解,保證接地氣! 一、為什么必須模塊化? 官方文檔強調(diào): “模塊化是大型應(yīng)用的生命線” 。當(dāng)團(tuán)隊協(xié)作開發(fā)時(比如購物App分支付、商品、訂單團(tuán)隊),模塊化
    發(fā)表于 06-12 16:17

    原理圖模塊化,BOM 物料位號處理

    原理圖模塊化,把常用的模塊保存成一個PART(在TOOL 菜單下 選擇 Generate Part)。保存成OLB格式。使用的時候,就像使用元器件一樣,從庫里面拖出來直接放到原理圖上即可。 問題是
    發(fā)表于 06-09 19:27

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

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

    從 Java 到 Go:面向?qū)ο蟮木奕伺c云原生的輕騎兵

    (Goroutine/Channel) 在 云原生基礎(chǔ)設(shè)施領(lǐng)域 占據(jù)主導(dǎo)地位,它也是 Java 開發(fā)者探索云原生技術(shù)棧的關(guān)鍵補
    的頭像 發(fā)表于 04-25 11:13 ?653次閱讀

    AI與云端生產(chǎn)力結(jié)合應(yīng)用場景及技術(shù)解析(2025)

    AI與云端生產(chǎn)力結(jié)合應(yīng)用場景及技術(shù)解析(2025) 一、核心技術(shù)架構(gòu)? 云原生與智能算力網(wǎng)絡(luò)? 采用容器、微服務(wù)云原生技術(shù)實現(xiàn)應(yīng)用敏捷
    的頭像 發(fā)表于 04-15 08:41 ?932次閱讀
    AI與云端生產(chǎn)力結(jié)合應(yīng)用場景及技術(shù)解析(2025)

    MCU-40型自動測量是如何實現(xiàn)分布式模塊化?

    設(shè)計,打破了技術(shù)瓶頸,成為行業(yè)智能升級的標(biāo)桿。一、分布式模塊化設(shè)計:靈活性與可靠性的雙重突破分布式模塊化設(shè)計的核心在于將系統(tǒng)拆分為獨立的功能模塊,通過智能組網(wǎng)
    的頭像 發(fā)表于 04-10 14:03 ?841次閱讀
    MCU-40型自動測量是如何<b class='flag-5'>實現(xiàn)</b>分布式<b class='flag-5'>模塊化</b>?

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

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