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、业务类

相关推荐
pop_xiaoli几秒前
OC学习—命名规范
学习·ios
jackson凌1 分钟前
【Java学习笔记】String类(重点)
java·笔记·学习
行云流水剑10 分钟前
【学习记录】在 Ubuntu 中将新硬盘挂载到 /home 目录的完整指南
服务器·学习·ubuntu
vijaycc13 分钟前
python学习打卡day47
学习
Camellia03111 小时前
嵌入式学习--江协stm32day5
stm32·嵌入式硬件·学习
a_157153249861 小时前
SpringCloud学习笔记-4
笔记·学习·spring cloud
FserSuN1 小时前
Prompt工程学习之思维树(TOT)
人工智能·学习·prompt
哆啦A梦的口袋呀2 小时前
基于Python学习《Head First设计模式》第九章 迭代器和组合模式
python·学习·设计模式
虾球xz2 小时前
CppCon 2015 学习:3D Face Tracking and Reconstruction using Modern C++
开发语言·c++·学习·3d
sponge'2 小时前
opencv学习笔记2:卷积、均值滤波、中值滤波
笔记·python·opencv·学习