模擬springcloud微服務呼叫

2021-10-03 21:21:05 字數 1038 閱讀 5813

分布式服務框架目前市面上用的最多的估計就是上面兩個框架,dubbo與springcloud
關於這兩個框架的對比 我個人跟認為 dubbo是遠端服務呼叫框架 springcloud更是微服務框架 從效能上來說 dubbo效能更好 但是本身的功能有限 springcloud 是提供了一整套微服務的框架 除了遠端服務呼叫 還有閘道器 呼叫鏈追蹤 配置中心等 並且 springcloud提供的外部服務主推http介面 這樣可以對內提供服務的同時 這個介面還能對外提供服務 但是其序列化中 主要依靠http報文的轉換 並不像dubbo使用byte陣列進行序列化 並且 在傳輸的框架上 dubbo使用netty 進行傳輸 非同步非阻塞io 雖然現在 servlet3.1也支援 但是 要依靠外部的容器公升級 與 webflux 的配合 但是在兩者使用上 我覺得 springcloud是真的舒服

下面 我參考 springcloud模擬了乙個微服務rpc呼叫框架 其中使用zookeeper 臨時節點作為註冊發現的功能,網路間傳輸

原理:提供者啟動後 會降自身的ip與埠 註冊到zookeeper列表 並且 將自身的url寫到節點的資料中去

消費者 監聽這個節點 並 事實改變節點列表內的資料

下面是原始碼位址

模擬springcloud服務呼叫原始碼

啟動方式

配置好zookeeper位址

消費者:

提供者:

啟動後 在提供者未啟動的情況下呼叫 會丟擲異常 這裡 可以 作為降級 模擬

服務提供者未啟動效果

當啟動多個服務提供者效果:

我這裡 啟動了兩個提供者 分別是不同的埠 每次 呼叫都會輪訓的切換節點呼叫

微服務架構 spring cloud

微服務架構搭建步驟 1.建立服務註冊中心 1 填加依賴 org.springframework.cloudgroupid spring cloud starter eureka serverartifactid dependency org.springframework.cloudgroupid ...

SpringCloud微服務框架

因為springcloud出現,對微服務技術提供了非常大的幫助,因為springcloud 提供了一套完整的微服務解決方案,不像其他框架只是解決了微服務中某個問題.springcloud是基於springboot基礎之上開發的微服務框架,springcloud是一套目前非常完整的微服務解決方案框架,...

SpringCloud 微服務 搭建

單體橫向架構思想 整個專案由乙個大工程搞定。採用分布式部署,做負載均衡。也能解決日活躍量百萬級別專案 缺點 維護成本高,打包部署困難,新員工接手難度大。牽一髮而動全身 soa架構 面向服務的體系結構 service oriented architecture,soa 是乙個元件模型架構思想,經歷過s...