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

相关推荐
我命由我12345几秒前
Photoshop - Photoshop 工具栏(63)注释工具
学习·ui·职场和发展·求职招聘·职场发展·学习方法·photoshop
『往事』&白驹过隙;9 分钟前
在ARM开发中 volatile与const关键字的关键用途
c语言·arm开发·mcu·物联网·学习·iot
檀越剑指大厂9 小时前
【Elasticsearch系列廿】Logstash 学习
大数据·学习·elasticsearch
FakeOccupational9 小时前
【电路笔记 通信】数字混频(采样做频谱搬移)+频率混叠(aliasing)公式证明+带通采样示例
笔记
woodykissme11 小时前
渐开线圆柱齿轮几何计算全解析(一):从理论到实践的完整指南
学习·齿轮·齿轮加工
Asher阿舍技术站12 小时前
【AI基础学习系列】四、Prompt基础知识
人工智能·学习·prompt
眼镜哥(with glasses)13 小时前
Ollama 在 Windows 系统下修改安装路径和模型存储路径的官方指引——【大模型】01-27笔记
笔记
CappuccinoRose13 小时前
CSS 语法学习文档(十三)
前端·css·学习·postcss·模块化·预处理器
im_AMBER13 小时前
Leetcode 121 翻转二叉树 | 二叉树中的最大路径和
数据结构·学习·算法·leetcode
爱学java的ptt13 小时前
场景题:设计排行榜
笔记·面试