Dubbo介绍和整合

dubbo

A. 原理

流程:

A1. 服务启动,服务提供者向注册中心注册服务。

A2. 消费者需要服务的时候向注册中心订阅服务,注册中心返回一个服务提供者的地址列表给消费者。

A3. 消费者根据一定的负载均衡算法,访问一台服务提供者,如果访问失败,则换一台访问。

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

B. Dubbo的核心配置

C. Dubbo常识

D1. 支持的协议: Dubbo协议(默认), rmi协议, http协议, webservice协议,  hessian协议, redis协议, memcache协议。

D2. Dubbo安全机制:

Dubbo通过token令牌防止用户绕过注册中心直连,然后在注册中心上管理授权。还提供服务黑白名单来控制服务所允许的调用方。

D3. Dubbo使用的通信框架: netty框架(默认),还有mina.

D4. 注册中心:一般采用zookeeper,也有redis等。

D5. 使用的序列化框架: Hessian框架(默认), dubbo, FastJson, Java自带的序列化。

D6. 服务者能实现失效踢出采用的原理:  基于zookeeper的临时节点原理,心跳检测机制。


dubbo整合


1.1    搭建Dubbo

1.1.1    centOs6.5安装服务器

1.       使用NAT模式

虚拟机网络连接使用NAT模式,物理机网络连接使用Vmnet8。虚拟机设置里面——网络适配器,网络连接选择NAT模式。
虚拟机菜单栏—编辑—虚拟网络编辑器,选择Vmnet8 NAT模式,
1.在最下面子网设置ip为192.168.20.0 子网掩码255.255.255.0
2.NAT设置里面网关IP为192.168.20.2
3.使用本地DHCP服务将IP地址分配给虚拟机不勾选
设置完成后点击应用退出。

编辑linux网卡eth0的配置文件

a)   vi/etc/sysconfig/network-scripts/ifcfg-eth0

2. 输入上述命令后回车,打开配置文件,使用方向键移动光标到最后一行,按字母键“O”,进入编辑模式,输入以下内容:
IPADDR=192.168.20.3
NETMASK=255.255.255.0
GATEWAY=192.168.20.2
另外光标移动到”ONBOOT=no”这一行,更改为ONBOOT=yes
“BOOTPROTO=dhcp”,更改为BOOTPROTO=none
完成后,按一下键盘左上角ESC键,输入:wq 在屏幕的左下方可以看到,输入回车保存配置文件。

3. 设置DNS地址,运行命令#vi /etc/resolv.conf
光标移动到空行,按“O”键,输入 nameserver192.168.20.2 退出按ESC键,输入:wq 回车保存配置文件。
重启网络服务 #service network restart
重启之后#ifconfig 查看配置的ip地址,物理机ping这个地址测试是否能通。

Centos6.5克隆虚拟机时遇到的问题

# service network restart

正在关闭接口 eth0: [确定]
关闭环回接口: [确定]
弹出环回接口: [确定]
弹出界面 eth0: Determining if ipaddress 192.168.100.201 is already in use for device eth0...[确定]

或Bringing up interface eth0: Error: No suitable devicefound: no device found

解决办法:

    首先,打开/etc/udev/rules.d/70-persistent-net.rules内容如下面例子所示:

我们看系统中eth0的配置:

vi /etc/sysconfig/network-scripts/ifcfg-eth0

也就是说,克隆的时候把网卡的MAC地址也克隆了,导致了有两个系统有相同的MAC地址。于是,要么把DEVICE=eth0改成DEVICE=eth1,然后HWADDR改成00:0c:29:75:d1:d7;同时把eth1的配置注释掉,然后在ifcfg-eth0中修改HWADDR。之后再service networkrestart即可。


发布了28 篇原创文章 · 获赞 50 · 访问量 4万+

猜你喜欢

转载自blog.csdn.net/qq_21873747/article/details/79474967
今日推荐