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

相关推荐
好奇龙猫5 小时前
日语学习-日语知识点小记-构建基础-JLPT-N3阶段-二阶段(19):阶段练习
学习
松涛和鸣6 小时前
11.C 语言学习:递归、宏定义、预处理、汉诺塔、Fibonacci 等
linux·c语言·开发语言·学习·算法·排序算法
心无旁骛~7 小时前
Masquerade 总结笔记:解锁野外人类视频的机器人政策学习潜力
笔记·机器人
谅望者8 小时前
数据分析笔记14:Python文件操作
大数据·数据库·笔记·python·数据挖掘·数据分析
未若君雅裁9 小时前
LeetCode 51 - N皇后问题 详解笔记
java·数据结构·笔记·算法·leetcode·剪枝
Q***f63510 小时前
后端消息队列学习资源,RabbitMQ+Kafka
学习·kafka·rabbitmq
sg_knight10 小时前
RabbitMQ 中的预取值(prefetch)详解:如何真正提升消费端性能?
java·spring boot·spring·spring cloud·消息队列·rabbitmq·预取值
循环过三天10 小时前
7.7、Python-常用内置函数
笔记·python·学习
烤麻辣烫11 小时前
23种设计模式(新手)-5里氏替换原则
java·学习·设计模式·intellij-idea·里氏替换原则
AA陈超12 小时前
ASC学习笔记0007:用于与GameplayAbilities系统交互的核心ActorComponent
c++·笔记·学习·ue5·虚幻引擎