All Projects → jueyi-co → Raptor

jueyi-co / Raptor

Licence: apache-2.0
拍拍贷微服务rpc框架

Programming Languages

java
68154 projects - #9 most used programming language

Projects that are alternatives of or similar to Raptor

Whatsmars
Java生态研究(Spring Boot + Redis + Dubbo + RocketMQ + Elasticsearch)🔥🔥🔥🔥🔥
Stars: ✭ 1,389 (+899.28%)
Mutual labels:  microservices, rpc, spring
Go Micro Boilerplate
The boilerplate of the GoLang application with a clear microservices architecture.
Stars: ✭ 147 (+5.76%)
Mutual labels:  microservices, rpc, protobuf
Yarpc Go
A message passing platform for Go
Stars: ✭ 285 (+105.04%)
Mutual labels:  microservices, rpc, protobuf
Rpc Fromscratch
🌈 从零开始设计一个轻量级分布式 RPC 框架,基于 Spring + Netty + Protostuff + Zookeeper
Stars: ✭ 106 (-23.74%)
Mutual labels:  rpc, spring
Spring Cloud Config
External configuration (server and client) for Spring Cloud
Stars: ✭ 1,740 (+1151.8%)
Mutual labels:  microservices, spring
Simple Rpc
RPC with service discovery base on netty
Stars: ✭ 103 (-25.9%)
Mutual labels:  rpc, spring
Easyrpc
EasyRpc is a simple, high-performance, easy-to-use RPC framework based on Netty, ZooKeeper and ProtoStuff.
Stars: ✭ 79 (-43.17%)
Mutual labels:  rpc, protobuf
Spring Cloud Sleuth
Distributed tracing for spring cloud
Stars: ✭ 1,531 (+1001.44%)
Mutual labels:  microservices, spring
Protobuf
Protocol Buffers - Google's data interchange format
Stars: ✭ 52,305 (+37529.5%)
Mutual labels:  rpc, protobuf
Spring Cloud Example
Stars: ✭ 111 (-20.14%)
Mutual labels:  microservices, spring
Spring Cloud Build
Common build concerns, shared plugin configuration, etc. for Spring Cloud modules
Stars: ✭ 114 (-17.99%)
Mutual labels:  microservices, spring
Gemini
Model Driven REST framework to automatically generate CRUD APIs
Stars: ✭ 138 (-0.72%)
Mutual labels:  microservices, spring
Jupiter
Jupiter是一款性能非常不错的, 轻量级的分布式服务框架
Stars: ✭ 1,372 (+887.05%)
Mutual labels:  rpc, spring
Twisk
Golang RPC starter kit with Twirp
Stars: ✭ 113 (-18.71%)
Mutual labels:  rpc, protobuf
Java Interview
At the beginning, it was the repository with questions from Java interviews. Currently, it's more like knowledge base with useful links.
Stars: ✭ 114 (-17.99%)
Mutual labels:  microservices, spring
Spring Cloud Cloudfoundry
Integration between Cloudfoundry and the Spring Cloud APIs
Stars: ✭ 83 (-40.29%)
Mutual labels:  microservices, spring
Twirp
PHP port of Twitch's Twirp RPC framework
Stars: ✭ 108 (-22.3%)
Mutual labels:  rpc, protobuf
Nirum
Nirum: IDL compiler and RPC/distributed object framework for microservices
Stars: ✭ 119 (-14.39%)
Mutual labels:  microservices, rpc
Okta Blog Archive
Okta Developer Blog
Stars: ✭ 74 (-46.76%)
Mutual labels:  microservices, spring
Rsf
已作为 Hasor 的子项目,迁移到:http://git.oschina.net/zycgit/hasor
Stars: ✭ 77 (-44.6%)
Mutual labels:  rpc, spring

Build Status Coverage Status License

Raptor 拍拍贷微服务rpc组件

Raptor微服务rpc组件是拍拍贷基础框架部参考、借鉴了大量已有rpc框架、rpc组件的设计,研发的一款基于google protobuf的轻量级,可扩展的rpc组件。

  1. 契约驱动(Contract-First)开发模式,采用protobuf契约,自动生成服务器端接口和客户端代码
  2. 基于HTTP协议,一套组件同时覆盖内部服务开发和对外开放场景
  3. RPC/REST混合模式,既可以使用客户端以RPC/HTTP/JSON方式调用,也可以通过浏览器以REST/HTTP/JSON方式调用
  4. 支持多种强类型客户端自动生成,Java/C#/Python/iOS/Android...
  5. 设计实现简单轻量,依赖少,可以和Spring(Boot)无缝集成

详细参考文档请参考 wiki

拍拍贷微服务体系

拍拍贷微服务体系是拍拍贷基础框架部总结内部微服务多年实践,参考、吸收大量业内解决方案形成的适合中型互联网公司的微服务解决方案。

拍拍贷微服务体系主要组成部分:

  • Raptor rpc组件。
  • Radar服务注册中心。
  • Kong网关。

拍拍贷微服务体系的总体调用关系图:

微服务实例启动之后,会自动注册到radar服务注册中心,实例启动正常后,kong网关周期性的将实例信息同步到kong的插件配置。 微服务之间的调用、zuul网关调用微服务,都是通过域名进行调用,域名解析到kong网关。Kong网关根据域名和微服务的对应关系,对微服务实例进行负载均衡运算后,得到一个实例,最终进行调用。

拍拍贷微服务体系主要架构考虑:

  • 由Kong网关形成的集中式服务治理。降低由于客户端服务治理bugfix等引起的升级成本。
  • 采用HTTP 1.1作为底层传输协议,从外部到内部无需进行协议转换。
  • 采用HTTP 1.1作为底层传输协议,不会引起原有基于HTTP协议的已有设施失效。
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].