Spring Cloud Alibaba 入门实践

前言

SpringCloudAlibaba实际上对我们的SpringCloud2.x和1.x实现拓展组件功能,相当于对SpringCloud 一代中的一些组件做了一些替代和补充。

SpringCloud一代 SpringCloudAlibaba
注册中心 Eureka nacos
消息中间件 默认三方rabbitmq RocketMq
分布式事务解决方案 第三方替代方案:2pc Seata
分布式配置中心 SpringCloudConfig nacos
熔断降级 Hystrix Sentinel
网关 Zuul Gateway

这篇文章主要针对 注册中心、配置中心 nacos ,熔断降级 Sentinel 和网关Gateway进行实践。

准备工作

与一代Spring Cloud 不同,nacos 和 熔断降级展示面板都需要通过部署方式,不再由我们搭建模块来使用。我这里直接使用docker 来对nacos 和sentinel-dashboard 进行部署搭建。

一、安装Docker

 wget https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo -O /etc/yum.repos.d/docker-ce.repo
 yum -y install docker-ce-18.06.1.ce-3.el7
 systemctl enable docker && systemctl start docker
 docker --version

二、搭建nacos

2、1 拉取镜像文件

docker pull nacos/nacos-server

2、2 创建本地的映射文件,custom.properties

mkdir -p /root/nacos/init.d /root/nacos/logs
touch /root/nacos/init.d/custom.properties

2、3 在custom.properties文件中写入以下配置

management.endpoints.web.exposure.include=*

2、4创建容器:使用standalone模式并开放8848端口,并映射配置文件和日志目录,数据库默认使用 Derby(这里直接使用最为方便一种方式)

docker run -d -p 8848:8848 -e MODE=standalone -e PREFER_HOST_MODE=hostname -v /root/nacos/init.d/custom.properties:/home/nacos/init.d/custom.properties -v /root/nacos/logs:/home/nacos/logs --restart always --name nacos nacos/nacos-server

2、5在页面上输入
http://ip:8848/nacos/ 用户名默认是 nacos 密码 nacos
在这里插入图片描述

三、搭建sentinel-dashboard

3、1拉取镜像

docker pull bladex/sentinel-dashboard

3、2 通过镜像运行容器
(通过这种方式页面展示的端口为 8858 API端口为:8719)

docker run --name sentinel -d -p 8858:8858 -d ec702979af42

3、3 页面上输入http://IP:8858 用户名默认是 sentinel 密码 sentinel
在这里插入图片描述

代码实践

一、搭建maven 父目录

1、搭建父文件pom.xml固定版本号


    <groupId>com.yin</groupId>
    <artifactId>springcloud-alibaba</artifactId>
    <version>1.0-SNAPSHOT</version>

    <modules>
        <module>nacos</module>
        <module>nacos_consumer</module>
        <module>gateway</module>
    </modules>

    <!-- 统一管理jar包版本 -->
    <properties>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <maven.compiler.source>1.8</maven.compiler.source>
        <maven.compiler.target>1.8</maven.compiler.target>
        <junit.version>4.12</junit.version>
        <log4j.version>1.2.17</log4j.version>
        <lombok.version>1.16.18</lombok.version>
        <mysql.version>5.1.47</mysql.version>
        <druid.version>1.1.16</druid.version>
        <mybatis.spring.boot.version>1.3.0</mybatis.spring.boot.version>
        <spring-cloud.version>Hoxton.SR1</spring-cloud.version>
        <springboot.version>2.2.2.RELEASE</springboot.version>
    </properties>



    <dependencyManagement>
        <dependencies>
            <!-- spring boot 2.2.2 -->
            <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-dependencies</artifactId>
                <version>2.2.2.RELEASE</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>
            <!-- spring cloud Hoxton.SR1 -->
            <dependency>
                <groupId>org.springframework.cloud</groupId>
                <artifactId>spring-cloud-dependencies</artifactId>
                <version>Hoxton.SR1</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>
            <!-- spring cloud 阿里巴巴 -->
            <dependency>
                <groupId>com.alibaba.cloud</groupI
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值