分布式服務框架目前市面上用的最多的估計就是上面兩個框架,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...