相容dubbo的微服務框架dubbogo;dubbo的完整go語言實現
1 說明
一個支援 dubbo 協議的 go 微服務框架;dubbo 的完整 go 語言實現dubbogo,以及其程式碼示例dubbogo-examples。
2 feature
v0.2 feature list:
- 基於 dubbo(hessian2.0) + tcp 實現的 go client 以阻塞並行方式呼叫 dubbo(hessian2)原生協議的 java server 的服務;
v 0.1.2 feature list:
- 基於 jsonrpc 2.0 + http 實現的 go client 可以呼叫基於 dubbogo(jsonrpc 2.0)實現的 go server 的服務;
- 基於 jsonrpc 2.0 + http 實現的 go client 可以呼叫基於 dubbo(jsonrpc 2.0)實現的 java server 的服務;
- 基於 jsonrpc 2.0 + http 實現的 java client 可以呼叫基於 dubbogo(jsonrpc 2.0)實現的 go server 的服務;
v 2.6.5.0 feature list:
Role: Consumer(√), Provider(√);
Transport: HTTP(√), TCP(√);
Codec: JsonRPC v2(√), Hessian v2(√);
Registry: ZooKeeper(√);
Cluster Strategy: Failover(√);
Load Balance: Random(√);
Filter: Echo Health Check(√);
2.1 補充
將近兩年【2016/10/07 ~ 2018/05/18】的多次延期後,v0.2.0 於今日釋出,目前僅僅在 client 層面支援了 dubbo 原生協議。
v0.1.2 其實現基於 http + jsonrpc2.0.
v 2.6.5.0 作為一個大版本迭代,對之前版本的程式碼進行了重構。基於 dubbo 的 extension 模組和分層的程式碼設計 (包括 protocol layer, registry layer, cluster layer, config 等等)。我們的目標是:你可以對這些分層介面進行新的實現,並通過呼叫 extension 模組的 “ extension.SetXXX ” 方法來覆蓋 dubbo-go [同 go-for-apache-dubbo ] 的預設實現,以完成自己的特殊需求而無需修改原始碼;
專案已經合併進 dubbo 社群,詳情請檢視最新專案地址: https://github.com/dubbo/go-for-apache-dubbo
3 程式碼示例
- 在 dubbogo-examples 的示例user-info下面新增了 client & server & java-client & java-server 四個示例,完整演示了上面 v0.1.2 所示的三個 featrue;
- 在 dubbogo-examples 的示例user-info下面新增了 client & java-server 兩個示例,完整演示了上面 v0.2.0 所示的 featrue;
- 最新 v2.6.5.0 的 example 請檢視:https://github.com/dubbo/go-for-apache-dubbo/tree/master/examples 配合程式碼重構做了一個比較大的變更。
- 加微信實戰群請加微信(註明:實戰群):gocnio
相關文章
- Go 語言體系下的微服務框架選型: Dubbo-goGo微服務框架
- Go 語言體系下的微服務框架選型:Dubbo-goGo微服務框架
- 微服務框架-dubbo整合nacos框架微服務框架
- dubbo-go 白話文 | 從零搭建 dubbogo 和 dubbo 的簡單用例Go
- 開課啦 dubbo-go 微服務升級實戰Go微服務
- Springboot + Dubbo + Nacos微服務框架整合Spring Boot微服務框架
- Go語言微服務開發框架實踐-go chassis(中篇)Go微服務框架
- Go語言微服務開發框架實踐-go chassis(上篇)Go微服務框架
- 【Dubbo篇】--Dubbo框架的使用框架
- Dubbo+zookeeper實現分散式服務框架分散式框架
- SpringCloud微服務整合DubboSpringGCCloud微服務
- 首次直播揭祕 Dubbo Ecosystem:從微服務框架到微服務生態微服務框架
- 微服務02 Kafka訊息佇列, Dubbo, Springcloud微服務框架, Nacos微服務Kafka佇列SpringGCCloud框架
- SpringCloud微服務:基於Nacos元件,整合Dubbo框架SpringGCCloud微服務元件框架
- Dubbo2.7的Dubbo SPI實現原理細節
- 愛奇藝在 Dubbo 生態下的微服務架構實踐微服務架構
- Go語言開發的微服務框架有什麼專案?go學習Go微服務框架
- 20 個有用的 Go 語言微服務開發框架吐血總結!!!Go微服務框架
- Nacos Go微服務生態系列(一) | Dubbo-go 雲原生核心引擎探索Go微服務
- Nacos Go 微服務生態系列(一)| Dubbo-go 雲原生核心引擎探索Go微服務
- springboot+dubbo+zookeeper微服務實踐demoSpring Boot微服務
- dubbo-go 實戰(一)Go
- 微服務架構 | 12.1 使用 Apache Dubbo 實現遠端通訊微服務架構Apache
- Dubbo 入門系列之基於 Dubbo API 開發微服務應用API微服務
- dubbo-go 中的 TPS Limit 設計與實現GoMIT
- Dubbo 如何成為連線異構微服務體系的最佳服務開發框架微服務框架
- Go語言微服務系列文章Go微服務
- 探索分散式服務框架Dubbo3:為何選擇Dubbo分散式框架
- Go語言實現的簡易TCP通訊框架GoTCP框架
- 微服務架構:Dubbo VS Spring Cloud微服務架構SpringCloud
- dubbo 框架的基本呼叫原理框架
- Dubbo原始碼分析(三)Dubbo的服務引用Refer原始碼
- 工商銀行基於 Dubbo 構建金融微服務架構的實踐-服務發現篇微服務架構
- 基於Springboot+Dubbo+Nacos 註解方式實現微服務呼叫Spring Boot微服務
- 微服務整合Spring Cloud Zipkin實現鏈路追蹤並整合Dubbo微服務SpringCloud
- 微服務痛點-基於Dubbo + Seata的分散式事務(AT)模式微服務分散式模式
- Apache Dubbo 社群召集 Rust 語言開發者ApacheRust
- 微服務分散式企業框架 Springmvc+mybatis+shiro+Dubbo+ZooKeeper微服務分散式框架SpringMVCMyBatis