zoukankan      html  css  js  c++  java
  • dubbo概述

    架构历史:

    1、单一应用架构

    缺点:单一的系统架构,当系统变得庞大,复杂后;新的扩展、维护,会变得复杂和困难。
    每次启动系统,都需要启动所有的东西。而你的扩展,有些东西却没有任何关联。

    2、垂直应用机构

    优点:垂直应用架构解决了单一应用架构所面临的扩容问题,能够将流量分散到各个子系统当中,
    而且系统的体积可控,一定程度上降低了开发人员之间的协同以及维护的成本,提升开发效率。
    缺点:但是垂直架构中相同的逻辑代码需要复制,不能复用。

    3、分布式架构

    优点:公共的逻辑业务抽取出来形成对外服务。这样对于维护和升级都只需要针对相应的系统进行。
    也可以让前段业务系统与底层数据访问分离,团队分工更为明确。
    当某个dubbo服务,负载过重时,可以直接增加对应服务的机器数量,用以分担负载。
    此时,dubbo的Monitor,就起到监控作用,统计服务的调用次数和调用时间。
    分布式系统所依赖的基础设施包括服务框架,消息中间件,数据访问中间件,配置中心,分布式缓存系统。
    持久化存储(关系数据库,nosql数据库)、搜索引擎、CDN网络、负载均衡系统、运维自动化系统、硬件虚拟化、
    镜像管理系统,分布式文件系统、日志收集系统、监控系统、离线计算、实时计算、数据仓库等等。

    原理:

    dubbo架构说明

    1、服务提供者(provider)含服务容器(container)
    2、服务消费者(consumer)
    3、注册中心 (registry)
    4、监控中心 (monitor)

    dubbo调用关系:

    1、container启动,将provider注册到registry。
    2、consumer启动,从registry中获取provider。
    3、调用的时候,monitor进行监控统计。
    4、registry维护provider的信息。

    调用关系说明:

    1、服务容器负责启动,加载,运行服务提供者。
    2、服务提供者在启动时,向注册中心注册自己提供的服务。
    3、服务消费者在启动时,向注册中心订阅自己所需的服务。
    4、注册中心返回服务提供者地址列表给消费者,如果地址有变更,注册中心将基于长连接推送变更地址列表给消费者。
    5、服务消费者从地址列表中,基于软负载均衡算法,选择一台提供者进行调用,如果失败,再选另一台调用。
    6、服务提供者和消费者,在内存中累计调用次数和调用时间,定时每分钟发送一次统计数据到监控中心。

    健壮性:
      1、注册中心宕机,消费者仍能通过本地缓存的地址列表对提供者进行调用。
      2、监控中心,不影响使用。
    伸缩性:
      1、提供者无状态,可以动态增加机器部署实例。实现高负载。

     

    使用:
      一、协议:
        1、dubbo 缺省协议,采用单一长连接和NIO异步通讯。适用于小数据量大并发的场景。不适用于传递大量的数据服务,如文件,视频等。

  • 相关阅读:
    Balanced Binary Tree
    Swap Nodes in Pairs
    Reverse Nodes in k-Group
    Reverse Linked List II
    Remove Nth Node From End of List
    Remove Duplicates from Sorted List II
    Remove Duplicates from Sorted List
    Partition List
    Merge Two Sorted Lists
    【Yii2.0】1.2 Apache检查配置文件语法
  • 原文地址:https://www.cnblogs.com/chen--biao/p/9646891.html
Copyright © 2011-2022 走看看