SpringCloud学习笔记(一)

SpringCloud、SpringCloud Alibaba

前置知识:

核心新组件:

所用版本:

学习方法:

1.看理论:官网

2.看源码:github

一、微服务理论知识

二、关于SpringCloud各种组件的停更/升级/替换

主业务逻辑是:下订单+做支付

Spring全家桶可以实现以下内容:

2.1 服务注册与发现(做服务注册与发现)

Eureka:停更被动维护中

Consul:功能比Eureka好

Etcd:go语言用这个比较合适

Alibaba Nacos:

2.2 服务调用和负载均衡

Ribbon:

OpenFign:

LoadBalancer:被放在SpringCloudCommons里面,替代Ribbon

2.3 分布式事务(⭐)

Alibaba Seata:

LCN:

Hmily:

什么是事务?

什么是本地事务?

什么是分布式事务?

你们公司在解决分布式事务的时候有哪些方案?

请按照2PC、3PC、TCC、本地消息独立微服务、MQ保障的一致性和最大努力通知,这几个解决方式上、维度上请跟我说一下。

2.4 服务熔断和降级

Hystrix:现在不适用了,熔断降级的框架,现在停更了。

Spring Cloud Circuit Breaker: 现在的主流框架,接口和规范、list接口,实现类有Resilience4Java、Spring Retry

Alibaba Sentinel:哨兵,主流。

2.5 服务链路追踪

Spring Cloud Sleuth + Zipkin:(现在是半退休状态)Sleuth 进行数据的收集,Zipkin 进行数据图形化的展现

Micrometer Tracing:

2.6 服务网关

Zuul:(不使用了)

Gate Way:

2.7 分布式配置管理

Spring Cloud Config + Spring Cloud Bus:不推荐使用

Consul:

Alibaba Nacos:

三、微服务架构编码 Base 工程模块构建

约定 > 配置 > 编码

3.1 IDEA 新建Project 和 Maven 父工程

3.1.1 微服务 Cloud 整体聚合 Maven 父工程Project

  1. New Project
  2. 聚合总父工程名字
  3. 字符编码
  4. 注解生效激活
  5. java版本编译版本选17
  6. File Type 过滤

3.2 Mapper4一键生成

3.2.1 mybatis-genetator

网址:

mybatis 目前是写数据库增删改查、Dao层的默认标准

3.2.2 MyBtis 通用 Mapper4 官网

网址:https://github.com/abel533/Mapper

3.2.3 一键生成步骤

Controller ------》Service ------》Dao

直接生成entity+mapper接口+xml实现SQL

3.2 Rest 通用 Base 工程构建

微服务小口诀:

1、建 module

2、改 POM

3、写 YML

4、主启动

5、业务类

相关推荐
程序员劝退师_11 分钟前
Kafka学习笔记
笔记·学习·kafka
帅比九日20 分钟前
【HarmonyOS NEXT】实战——登录页面
前端·学习·华为·harmonyos
李笠^_^26 分钟前
Python学习------第八天
学习
Lotay_天天32 分钟前
删库跑路,启动!
学习
爱吃生蚝的于勒37 分钟前
C语言最简单的扫雷实现(解析加原码)
c语言·开发语言·学习·计算机网络·算法·游戏程序·关卡设计
麻花20131 小时前
WPF学习之路,控件的只读、是否可以、是否可见属性控制
服务器·前端·学习
wywcool1 小时前
JVM学习之路(5)垃圾回收
java·jvm·后端·学习
醇氧2 小时前
ab (Apache Bench)的使用
linux·学习·centos·apache
杨荧2 小时前
【JAVA毕业设计】基于Vue和SpringBoot的宠物咖啡馆平台
java·开发语言·jvm·vue.js·spring boot·spring cloud·开源
小青头2 小时前
numpy学习笔记
笔记·学习·numpy