All Projects → beetlex-io → XRPC

beetlex-io / XRPC

Licence: Apache-2.0 license
dotnet high performance remote interface and delegate invoke(RPC) communication components,support millions RPS remote interface method invokes

Programming Languages

C#
18002 projects

Projects that are alternatives of or similar to XRPC

rony
Fast and Scalable RPC Framework
Stars: ✭ 41 (-46.75%)
Mutual labels:  rpc-server, rpc-client, rpc-framework
Hprose Nodejs
Hprose is a cross-language RPC. This project is Hprose 2.0 for Node.js
Stars: ✭ 297 (+285.71%)
Mutual labels:  tcp, rpc-client, rpc-framework
Hprose Php
Hprose is a cross-language RPC. This project is Hprose 3.0 for PHP
Stars: ✭ 1,952 (+2435.06%)
Mutual labels:  rpc-server, rpc-client, rpc-framework
simpleRPC
Simple RPC implementation for Arduino.
Stars: ✭ 28 (-63.64%)
Mutual labels:  rpc-server, rpc-framework, rpc-api
Hprose Js
Hprose is a cross-language RPC. This project is Hprose 2.0 RPC for JavaScript
Stars: ✭ 133 (+72.73%)
Mutual labels:  tcp, rpc-client, rpc-framework
Armeria
Your go-to microservice framework for any situation, from the creator of Netty et al. You can build any type of microservice leveraging your favorite technologies, including gRPC, Thrift, Kotlin, Retrofit, Reactive Streams, Spring Boot and Dropwizard.
Stars: ✭ 3,392 (+4305.19%)
Mutual labels:  rpc-server, rpc-client, rpc-framework
nodejs grpc
GRPC based API CRUD using Nodejs at both server and client side
Stars: ✭ 17 (-77.92%)
Mutual labels:  rpc-server, rpc-client, rpc-framework
Hprose Delphi
Hprose is a cross-language RPC. This project is Hprose 2.0 for Delphi and FreePascal
Stars: ✭ 100 (+29.87%)
Mutual labels:  rpc-client, rpc-framework
Rpcx Java
rpcx implementation in Java for server side and client side
Stars: ✭ 71 (-7.79%)
Mutual labels:  rpc-client, rpc-framework
Ipcserviceframework
.NET Core Inter-process communication framework
Stars: ✭ 268 (+248.05%)
Mutual labels:  tcp, dotnetcore
Networker
A simple to use TCP and UDP networking library for .NET. Compatible with Unity.
Stars: ✭ 408 (+429.87%)
Mutual labels:  tcp, dotnetcore
Getty
a netty like asynchronous network I/O library based on tcp/udp/websocket; a bidirectional RPC framework based on JSON/Protobuf; a microservice framework based on zookeeper/etcd
Stars: ✭ 532 (+590.91%)
Mutual labels:  tcp, rpc-framework
Nsmartproxy
NSmartProxy是一款开源免费的内网穿透工具。采用.NET CORE的全异步模式打造。(NSmartProxy is an open source reverse proxy tool that creates a secure tunnel from a public endpoint to a locally service.)
Stars: ✭ 547 (+610.39%)
Mutual labels:  tcp, dotnetcore
Beetlex
high performance dotnet core socket tcp communication components, support TLS, HTTP, HTTPS, WebSocket, RPC, Redis protocols, custom protocols and 1M connections problem solution
Stars: ✭ 802 (+941.56%)
Mutual labels:  tcp, rpc-framework
Raft.net
Implementation of RAFT distributed consensus algorithm among TCP Peers on .NET / .NETStandard / .NETCore / dotnet
Stars: ✭ 112 (+45.45%)
Mutual labels:  tcp, dotnetcore
Hprose Golang
Hprose is a cross-language RPC. This project is Hprose for Golang.
Stars: ✭ 1,143 (+1384.42%)
Mutual labels:  rpc-client, rpc-framework
Rpc Websockets
JSON-RPC 2.0 implementation over WebSockets for Node.js and JavaScript/TypeScript
Stars: ✭ 344 (+346.75%)
Mutual labels:  rpc-client, rpc-framework
Hprose Java
Hprose is a cross-language RPC. This project is Hprose 2.0 for Java
Stars: ✭ 542 (+603.9%)
Mutual labels:  rpc-client, rpc-framework
Grain
grain是一个极简的、组件式的RPC框架,灵活且适合渐进学习,可与任何框架整合。同时包含(系统通用多线程模型与消息通讯 || 多对多关系的分布式锁 || 基于Servlet的HTTP框架 || 基于系统通用多线程模型的Websocket框架 || 支持行级锁的多线程锁 )等组件,按需选择组件,不绑架开发者。
Stars: ✭ 577 (+649.35%)
Mutual labels:  tcp, rpc-framework
Hprose Html5
Hprose is a cross-language RPC. This project is Hprose 2.0 Client for HTML5
Stars: ✭ 237 (+207.79%)
Mutual labels:  tcp, rpc-client

XRPC

dotnet high performance remote interface invoke(RPC) communication components,implemente millions RPS remote interface method calls.

samples

https://github.com/IKende/BeetleX-Samples

Install Packet

Install-Package BeetleX.XRPC -Version x

Server

    class Program
    {
        static void Main(string[] args)
        {
            var builder = new HostBuilder()
            .ConfigureServices((hostContext, services) =>
            {
                services.UseXRPC(s =>
                {
                    s.ServerOptions.LogLevel = BeetleX.EventArgs.LogType.Trace;
                    s.ServerOptions.DefaultListen.Port = 9090;
                    s.RPCOptions.ParameterFormater = new JsonPacket();//default messagepack
                },
                    typeof(Program).Assembly);
            });
            builder.Build().Run();
        }
    }

Server controller

    public interface IHello
    {
        Task<string> Hello(string name);
    }

    [Service(typeof(IHello))]
    public class HelloImpl : IHello
    {
        public Task<string> Hello(string name)
        {
            return $"hello {name} {DateTime.Now}".ToTask();
        }
    }

Client

            client = new XRPCClient("localhost", 9090);
            client.Options.ParameterFormater = new JsonPacket();//default messagepack
            hello = client.Create<IHello>();
            while(true)
            {
                Console.Write("Enter you name:");
                var name = Console.ReadLine();
                var task = hello.Hello(name);
                task.Wait();
                Console.WriteLine(task.Result);
            }
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].