RabbitTeam / Rabbitcloud
Licence: apache-2.0
A lightweight cross-platform RPC.
Stars: ✭ 328
Labels
Projects that are alternatives of or similar to Rabbitcloud
Socket Mqtt
基于Netty+MQTT的高性能推送服务框架。支持普通Socket、MQTT、MQTT web socket协议。非常方便接入上层业务实现推送业务。
Stars: ✭ 314 (-4.27%)
Mutual labels: rpc
Flatbuffers
FlatBuffers: Memory Efficient Serialization Library
Stars: ✭ 17,180 (+5137.8%)
Mutual labels: rpc
Node Zookeeper Dubbo
A middleware helps node to communicate dubbo by using its default protocol, which is registered in zookeeper
Stars: ✭ 296 (-9.76%)
Mutual labels: rpc
Bebop
An extremely simple, fast, efficient, cross-platform serialization format
Stars: ✭ 305 (-7.01%)
Mutual labels: rpc
Tarsjava
Java language framework rpc source code implementation
Stars: ✭ 321 (-2.13%)
Mutual labels: rpc
Hprose Nodejs
Hprose is a cross-language RPC. This project is Hprose 2.0 for Node.js
Stars: ✭ 297 (-9.45%)
Mutual labels: rpc
Slacker
Transparent, non-incursive RPC by clojure and for clojure
Stars: ✭ 316 (-3.66%)
Mutual labels: rpc
Joyrpc
high-performance, high-extensibility Java rpc framework.
Stars: ✭ 290 (-11.59%)
Mutual labels: rpc
Go Micro
A pluggable Go framework for distributed systems development
Stars: ✭ 17,350 (+5189.63%)
Mutual labels: rpc
Waterdrop
💧Waterdrop is a high performance micro service framework. Waterdrop comes from (The Three Body Problem).
Stars: ✭ 305 (-7.01%)
Mutual labels: rpc
Gb28181.solution
Linux/Win/Docker/kubernetes/Chart/Kustomize/GB28181/SIP/RTP/SDP/WebRTC/作为上下级域/平台级联互联
Stars: ✭ 323 (-1.52%)
Mutual labels: rpc
Saea
SAEA.Socket is a high-performance IOCP framework TCP based on dotnet standard 2.0; Src contains its application test scenarios, such as websocket,rpc, redis driver, MVC WebAPI, lightweight message server, ultra large file transmission, etc. SAEA.Socket是一个高性能IOCP框架的 TCP,基于dotnet standard 2.0;Src中含有其应用测试场景,例如websocket、rpc、redis驱动、MVC WebAPI、轻量级消息服务器、超大文件传输等
Stars: ✭ 318 (-3.05%)
Mutual labels: rpc
Rabbit RPC
A lightweight cross-platform RPC.
Features
- Apache License 2.0 protocol open source
- Supports client load balancing (polling and random)
- Support ZooKeeper and file sharing the service coordination
- Runtime client proxy generation (based Roslyn)
- Pre-generated client agent (based Roslyn)
- Abstract codec (JSON and ProtoBuffer)
- Abstract transmission channel (DotNetty)
- Exception information transfer (Local exceptions to the server runtime can be passed to the client)
- NET Core Project structure
- Cross-platform
Overview
Rabbit.Rpc
- Rpc core class library, has the following functions:
- Service Id generation
- Transfer the message model
- Type conversion
- Service routing abstraction
- Serializer abstraction (the default provides JSON serializer)
- Transport abstraction
- Codec abstraction (default provides JSON codec implementation)
- Client runtime (address resolver, address selector, remote call service)
- Service-side runtime (service entry management, service executor, service discovery abstraction, RpcServiceAttribute tagging service discovery implementation)
Rabbit.Rpc.ProxyGenerator
Service Agent Builder, provides features:
- Service agent implementation generation
- Service agent instance creation
extensions
Rabbit.Rpc.Codec.ProtoBuffer
ProtoBuffer protocol codec implementation.
Rabbit.Rpc.Coordinate.Zookeeper
Service Routing Management Based on ZooKeeper.
Rabbit.Transport.DotNetty
Implementation of DotNetty Transmission.
tools
Rabbit.Rpc.Tests
Unit test project.
Rabbit.Rpc.ClientGenerator
Pre-production service agent tool, provides the following functions:
- Generate the service proxy implementation code file
- Generate the service agent to implement the assembly file
Performance Testing
Test environment
OS | CPU | Memory | disk | network | VM |
---|---|---|---|---|---|
Windows 10 x64 | I7 3610QM | 16GB | SSD | 127.0.0.1 | no |
Ubuntu 16.04 x64 | I7 3610QM | 4GB | SSD | 127.0.0.1 | yes |
Windows10 + NETCoreApp1.0 + JSON protocol
loop 10,000
first 2626ms
second 2597ms
third 2581ms
Windows10 + NETCoreApp1.0 + ProtoBuffer protocol
loop 10,000
first 2567ms
second 2617ms
third 2474ms
Ubuntu16.04-x64 + NETCoreApp1.0 + JSON protocol
loop 10,000
first 3205ms
second 3252ms
third 2837ms
Ubuntu16.04-x64 + NETCoreApp1.0 + ProtoBuffer protocol
loop 10,000
first 3391ms
second 3391ms
third 3574ms
related articles
communication
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].