Dubbo和Spring Cloud微服务架构对比

Posted RookieMZL

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Dubbo和Spring Cloud微服务架构对比相关的知识,希望对你有一定的参考价值。

今天的知识点有 3 个:

  • Linux 下安装、配置 JDK。
  • Windows 下启启动 dubbo 和 zookeeper。
  • Linux 下启动 dubbo 和 zookeeper。
1、Linux 下安装、配置 JDK。

工具:VMWare、CentOS、Putty、WinSCP、jdk-8u191-linux-x64.tar.gz

  • 因为服务器比较贵,所以平时自己练习可以使用虚拟机安装 Linux 即可。小编使用的就是 VMWare ,安装的 CentOS (如何安装自己谷歌)。安装好 CentOS 后,推荐使用 Putty + WinSCP 登陆系统。

  • 使用 WinSCP 上传 JDK(一定要是 Linux 版本的,切勿下载错误)到 root 下。小编使用的是 jdk-8u191-linux-x64.tar.gz。

  • 解压、移动 tar 包

    解压:tar -zxvf jdk-8u191-linux-x64.tar.gz

    移动:mv jdk1.8.0_191/ /usr/local/

  • 配置环境变量

    命令:vim /etc/profile。

    在打开的 profile 文件后面追加以下信息即可

    JAVA_HOME=/usr/local/jdk1.8.0_191

    JRE_HOME=$JAVA_HOME/jre

    PATH=$JAVA_HOME/bin:$PATH

    export PATH

    安装过程果提示没有 vim,安装 vim 命令: yum install vim,安装过程中按 y 即可,完成安装。

  • 激活配置

    source /etc/profile

  • 输入 java -version 看是否已经安装成功

2、Windows 下启动 dubbo 和 zookeeper

Windows 安装 zookeeper-3.4.12.tar.gz

  • windows 下直接解压 ZK 压缩包,在 bin 同级目录下新建 data 文件夹,用于存储数据。

  • 重命名conf目录下的zoo_sample.cfg 文件为zoo.cfg 并修改里面的内容为以下

    # 心跳基本时间单位,毫秒级,ZK基本上所有的时间都是这个时间的整数倍。

    tickTime=2000

    # 集群中的follower服务器(F)与leader服务器(L)之间初始连接时能容忍的最多心跳数

    initLimit=10

    # 集群中的follower服务器与leader服务器之间请求和应答之间能容忍的最多心跳数

    syncLimit=5

    # 内存数据库快照存放地址,如果没有指定事务日志存放地址(dataLogDir),默认也是存放在这个 路径下,建议两个地址分开存放到不同的设备上。

    dataDir=D:\\Repository\\MicroService\\zookeeper-3.4.12\\data

    # 端口

    clientPort=2181

  • 启动 bin 下 zkServer.cmd 即可。启动成功如下图示

    显示绑定 2181 端口成功。

dubbo 编译安装

  • 克隆 develop 分支代码到本地(GitHub: https://github.com/apache/dubbo-admin)

    git clone -b develop git@github.com:apache/dubbo-admin.git

  • 在项目路径 dubbo-admin 下打开 DOS 窗口,编译、打包(执行完成时间较长)

    mvn clean package

  • 启动 dubbo (首先一定要开启 ZK 服务)

    在路径 dubbo-admin\\dubbo-admin-server\\target,开启DOS窗口,输入命令:java -jar dubbo-admin-server-0.1.jar,即可完成启动!!!!

  • 在浏览器输入地址 http://localhost:8080/,即可看到 dubbo 控制中心,说明已经启动成功!!

  • 小技巧 : 亲测可以使用 IDEA ,导入 dubbo 项目编译打包后,在 IDEA 的 Terminal 启动(前提是配置了 Git)

3、Linux 下启动 dubbo 和 zookeeper

Linux 下 zookeeper 的安装

  • 解压、移动 tar 包到 /usr/local/

    tar -zxvf zookeeper-3.4.12.tar.gz -C /usr/local/

  • 创建 data 文件夹、修改文件 zoo_sample 为 zoo.cfg

    创建 data 文件夹:mkdir data

    修改 conf :mv zoo_sample.cfg zoo.cfg

  • 编辑 zoo.cfg ,添加配置信息

    输入命令 :vim zoo.cfg。

    修改 dataDir 配置信息为:dataDir=/usr/local/zookeeper-3.4.12/data

  • 进入 ZK 的 bin 目录,启动 ZK

    ./zkServer.sh start、./zkServer.sh stop、./zkServer.sh status

Linux 下 安装 dubbo 管理控制台

dubbo本身并不是一个服务软件。它其实就是一个jar包能够帮你的java程序连接到zookeeper,并利用zookeeper消费、提供服务。所以你不用在Linux上启动什么dubbo服务。

但是为了让用户更好的管理监控众多的dubbo服务,官方提供了一个可视化的监控程序。

  • 直接将刚才 dubbo-admin\\dubbo-admin-server\\target 路径下编译完成的 dubbo-admin-server-0.1.jar 上传到 linux 目录下启动即可。

    启动命令:java -jar dubbo-admin-server-0.1.jar

  • 输入地址: http://192.168.197.133:8080 即可访问管理中心。

    192.168.197.133 是我的虚拟机地址

4、演示代码

https://github.com/RookieMZL/practice-sample/tree/dev/dubbo

5、Dubbo 更多信息

中文社区: http://dubbo.apache.org/zh-cn/

dubbo-admin: https://github.com/apache/dubbo-admin

以上是关于Dubbo和Spring Cloud微服务架构对比的主要内容,如果未能解决你的问题,请参考以下文章

微服务架构框架选择:Spring Cloud 和 Dubbo对比

微服务架构框架选择:Spring Cloud 和 Dubbo对比

Dubbo 和 Spring Cloud微服务架构 比较及相关差异

Dubbo和Spring Cloud微服务架构‘

终极对决!Dubbo 和 Spring Cloud 微服务架构到底孰优孰劣?

到底孰优孰劣?Dubbo和Spring Cloud微服务架构终极对决!