All Projects → grpc-nebula → Grpc Nebula

grpc-nebula / Grpc Nebula

微服务治理框架简介

Programming Languages

c
50402 projects - #5 most used programming language

Projects that are alternatives of or similar to Grpc Nebula

Mortar
Mortar is a GO framework/library for building gRPC (and REST) web services.
Stars: ✭ 492 (+272.73%)
Mutual labels:  microservice, grpc
Brpc Java
Java implementation for Baidu RPC, multi-protocol & high performance RPC.
Stars: ✭ 647 (+390.15%)
Mutual labels:  microservice, grpc
Chatengine
Open source mtproto server written in golang with compatible telegram client
Stars: ✭ 544 (+312.12%)
Mutual labels:  microservice, grpc
Grapi
😮 A surprisingly easy API server and generator in gRPC and Go
Stars: ✭ 364 (+175.76%)
Mutual labels:  microservice, grpc
Go Shopping
A sample suite of services built on the go-micro framework
Stars: ✭ 98 (-25.76%)
Mutual labels:  microservice, grpc
Hyperf
🚀 A coroutine framework that focuses on hyperspeed and flexibility. Building microservice or middleware with ease.
Stars: ✭ 4,206 (+3086.36%)
Mutual labels:  microservice, grpc
Rpcx
Best microservices framework in Go, like alibaba Dubbo, but with more features, Scale easily. Try it. Test it. If you feel it's better, use it! 𝐉𝐚𝐯𝐚有𝐝𝐮𝐛𝐛𝐨, 𝐆𝐨𝐥𝐚𝐧𝐠有𝐫𝐩𝐜𝐱!
Stars: ✭ 6,516 (+4836.36%)
Mutual labels:  microservice, grpc
Turbo
A lightweight microservice tool, turn your grpc|thrift APIs into HTTP APIs!
Stars: ✭ 275 (+108.33%)
Mutual labels:  microservice, grpc
Lile
Easily generate gRPC services in Go ⚡️
Stars: ✭ 1,271 (+862.88%)
Mutual labels:  microservice, grpc
Go Micro Services
HTTP up front, Protobufs in the rear
Stars: ✭ 853 (+546.21%)
Mutual labels:  microservice, grpc
Go Project Sample
Introduce the best practice experience of Go project with a complete project example.通过一个完整的项目示例介绍Go语言项目的最佳实践经验.
Stars: ✭ 344 (+160.61%)
Mutual labels:  microservice, grpc
Mix
☄️ PHP CLI mode development framework, supports Swoole, WorkerMan, FPM, CLI-Server / PHP 命令行模式开发框架,支持 Swoole、WorkerMan、FPM、CLI-Server
Stars: ✭ 1,753 (+1228.03%)
Mutual labels:  microservice, grpc
Furan
Scale out Docker builds
Stars: ✭ 339 (+156.82%)
Mutual labels:  microservice, grpc
Viper
Viper 是一个基于Anno微服务引擎开发的Dashboard项目、示例项目。Anno 底层通讯采用 grpc、thrift。自带服务发现、调用链追踪、Cron 调度、限流、事件总线等等
Stars: ✭ 402 (+204.55%)
Mutual labels:  microservice, grpc
Joyrpc
high-performance, high-extensibility Java rpc framework.
Stars: ✭ 290 (+119.7%)
Mutual labels:  microservice, grpc
Gubernator
High Performance Rate Limiting MicroService and Library
Stars: ✭ 609 (+361.36%)
Mutual labels:  microservice, grpc
kubernetes-go-grpc
Microservices using Go, gRPC and Kubernates
Stars: ✭ 35 (-73.48%)
Mutual labels:  microservice, grpc
Jupiter
Jupiter是斗鱼开源的面向服务治理的Golang微服务框架
Stars: ✭ 3,455 (+2517.42%)
Mutual labels:  microservice, grpc
Danby
A webserver that's also a grpc proxy for browsers
Stars: ✭ 26 (-80.3%)
Mutual labels:  microservice, grpc
Orion
Orion is a small lightweight framework written around grpc/protobuf with the aim to shorten time to build microservices at Carousell.
Stars: ✭ 101 (-23.48%)
Mutual labels:  microservice, grpc

grpc-nebula: 基于gRPC开发的高性能微服务治理框架

1. 项目简介

微服务治理框架,基于开源项目 grpcgrpc-java 进行开发,新增如下特性:

  • 服务自动注册与发现。采用zookeeper为注册中心,服务与注册中心之间保持长链接,具有心跳检测机制,能够周期性的检查服务的状态,确保服务可用性状态一致性,可处理服务进程意外终止、服务器宕机等场景。
  • 服务调用负载均衡。对于多实例的服务的调用,提供对多个服务实例的负载均衡调度,实现负载按照预定的调度算法进行调度执行。
  • 服务流量控制。通过设置请求数或连接数上限,动态实现对各服务接口的流控管理。
  • 服务访问控制与黑白名单机制。提供多种形式的服务访问控制策略,能够根据设定的安全策略对调用者进行安全检查,支持黑白名单等安全机制。
  • 服务调用异常处理。当一个服务有多个服务器实例时,如果客户端调用A服务器连续多次出错,框架会自动将了客户端的HTTP/2连接切换到提供相同服务的B服务器。
  • 服务端支持主备切换
  • 服务端支持服务分组、多机房支持

2. 项目背景

微服务治理框架是由东方证券和博云联合开发。

随着东方证券业务的多年发展,已有大量的业务及支撑系统上线运营对外提供服务,服务与服务之间开始呈现复杂的依赖关系,系统运维的复杂度急剧增加。特别是由于以往系统建设主要由各厂商开发等因素的影响,东方证券内部存在大量的异构业务系统,对外暴露的接口也呈现多种形式,进一步增加了系统开发、运维的难度。

东方证券内已经建设或正在建设的业务系统种类繁多,包括网上交易、APP、互联网中台、集中交易、账户系统、清算系统等,除此之外还有很多正在规划的业务系统。各业务系统一般由不同的项目团队或供应商开发,并交付给东方证券的系统运行部门统一运维,在这个过程中存在诸多问题。

针对以上需求,同时根据东方证券大中台能力中心整体建设规划,基于gRPC框架技术,新增服务治理特性,构建微服务治理平台,从而实现东方证券内部及外部服务的统一化管理,构建服务调用关系及拓扑结构,优化改进服务质量。

开源的内容为东方证券微服务治理平台的RPC框架部分。

3. 框架源代码

4. 框架文档

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].