真正好用的RPC框架rest_rpc正式发布第一个版本

rest_rpc是modern C++开发的易用、灵活、跨平台、高性能RPC框架。它让RPC调用如同本地函数,支持同步/异步,且序列化方式可定制。其首个版本发布,特点包括简洁的API、高性能及内置的订阅发布功能。
摘要由CSDN通过智能技术生成

真正好用的RPC框架rest_rpc正式发布第一个版本

rest_rpc是由c++开源技术社区(purecpp.org)创建和发起的项目,在经过多次迭代和重构之后,终于发布第一个版本了。rest_rpc是modern c++开发的一个易用、灵活、跨平台和高性能的RPC框架。和国内外一些大公司开发的RPC框架相比,rest_rpc有哪些特色呢?

rest_rpc的特点

rest_rpc具备下面几个特点

  • 真的像本地函数一样调用
  • 使用简单,用户只需要关注业务即可
  • 灵活,RPC调用的序列化方式可以自由定制,比如支持json,支持msgpack等方式
  • 支持同步和异步调用

这几个特点也是之前的文章里提到的评价一个RPC是否好用的标准,无疑rest_rpc完全符合这些标准,是一个真正好用的RPC,并且还走得更远。

传统的网络库处理业务逻辑的过程一般分为5步:

  1. 接收网络数据;
  2. 解析网络数据;
  3. 调用业务逻辑;
  4. 打包结果;
  5. 发送数据;

如果使用rest_rpc,就只有1步了

1.只需要调用业务逻辑(其他的框架都帮你做好了)。

rest_rpc提供一站式服务,将1,2,4,5步完全省略掉,让用户只用关注第3步的业务逻辑即可,省心省力!如果用户之前用到了其他的网络库,想换成rest_rpc也很简单,不需要做任何修改,只要把业务逻辑函数注册一下就行了,可以直接复用,什么都不用改,省心省力!

rest_rpc的最主要的特点是好用,用户只需要像本地调用那样去调用RPC服务接口,无需关注框架和网络的细节既可以实现远程调用,只需要关注自己的业务逻辑即可。除了易用的特点之外,rest_rpc还具备很好的灵活性,用户可以选择RPC序列化的方式,还支持自定义的序列化方式。

rest_rpc的使用

我们以一个最简单的例子来展示如何使用rest_rpc,这个例子中,服务器提供了一个 int add(int a, int b) RPC服务接口,客户端通过RPC调用获取远程调用的结果。

  • 服务器端代码

    #include <rest_rpc/server.hpp>
    using namespace timax::rpc;
    
    int add(int a, int b)
    {
        return a + b;
    }
    
    int main()
    {
        using codec_type = msgpack_codec; //选择序列化方式,支持json,msgpack等种方式,可以自己扩展
        auto sp = std::make_shared<server<codec_type>>(port, thread_num); //创建server
    
        //注册业务逻辑处理函数,支持普通函数,函数对象,lambda,std::function和成员函数,你想用什么就用什么,没有任何限制
        sp->register_handle
评论 20
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值