美文网首页
rpc-随写随记

rpc-随写随记

作者: canezk | 来源:发表于2016-11-18 11:51 被阅读26次

    什么是rpc?

    远程过程调用(英语:Remote Procedure Call,缩写为 RPC)是一个计算机通信协议。该协议允许运行于一台计算机的程序调用另一台计算机的子程序,而程序员无需额外地为这个交互作用编程。如果涉及的软件采用面向对象编程,那么远程过程调用亦可称作远程调用远程方法调用.

    rpc需要考虑哪些点?

    1. 传递:参数(值类型)
    2. 传递:参数(引用类型)

    复制所有值
    规定好协议(序列化?xml,json?)
    大端小端编码

    1. 通信协议:(tcp/ip?)
    2. 其他:安全,效率,异步回调等

      requestid,存储request和回调函数的对应关系

    rpc vs http?

    如果你想只记住一点,那么就请记住 RPC是以动词为中心的, REST是以名词为中
    心的, 此处的 动词指的是一些方法, 名词是指资源.
    
    你会发现,以动词为中心,意味着,当你要需要加入新功能时,你必须要添加更多的动词, 
    这时候服务器端需要实现 相应的动词(方法), 客户端需要知道这个新的动词并进行调
    用.
    而以名词为中心, 假使我请求的是 hostname/friends/, 无论这个URI对应的服务怎么
    变化,客户端是无需 关注和更新的,而这种变化对客户端也是透明的.
    至于其它的区别,如对实现语言的依赖, 耦合性等,这些都是上面提到的这个根本区别所衍生的.
    

    参考

    维基百科定义
    rpc vs http

    相关文章

      网友评论

          本文标题:rpc-随写随记

          本文链接:https://www.haomeiwen.com/subject/idgjpttx.html