IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> Java知识库 -> 文章汇总(Spring和SpringCloud篇) -> 正文阅读

[Java知识库]文章汇总(Spring和SpringCloud篇)

本篇总结内容是作者2018年截至2022年的学习总结,后续将持续更新。作者将大部分业余的时间贡献给了代码实属不易,如果文章对你有帮助记得点赞收藏支持一下作者,你们的鼓励是作者最大的动力。

微服务

注册中心

常用注册中心对比

特性NacosEtcdConsulEurekaZookeeper
公司AlibabaCoreOSHashiCorpNetflixApache
活跃度非常活跃活跃较活跃较活跃一般
开发语言JavaGOGOJavaJava
CAPAP/CPCPCPAPCP
一致性算法RaftRaftRaftPaxos中ZAB
暴露接口HTTP/DNSHTTP/grpcHTTP/DNSHTTP客户端

注册中心的产生背景:

注册中心是微服务架构的核心,在传统架构中url繁多不方便管理,通过注册中心可以方便管理服务的和健康情况、负载均衡、服务保护。

中间件:

分布式配置中心

负载均衡

服务网关

服务保护

在用户并发量比较大的情况下,服务会发生雪崩效应:用户同时请求堆积在一个接口,导致其它的接口服务无法访问,这种效果给到用户体验不好。

保护策略:对服务限流(熔断),在高并发场景客户端请求达到阈值,直接调用服务降级方法,给到友好提示如:当前访问人数过多,稍后重试。

分布式事务

分布式事务理论:

CAP理论、BASE理论。2PC提交、TCC。

两阶段提交(2PC):类似tcp的三次握手,分为协调者(领导)、参与者(下属)、用户(客户端),当用户会先跟领导沟通,领导再询问下属有没有准备好,如果半数以上准备好了,那么领导再将数据发给下属。

三阶段提交(3PC):2PC有一个缺陷:就是第一次询问下属需要等待说有都回应,这个时候都会进入阻塞状态。

3PC是在2PC的基础上解决参与者超时问题和多加了一层询问。

常用的分布式事务解决方案:

  • Alibaba Seata

  • LCN

分布式锁

  • Redis(Redission、RedisLock + Lua脚本)

  • ETCD

  • Zookeeper

  • MySQL

服务链路追踪

  • SkyWalking
  • Sleuth + zipkin

微服务中间件汇总

Consul

1.Consul 简介和安装

2.SpringBoot整合Consul搭建服务注册与发现

3.SpringBoot整合Consul搭建配置中心

Zookeeper

【Zookeeper教程】1.Zookeeper简介和安装

【Zookeeper教程】2.Zookeeper数据模型以及与Java整合

【Zookeeper教程】3.SpringBoot整合Zookeeper搭建服务注册与发现

SpringCloud

1.SpringCloud Eureka搭建服务注册与发现

2.SpringCloud 负载均衡Loadbalancer和OpenFeign

SpringCloud Alibaba

1.SpringCloud Alibaba Nacos安装与服务注册

2.SpringCloud Alibaba Nacos分布式配置中心

3.SpringCloud Aibaba Nacos 服务消费和负载均衡

Etcd

1.Etcd的安装

2.SpringBoot整合Jetcd搭建服务注册与发现

Spring

IOC容器

【SpringIOC教程】1.Bean的生命周期

【SpringIOC教程】2.依赖注入

【SpringIOC教程】3.属性赋值和读取配置文件

AOP

【Spring教程】AOP的使用

MVC

【SpringMVC教程】SpringMVC的使用

异常

【Spring 异常教程】异常捕获

异步

Spring中@Async的使用和不生效的原因

SpringBoot基础篇

【SpringBoot教程】1.配置文件和默认配置

【SpringBoot教程】2.自定义Banner

【SpringBoot教程】3.自定义starter

数据库篇

【Spring Data教程】1.SpringBoot整合MySQL和JdbcTemplate的使用

【Spring Data教程】2.整合Mybatis

【Spring Data教程】3.整合Mybatis Plus

【Spring Data教程】4.整合Alibaba Druid

【Spring Data教程】5.JdbcTemplate自定义多数据源实现

【Spring Data教程】6.dynamic-datasource多数据源实现

【Spring Data教程】7.分布式ID设计

【Spring Data教程】8.整合ShardingSphere Jdbc 读写分离

【Spring Data教程】9.整合ShardingSphere Jdbc 单数据库分表

【Spring Data教程】10.Canal数据库同步神器

事务

【Spring事务教程】1.@Transactional的使用

【Spring事务教程】2.@Transactional不生效的原因

【Spring事务教程】3.整合dynamic-datasource解决多数据源事务

Web

【Spring Web教程】1.SpringBoot 整合SpringFox-SwaggerUI 3

【Spring Web教程】2.整合WebSocket

【Spring Web教程】3.整合OkHttp

【Spring Web教程】4.自定义配置https

缓存

【Spring 缓存教程】1.缓存注解@Cache的使用

【Spring 缓存教程】2.SpringBoot整合Java轻量级缓存ehcache

【Spring 缓存教程】3.SpringBoot整合Redis

消息队列

【Spring RabbitMQ教程】01.Docker安装RabbitMQ

【Spring RabbitMQ教程】01.Windows安装RabbitMQ

【Spring RabbitMQ教程】02.SpringBoot整合RabbitMQ和P2P例子

【Spring RabbitMQ教程】03.SpringBoot整合RabbitMQ的Fanout(发布订阅模式)

【Spring RabbitMQ教程】04.SpringBoot整合RabbitMQ的Routing

【Spring RabbitMQ教程】05.SpringBoot整合RabbitMQ的TOPIC

【Spring RabbitMQ教程】06.RabbitMQ重试机制

【Spring RabbitMQ教程】07.RabbitMQ处理幂等性

【Spring RabbitMQ教程】08.RabbitMQ自动响应和手动响应

【Spring MQ教程】2.整合ActiveMQ

【Spring MQ教程】3.整合RocketMQ

【Spring MQ教程】4.整合Kafka

搜索

【SpringBoot教程】整合ElasticSearch

日志

【SpringBoot教程】Log的使用

【SpringBoot教程】整合ELK + Kafka

安全

【SpringSecurity教程】1.权限

【SpringSecurity教程】2.OAuth单点登录

【SpringSecurity教程】3.XSS、CSRF控制

文件上传

【SpringBoot教程】1.整合阿里云OSS

【SpringBoot教程】2.整合七牛云

其它第三方

【SpringBoot教程】1.整合百度AI

【SpringBoot教程】2.整合阿里云短信

  Java知识库 最新文章
计算距离春节还有多长时间
系统开发系列 之WebService(spring框架+ma
springBoot+Cache(自定义有效时间配置)
SpringBoot整合mybatis实现增删改查、分页查
spring教程
SpringBoot+Vue实现美食交流网站的设计与实
虚拟机内存结构以及虚拟机中销毁和新建对象
SpringMVC---原理
小李同学: Java如何按多个字段分组
打印票据--java
上一篇文章      下一篇文章      查看所有文章
加:2022-06-08 18:52:54  更:2022-06-08 18:54:39 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/23 20:49:53-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码