Dubbo-01

RPC(分布式服务框架)

  • 什么叫RPC

    RPC【Remote Procedure Call】是指远程过程调用,是一种进程间通信方式,他是一种技术的思想,而不是规范。它允许程序调用另一个地址空间(通常是共享网络的另一台机器上)的过程或函数,而不用程序员显式编码这个远程调用的细节。即程序员无论是调用本地的还是远程的函数,本质上编写的调用代码基本相同。

  • 基本原理

在这里插入图片描述

  • RPC两个核心模块:通讯,序列化。

在这里插入图片描述

Dubbo

  • 简介
    Apache Dubbo (incubating) |ˈdʌbəʊ| 是一款高性能、轻量级的开源Java RPC框架,
    它提供了三大核心能力:
    1、面向接口的远程方法调用,
    2、智能容错和负载均衡,
    3、以及服务自动注册和发现。

在这里插入图片描述

服务提供者(Provider):暴露服务的服务提供方,服务提供者在启动时,向注册中心注册自己提供的服务。

服务消费者(Consumer): 调用远程服务的服务消费方,服务消费者在启动时,向注册中心订阅自己所需的服务,服务消费者,从提供者地址列表中,基于软负载均衡算法 ,选一台提供者进行调用,如果调用失败,再选另一台调用。

注册中心(Registry):注册中心返回服务提供者地址列表给消费者,如果有变更,注册中心将基于长连接推送变更数据给消费者

监控中心(Monitor):服务消费者和提供者,在内存中累计调用次数和调用时间,定时每分钟发送一次统计数据到监控中心

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

dubbo环境搭建

  • zookeeper注册中心安装
    安装配置
    1、首先可以从Zookeeper的官方网站下载最新的安装包: http://www.apache.org/dist/zookeeper/

    2、上传并解压: tar -xzvf zookeeper-3.4.13.jar

    3、修改环境变量: vi /etc/profile

    在文件最后添加:

    export ZOOKEEPER_HOME=/home/zookeeper/zookeeper-3.4.13

    export PATH= P A T H : PATH: PATH:ZOOKEEPER_HOME/bin

    执行命令: source /etc/profile ,使环境变量生效

    4、修改zookeeper的配置文件

    cp zoo_sample.cfg zoo.cfg

conf/zoo.cfg 文件中增加 dataDir=/home/zookeeper/zookeeper-3.4.13/data

dataLogDir=/home/zookeeper/zookeeper-3.4.13/logs

clientPort 设置zk端口

5、修改日志文件输出目录,如下图所示:

修改conf/log4j.properties文件:
修改bin/zkEnv.sh文件:

6、操作zookeeper

sh zkServer.sh start 启动zk,

sh zkServer.sh status 查看启动zk状态

sh zkServer.sh stop 停止zk

设置开机启动
一、以root用户登录系统:

二、进入init.d文件夹

cd /etc/init.d/

三、创建并打开zookeeper文件

vi zookeeper

四、zookeeper文件如下:

#!/bin/bash

#chkconfig:2345 20 90

#description:zookeeper

#processname:zookeeper

export JAVA_HOME=/usr/local/jdk1.7

export PATH= J A V A H O M E / b i n : JAVA_HOME/bin: JAVAHOME/bin:PATH

case $1 in

     start) su root /usr/local/zookeeper-3.4.9/bin/zkServer.sh start;;

     stop) su root /usr/local/zookeeper-3.4.9/bin/zkServer.sh stop;;

     status) su root /usr/local/zookeeper-3.4.9/bin/zkServer.sh status;;

     restart) su root /usr/local/zookeeper-3.4.9/bin/zkServer.shrestart;;

     *)  echo "requirestart|stop|status|restart"  ;;

esac

五、保存退出

:wq

六、加权限,把 zookeeper修改为可运行的文件,命令参考如下:

chmod 755 zookeeper

chmod a+x zookeeper

七、使用chkconfig命令把 zookeeper命令加入到系统启动队列中:

chkconfig --add zookeeper

八、查看zookeeper的状态:

chkconfig --list zookeeper

九、测试

service zookeeper start

service zookeeper stop

service zookeeper restart

service zookeeper status

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值