栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 前沿技术 > 大数据 > 大数据系统

SpringCloud

SpringCloud

SpringCloud技术栈
注册中心:eureka(闭源)、zookeeper、consul、nacos
服务调用:ribbon、loadBalancer、feign、openFeign
服务降级:hystrix、resilience4j、sentienl
服务网关:zuul(阻塞异步)、zuul2(未整合)、gateway(非阻塞异步)
服务配置:config、nacos
服务总线:bus、nacas

一、注册中心 1、eureka配置(AP架构)

eureka虽然2.x版本闭源了,但是1.x版本依旧可以使用,下面列出eureka的常规配置,可根据自己的需要进行修改

1.1、添加eureka依赖

客户端:


	org.springframework.cloud
	spring-cloud-starter-netflix-eureka-client

服务端:


	org.springframework.cloud
	spring-cloud-starter-netflix-eureka-server

1.2、配置文件

服务端配置文件(application.yml):

server:
  port: 7001
  
eureka:
  instance:
    hostname: eureka7001.com  #eureka服务端的实例名字
  client:
    #表识不向注册中心注册自己
    register-with-eureka: false   
    #表示自己就是注册中心,职责是维护服务实例,并不需要去检索服务
    fetch-registry: false   
    service-url:
      #设置与eureka server交互的地址,查询服务和注册服务都需要依赖这个地址
      defaultZone: http://eureka7002.com:7002/eureka/
  server:
    #fasle: 表示eureka server7001关闭自我保护机制,保证不可用服务被及时踢除
    enable-self-preservation: false    
    eviction-interval-timer-in-ms: 20000 #自我保护时间

客户端配置文件(application.yml):

server:
  port: 8001

spring:
  application:
    name: cloud-payment-service
  datasource:
    type: com.alibaba.druid.pool.DruidDataSource
    driver-class-name:  com.mysql.jdbc.Driver
    url: jdbc:mysql://localhost:3306/db2020
    username: root
    password: root

eureka:
  client:
    register-with-eureka: true
    fetchRegistry: true
    service-url:
      defaultZone: http://eureka7001.com:7001/eureka, http://eureka7002.com:7002/eureka
  instance:
    instance-id: payment8001 #主机名称
    prefer-ip-address: true #访问信息有IP信息提示
    #心跳检测与续约时间
    #开发时没置小些,保证服务关闭后注册中心能及时剔除服务
    #Eureka客户端向服务端发送心跳的时间间隔,单位为秒(默认是30秒)
    lease-renewal-interval-in-seconds: 1
    #Eureka服务端在收到最后一次心跳后等待时间上限,单位为秒(默认是90秒),超时将剔除服务
    lease-expiration-duration-in-seconds: 2
1.3、启动类配置

a)服务端启动类需要加上@EnableEurekaServer注解
b)客户端启动类需要加上@EnableEurekaClient注解

2、zookeeper配置(CP架构)

zookeeper是一个分布式协调工具,可以实现注册中心功能;

2.1、安装虚拟机及JDK

(1)安装虚拟机(virtual box、VMware):略
(2)下载CentOS7镜像:略
(3)安装镜像:略
(4)安装JDK及配置环境变量:略
(5)下载zookeeper安装包
https://zookeeper.apache.org/releases.html

推荐阿里提供的镜像
地址:https://mirrors.aliyun.com/centos/
可供选择版本:(建议选【DVD】标准版本)
【DVD】标准版本
【Everything】集成所有软件版本
【LiveGNOME】GNOME桌面版本
【LiveKDE】KDE桌面版本
【Minimal】最小安装版本
【NetInstall】网络安装镜像版本

2.2、搭建zookeeper服务端(单机) 2.2.1、安装zookeeper

使用Xshell连接虚拟机(略)

开始安装:

(1)切换到/opt目录并上传zookeeper安装包

cd /opt   #切换到opt目录
#将zookeeper安装上传到opt目录(直接将安装包拖入)
ls		#查看当前当前目录下的子目录或文件


(2)解压zookeeper安装包

tar -zxvf apache-zookeeper-3.5.9-bin.tar.gz
ls		#查看当前当前目录下的子目录或文件



(3)对解压后的文件(apache-zookeeper-3.6.3-bin)重命名

mv apache-zookeeper-3.6.3-bin zookeeper		#重命名文件
ls		#查看当前当前目录下的子目录或文件


(4)删除zookeeper压缩包

rm -rf apache-zookeeper-3.6.3-bin.tar.gz	#删除文件
ls		#查看当前当前目录下的子目录或文件


(5)创建zoo.cfg文件

cd zookeeper/conf		#切换到zookeeper的配置文件目录下
cp zoo_sample.cfg zoo.cfg		#创建zoo.cfg配置文件
ls		#查看当前当前目录下的子目录或文件

2.2.2、启动zookeeper

(1)切换到bin目录

cd /opt/zookeeper/bin		#切换到zookeeper的bin目录
ls		#查看当前当前目录下的子目录或文件


(2)查看zookeeper启动状态

./zkServer.sh status  #查看状态  start:启动;stop:停止;status:运行状态


(3)启动zookeeper

./zkServer.sh start


(4)客户端连接测试

./zkCli.sh


若是连接不成功,看看是不是端口被占用

2.3、搭建zookeeper集群(略) 3、consul配置(CP架构) 3.1、下载consul

官方下载网址:https://www.consul.io/downloads

3.2、安装consul

(1)构建consul目录

mkdir /opt/consul  #创建目录consul
cd /opt/consul	#切换到consul目录
unzip	#确认安装了unzip


(2)上传并解压consul安装包

unzip consul_1.10.2_linux_amd64.zip  解压安装包


3.3、启动consul

关闭防火墙

systemctl stop firewalld

启动consul

./consul agent -dev -ui -node=consul-dev -client=192.168.179.131   #启动consul

访问: http://192.168.179.131:8500

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/283113.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号