基於graphql的微服務基礎框架
base是一個小而美的業務基礎框架,它使用graphql作為api通訊協議基礎。然後提供了一些可以直接使用的後端儲存服務。
基礎特性
- 只支援graphql協議通訊;提供了graphql-ui;UI即介面。並提供了一些與該協議進行資料轉化的API列表;
- 提供資料訪問層DAL,使用
upper/db
庫,該庫支援:PostgreSQL, MySQL, SQLite, MSSQL, QL and MongoDB; - 提供了redis、訊息佇列、db和配置服務的初始化例項;
- 支援配置服務的自動watch,並實時更新; 支援基於dns的服務發現;
- 支援jaeger trace跟蹤;支援錯誤碼註冊;支援rabbitmq訊息佇列消費和生產
- 支援自定義時間規則切割檔案,比如:年/月/日/時/分
- 支援微服務之間的rpc呼叫和資料解析
- 輕易支援立即容器化
目錄結構
.
├── README.md
├── bindata_assetfs.go
├── cmd/
├── context.go
├── graphql.go
├── graphql_test.go
├── handler.go
├── middlewares.go
├── pkg/
└── plugins/
- cmd目錄用於提供對cache, db, discovery和mq服務的client初始化,且不用關心連線釋放等問題, 且預設初始化discovery client連線;
- pkg目錄提供了環境變數、日誌、訊息佇列、rpc、系統時間、tracing、types(token, user服務定義),以及常用的utils包
- graphql提供了一些gateway的底層呼叫,graphql的解析、以及與go的型別互相轉換(包括:列舉,字串、時間等);
- 提供了基於martini的路由外掛,以及處理graphql請求的方法,並支援graphql返回結果的自定義。
- 提供了訪問流控和簽名兩個服務的api。
演示環境
相關文章
- 微服務平臺下基於 GraphQL 構建 BFF 的思考微服務
- 微服務基礎微服務
- 如何基於gRPC溝通微服務框架RPC微服務框架
- SpringCloud微服務:基於Nacos元件,整合Dubbo框架SpringGCCloud微服務元件框架
- SpringCloud微服務基礎SpringGCCloud微服務
- dotnet core微服務框架Jimu ~ 基礎閘道器微服務框架
- go基於grpc構建微服務框架-整合opentracingGoRPC微服務框架
- 基於Golang的微服務——ConsulGolang微服務
- golang 微服務-基礎元件Golang微服務元件
- 微服務基礎知識微服務
- GraphQL 基礎實踐
- 微軟微服務構建框架Dapr基礎入門教程微軟微服務框架
- 基於Golang的微服務——上手篇Golang微服務
- 基於Spring Cloud的微服務落地SpringCloud微服務
- Swoft 基礎到微服務篇微服務
- 基於Jenkins釋出微服務Jenkins微服務
- 基於kubernetes平臺微服務的部署微服務
- go基於grpc構建微服務框架-服務註冊與發現GoRPC微服務框架
- 優效學院 基於微服務的秒殺專案實戰 Spring Boot 2.0基礎微服務Spring Boot
- 基於SpringCloud的微服務架構設計SpringGCCloud微服務架構
- 基於 prometheus 的微服務指標監控Prometheus微服務指標
- 基於Golang的微服務——Micro實踐(一)Golang微服務
- 基於Golang的微服務——Micro實踐(二)Golang微服務
- 基於 Spring Cloud 的微服務腳手架SpringCloud微服務
- [雲原生微服務架構](十)微服務架構的基礎知識微服務架構
- 基於微服務框架Micronaut和Eventuate Tram實現分散式事務的開源案例微服務框架分散式
- Spring Cloud微服務基礎元件實戰SpringCloud微服務元件
- 微服務工程中,基礎元件應用微服務元件
- 基於知名微服務框架go-micro開發gRPC應用程式微服務框架GoRPC
- 基於 xorm 的服務端框架 XGoServerORM服務端框架GoServer
- 基於 abp vNext 微服務開發的敏捷應用構建平臺 - 框架分析微服務敏捷框架
- 基於 GraphQL 實踐的一點思考
- Spring Cloud微服務-基於Eureka的feign呼叫(1)SpringCloud微服務
- 基於Spring Cloud微服務叢集的服務治理思考SpringCloud微服務
- GRIT:eBay基於微服務的分散式事務協議微服務分散式協議
- go基於grpc構建微服務框架-結構化日誌輸出GoRPC微服務框架
- 微服務基礎——厲害了!API閘道器微服務API
- 阿里雲微服務基礎:TaskManager工作管理員阿里微服務