美文网首页
Dubbo-dubbo及动态代理

Dubbo-dubbo及动态代理

作者: 麦大大吃不胖 | 来源:发表于2020-12-20 15:17 被阅读0次

    by shihang.mai

    1. 发展史

    1. 项目all in one,大流量时,复制该项目,做集群,lvs做分流

    2. 后面变为一个超级大的项目叫ERP,包含一个个独立的项目,项目间互调

    • 项目间用mysql共享运行时数据

    • 两个项目直连,用xml传输,通过SOAP协议,框架叫CXF(webservice真正SOA落地)

    • dubbo(rpc)

    2. 数据传输选择

    • json
      缺点:结构不严谨,可读性差
      优点:小,性能高

    • xml
      缺点:文件大,序列化和反序列化性能低。
      优点:结构严谨,有一个xsd文件,在本地做检验。

    • 序列化对象
      缺点:没可读性
      优点:最小,性能最高,面向对象

    3. dubbo架构

    dubbo架构
    1. provider写服务,并提供服务接口
    2. consumer注入服务接口,consumer类初始化时,已经加入了aop,监听方法
    3. 调用接口方法时,dubbo利用动态代理,调到invoke()方法,先向注册中心询问调用的服务在那个ip上,注册中心返回请求的ip地址
    4. 在本地方法执行前,通过调用socket远程调用服务,执行后直接return结果,再继续本地方法

    3.1 注册中心

    注册中心解决了的以下的问题

    • 具体要请求的是那台机器?
      注册中心记录provider的数据(接口名->ip端口、请求数、权重)
    • service下线怎么办?
      注册中心记录也下线
    • 请求负载倾斜怎么办?
      注册中心记录了请求数

    3.2 dubbo配置

    http://dubbo.apache.org/zh/docs/v2.7/user/references/
    

    3.3 负载均衡算法

    • random+weight
    • rr
    • leastactive最不活跃优先
    • 一致性哈希,哈希环

    相关文章

      网友评论

          本文标题:Dubbo-dubbo及动态代理

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