Dubbo浅谈

一.高并发的解决

  1.高并发:很多人同时访问。

  2.高并发产生的性能瓶颈:

    tomcat支持的controller,解决办法:多个tomcat共同支撑。(tomcat集群)

    只有一个service被调用,解决办法:多个service共同支撑。

    只有一个数据库被访问,解决办法:多个数据库共同支撑。

 二.dubbo用来解决业务层的瓶颈问题(由一变多,解决负载均衡)

  1.官网:dubbo.io

  2.引出dubbo

    随着网络科技的发展,架构程序也由单一应用架构(1-10人)→ 垂直应用架构 (10-1000人)分布式服务架构(1000-10000人)

    在分布式架构中采用的原理是,将业务层单独提炼出来,以远程业务的方式提供。以http或https的方式进行调用,一般使用XML的形式进行交互(XML就是一种序列化工具,与远程的业务端,采用XML的方式进行传递)。由于是远程的,服务器可以多个。可此阶段有明显的缺点:无法保证服务器之间的访问次数是平均的,明显分配不均。

    而dubbo就解决了分布不均的问题,并且可以远程调用。由此引出了我们此时正处于的阶段→流动计算架构。对访问次数进行计算,做成平均分配访问---也就是负载均衡。

   3.

 

Container:即dubbo容器,dubbo容器是spring的子容器。

Provider:服务提供者,用于发布服务,以及提供服务。

Consumer:服务消费者,即服务调用者。

Registry:注册中心,主要用于存储服务提供者的服务地址。

Monitor:监控中心,主要用于记录服务调用的次数。

 三.zookeeper(注册中心)

  1.Zookeeper是hadoop系列中的一个组件,用于协调服务。在此,充当dubbo的注册中心

  2.zookeeper的安装     

  • 2.1单机安装           

    2.1.1  步骤 :解压、添加zoo.cfg文件、启动

    2.1.2  步骤 :解压、添加zoo.cfg文件、启动

    ll:表示显示当前目录下的文档详细信息(包括权限、所属用户和组、大小、时间、名称等)

    mkdir:表示创建目录

    tar zxvf:表示解压

    - C 表示移动到哪个目录

    

  2.1.3  步骤 :添加zoo.cfg文件  

    在zookeeper/conf/zoo_sample.cfg文件,将此文件复制或重命名为zoo.cfg即可

    cd:表示切换到那个目录下

    ls :表示只显示当前目录下的文档名。

    cp :表示复制

    

2.1.4  步骤 :启动

    启动脚本zookeeper/bin/zkServer.sh

   pwd:表示显示当前路径

  ps -ef | grep zookeeperps:将某个进程显示出来

  -A  显示所有程序。
  -e  此参数的效果和指定"A"参数相同。
  -f  显示UID,PPIP,C与STIME栏位。
  grep命令是查找
  中间的|是管道命令 是指ps命令与grep同时执行
  这条命令的意思是显示有关Apachejetspeed有关的进程

  status :表示显示状态

  jps: 表示查看java当前进程

     

  • 2.2集群安装 

    2.2.1 步骤

    创建zkCluster目录,用于安装zookeeper集群

    创建数据文件data目录

    在data目录中,创建myid文件,指定集群服务编号

    修改zoo.cfg文件,配置集群

    复制配置成功的文件,共计三分

    启动

    

原文地址:https://www.cnblogs.com/miaoww/p/7827760.html