排列5走势图 = way to explore
排列5走势图 是一个排列5走势图关于 分享和探索的地方
现在注册
已注册用户请  登录
GeekHub
bbao
排列5走势图  ›  程序员

大家所在的排列5走势图公司 都使用什么 RPC 框架?

  •  2
     
  •   bbao · 229 天前 · 6094 次点击
    这是一个创建于 229 天前的主题,其中的信息可能已经有所发展或是发生改变。
    很久之前使用 dubbo 配合 zk 使用;
    转了 golang 之后,使用 etcd,感觉比较方便一些,概念上也简单,比较好理解。
    springcloud 也有 eruaka 和 feign

    想了解了解,现在各位所在的排列5走势图公司 中,使用哪种 rpc 多一些?都分别使用到了什么场景?
    45 条回复    2020-03-11 23:51:07 +08:00
    luren123
        1
    luren123   229 天前
    dubbo
    chendy
        2
    chendy   229 天前
    etcd、eruaka,feign 是 rpc 框架?
    zhch602
        3
    zhch602   229 天前 via iPhone
    @chendy feign 怎么不是 rpc 框架了?
    manami
        4
    manami   229 天前 via Android
    feign 不是 rpc 框架吧……
    manami
        5
    manami   229 天前 via Android
    @zhch602 feign 正如其名,是“假装,捏造”之意,虽然可以实现 rpc,但是是假的
    cshijiel
        6
    cshijiel   229 天前
    spring cloud via feign
    securityCoding
        7
    securityCoding   229 天前
    spring cloud
    hantsy
        8
    hantsy   229 天前
    谁用谁知道,RPC 就是坑爹的东西,十几年前就淘汰了。在 Java EE 里面,Soap Web Service 的出现本身就是代替 RPC,何况 SOAP 已经 game over 了。

    gRPC 有人用是因为:1.背后的排列5走势图公司 是 Google 2. 还有它使用了高效的 Protobuf 协议。
    ledger
        9
    ledger   229 天前   ❤️ 1
    brpc
    wangyzj
        10
    wangyzj   229 天前
    grpc 只是叫做 rpc 而已
    davinci
        11
    davinci   229 天前
    @hantsy 基于更高效的 http2 很关键
    OllyDebug
        12
    OllyDebug   229 天前 via iPhone
    gprc
    gemini767
        13
    gemini767   229 天前
    @hantsy 好奇,能说说 rpc 哪些地方坑了排列5走势图你
    TypeError
        14
    TypeError   229 天前
    grpc
    PureWhiteWu
        15
    PureWhiteWu   229 天前
    自研框架
    Y4ssss
        16
    Y4ssss   229 天前
    grpc
    Ericcccccccc
        17
    Ericcccccccc   229 天前
    @hantsy 排列5走势图你 没懂 RPC 是啥意思.

    http 就是 RPC, 坑在哪?
    ezreal
        18
    ezreal   229 天前
    自研
    dayeye2006199
        19
    dayeye2006199   229 天前 via iPad
    Thrift 全家桶
    zhuawadao
        20
    zhuawadao   229 天前
    hsf
    swulling
        21
    swulling   229 天前
    排列5走势图你 想要的是 RPC 还是 Service Discovery,两个确实可以配合起来使用,但是并不是强绑定,也可以单独使用。
    lqw3030
        22
    lqw3030   229 天前   ❤️ 2
    自研,通用性和业务贴合性原本就矛盾的
    galaxyyao
        23
    galaxyyao   229 天前   ❤️ 1
    这个引起争执的主题引出了几个问题。说一下排列5走势图我 的理解
    # 1 到底什么是 RPC
    根据 wiki 上[Remote procedure call]( http://en.wikipedia.org/wiki/Remote_procedure_call)的定义,RPC 就是像调用排列5走势图本地 排列5走势图方法 一样调用共享网络上的排列5走势图方法 ( procedure 理论上应该被翻译成过程,但这里个人更倾向于翻译成排列5走势图方法 ,也符合 OOP 中 RMI 中的 M 的本意)。
    可以看到这个定义里没有规定协议,所以 HTTP 方式的 spring cloud feign,排列5走势图我 认为也可以被认定为 RPC。虽然 feign

    # 2 RPC 的实现
    RPC 的实现有语言限定的,诸如 Java RMI ;也有通用的,例如楼上提到过的 SOAP,Google 的 protobuf (用于 gRPC ),Apache 的 Thrift 和 Avro 等。这里的实现排列5走势图我 理解和协议还是有差别的。
    Hessian 在有些网站上也被认为是 RPC 实现,但 wiki 上的定义是二进制 web service 协议。

    # 3 RPC 框架
    RPC 框架排列5走势图我 理解是对 RPC 实现的封装。
    排列5走势图我 理解 gRPC 和 thrift 本身就对 rpc 实现封装得不错了,所以没有一个专门的框架再排列5走势图包装 一层。
    根据 github 上的[RPC 框架 topic]( http://github.com/topics/rpc-framework),RPC 框架还包括腾讯的 Tars ( C++),蚂蚁的 sofa-rpc ( Java ),微博的 motan (有 go 实现)。
    hprose 是跨语言的,在 Github 上有各种语言下的实现。
    Dubbo 这种全家桶中也有 rpc 的部分,但称为 rpc 框架总觉得有点别扭。
    Github 星数比较高的 Java 语言 RPC 框架还有 NettyRpc,Jupiter,xxl-rpc 等。

    # 4 排列5走势图服务 发现注册
    主题里提到的 zk,etcd,eureka ( LZ 拼错了),从分类上术语排列5走势图服务 发现注册,排列5走势图我 认为不能混在 RPC 里讨论。
    排列5走势图服务 发现是辅助与 rpc client 找到 rpc server,但并不是 rpc 里必不可少的部分(如果不考虑高可用的话)
    zmxnv123
        24
    zmxnv123   229 天前
    排列5走势图我 一直以及为 grpc 或者 thrift 早一统天下了,没想到还有这么多用 dubbo 和 spring 的,想知道是不需要跨语言吗?
    feelinglucky
        25
    feelinglucky   229 天前
    @zmxnv123 不奇怪的,先不说孰优孰劣吧…国内纯 Java 排列5走势图技术 栈的排列5走势图公司 比想象得多,当然还有很多也是历史的问题
    arjen
        26
    arjen   229 天前 via Android
    @zmxnv123 哈哈,其实现在 dubbo 也有多重语言支持,甚至能与其他 rpc 通信。历史遗留的问题也就没必要换了。
    20150517
        27
    20150517   229 天前
    grpc,排列5走势图我 觉得很好用啊,直接从 proto 生成 endpoint,只需要自己写业务逻辑,效率又高,单元测试又很容易写
    paragon
        28
    paragon   229 天前
    thrift 现在还有一样的吗?
    sagaxu
        29
    sagaxu   229 天前 via Android
    @zmxnv123 corba 也有人在用,rmi 也有人在用
    bbao
        30
    bbao   229 天前
    @galaxyyao

    恩,理解的对,之所以把 zk、etcd、eureka 列出来,是想看看大家排列5走势图公司 使用的哪种组合,毕竟没有单机使用场景,肯定都是要考虑高可用,从而选择排列5走势图技术 和配对使用的。
    manami
        31
    manami   229 天前 via Android
    排列5走势图服务 注册发现有用 consul 的么?发现挺香的
    paoqi2048
        32
    paoqi2048   229 天前
    自研
    cabing
        33
    cabing   229 天前
    grpc
    cabing
        34
    cabing   229 天前
    基础组件:consul
    go 用 grpc
    cpp 用 brpc
    CoderGeek
        35
    CoderGeek   229 天前
    dubbo 类的 厂子大点一般有不少遗留问题 不过有团队持续排列5走势图优化 233
    binbinyouliiii
        36
    binbinyouliiii   229 天前
    @hantsy #8 那排列5走势图服务 间互相传输数据应该用什么方式呢?
    Shawdon
        37
    Shawdon   229 天前
    @galaxyyao 这个理解很学术
    feelinglucky
        38
    feelinglucky   229 天前   ❤️ 1
    +1 @manami consul 是很香,网易这边严选重度使用
    tt67wq
        39
    tt67wq   229 天前 via iPhone
    etcd 跟 rpc 有啥关系哟
    bbao
        40
    bbao   228 天前
    @tt67wq

    没有光使用 rpc 请求,不考虑高可用和相关场景的,所以就看看都是怎么选择搭配
    sarlanori
        41
    sarlanori   228 天前
    偶尔用 thrift 和 ICE
    bbao
        42
    bbao   228 天前
    @tt67wq 看了眼描述,golang 想提 grpc 配合 etcd,这样。
    sweat89
        43
    sweat89   228 天前
    @hantsy 说得跟真的一样
    hantsy
        44
    hantsy   227 天前
    RCP 需要 Client 和 Server 交互,Client 调用看起来和排列5走势图本地 调用一样,为了 Client 和 Server 交互隐藏远程调用的复杂性,往往借助一些 IDL 中间语言来定义交换协议。RPC 即没规定排列5走势图你 用什么传输协议,也没限定什么传输格式( json,xml,binary 均可)。RPC 框架百花齐放,排列5走势图你 学会一种,到另一种框架下完全又是全新的东西,跟没有学一样。至于排列5走势图你 非要将 Feign 都能归到 RPC,那只能说 RPC 是任人打扮的 BZ。

    任何一种 RPC 框架都是唱独角戏。

    在 Java EE 领域,J2EE 1.2 (大约是 2000 年左右,记不清楚了,大约 20 年前吧)最初有一个 XML RPC 规范,使用 XML 作为传输格式,基于 HTTP 协议,但它仅限于 j2ee 程序。很快排列5走势图企业 应用快速增长,互通的问题摆在眼前,SOAP Web Service 规范取代 XML RPC,实现不同的平台( Java,.net, 等)的互通(虽然不是很好), 可以说 SOAP 取得空前的成功。当然现在 Jaxrs 规范已经在事实取代了复杂的 SOAP (虽然很长一段时间不会消失)。
    Jacky23333
        45
    Jacky23333   203 天前 via Android
    @zmxnv123 需要排列5走势图服务 治理啊
    排列5走势图关于   ·   FAQ   ·   API   ·   排列5走势图排列5走势图我 们 的愿景   ·   广告投放   ·   感谢   ·   实用小排列5走势图工具   ·   757 人在线   最高记录 5168   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 21ms · UTC 21:48 · PVG 05:48 · LAX 14:48 · JFK 17:48
    ♥ Do have faith in what you're doing.