学习课程:目前B站最好的SpringCloudAlibaba教程全套100集,从入门到精通保姆级教程!(2022最新版)
1. SpringCloud Alibaba介绍
SpringCloud Alibaba致力于提供微服务开发的一站式解决方案,此项目包含开发微服务架构的必须组件,方便开发者通过SpringCloud编程模型轻松使用这些组件来开发微服务架构。
常用的微服务组件:
微服务架构:
2. SpringCloud和SpringBoot关系
SpringBoot专注于快速方便的开发单个个体微服务。
SpringCloud是关注全局的微服务协调整理治理框架,它将SpringBoot开发的一个个单体微服务整合并管理起来,为各个微服务之间提供:配置管理、服务发现、断路器、路由、微代理、事件总线、全局锁、决策竞争、分布式会话等等集成服务。
SpringBoot专注于快速、方便的开发单个微服务个体;SpringCloud关注全局的服务治理框架。
3. SpringCloud Alibaba环境搭建
搭建流程:
- 基于SpringBoot的父maven工程(File ->new -> Project -> Spring Initializr)
- 分别创建订单服务模块和库存模块(File -> new -> module -> maven)
版本说明:link
- SpringCloud Alibaba:2.2.5.RELEASE
- SpringBoot:2.3.2.RELEASE
- SpringCloud:Hoxton.SR8
父pom.xml配置:
<dependencyManagement>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>${spring.boot.version}</version>
<type>pom</type>
<scope>import</scope>
</dependency>
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-alibaba-dependencies</artifactId>
<version>${spring.cloud.alibaba.version}</version>
<type>pom</type>
<scope>import</scope>
</dependency>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-dependencies</artifactId>
<version>${spring.cloud.version}</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>
该课程下:快速启动微服务架构
springcloud快速启动:
0.启动mysql nacos库 + scd_order/stock库
root/789456
连接错误解决:https://yangxunyu.xyz/?p=53
1.启动nacos8849、8850、8851:sh startup.sh
http://192.168.1.7:8849/nacos/index.html
http://192.168.1.7:8850/nacos/index.html
http://192.168.1.7:8851/nacos/index.html
192.168.1.7是本机ip地址!
查看本机ip地址:ifconfig | grep inet
2.启动Nginx:
a. nginx的启动
nginx
b. 查看当前 nginx 运行的进程
ps -ef | grep nginx
c. 启动后访问nacos后台(nginx监听的是8847端口)
http://192.168.1.7:8847/nacos/index.html
3.调整项目中的nacos server地址为:192.168.1.7:8847
本地启动报错:failed to req API:/nacos/v1/ns/instance after all servers xxx
解决:https://blog.csdn.net/Maven_Chen/article/details/128468044
4.启动sentinel控制台:
java -jar -Dserver.port=8848 sentinel-dashboard-1.8.0.jar
访问控制台:http://localhost:8848/#/login
5. 启动seata:
sh seata-server.sh -p 8091 -n 1 ;
本地启动报错:服务启动出现no available service ‘null‘ found, please make sure registry config correct
解决:https://blog.csdn.net/qq_41731201/article/details/124722904