自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(206)
  • 收藏
  • 关注

原创 【前后端分离博客】学习笔记06 --- AOP记录操作、异常、访问日志

YML文件中配置线程池参数获取参数编写线程池配置类工具类编写异步任务管理类编写工厂类该类启动异步线程,并调用业务接口实现具体业务,将记录的日志存入数据库。

2023-05-19 21:44:43 607 2

原创 【前后端分离博客】学习笔记05 --- canal

elasticsearch中的数据来自于mysql数据库,因此mysql数据发生改变时,elasticsearch也必须跟着改变,这个就是elasticsearch与mysql之间的数据同步。常见的数据同步方案有三种:同步调用异步通知监听binlog。

2023-05-19 02:12:06 530

原创 【前后端分离博客】学习笔记04 --- 文件上传-策略模式

上述只是对于策略模式的简单实践。我们可以通过网站全局配制结合前端界面来完成选择使用哪个平台来进行文件的上传。当我们选中哪种上传模式,那么后台则会执行该上传方式。

2023-05-14 00:05:02 734

原创 【前后端分离博客】学习笔记03 --- API请求限流

API请求限流。

2023-05-12 18:34:17 231

原创 【前后端分离博客】学习笔记02 --- 分页插件实现分页功能

分页插件实现分页功能

2023-05-12 18:06:42 151

原创 【前后端分离博客】学习笔记01 --- 登录模块Sa-Token

基于Springboot + Vue3 开发的前后端分离博客。

2023-05-12 17:44:19 1622 2

原创 Java学习笔记 --- Stream流

tream流的好处直接阅读代码的字面意思即可完美展示无关逻辑方式的语义:获取流、过滤姓张、过滤长度为3、逐一打印Stream流把真正的函数式编程风格引入到Java中代码简洁

2023-05-11 17:12:13 354

原创 JWT认证

JSON Web Token (JWT)是⼀个开放标准(RFC 7519),它定义了⼀种紧凑的、⾃包含的⽅式,⽤于 作为JSON对象在各⽅之间安全地传输信息。该信息可以被验证和信任,因为它是数字签名的。

2023-05-09 16:42:45 1017

原创 RabbitMQ --- 惰性队列、MQ集群

当生产者发送消息的速度超过了消费者处理消息的速度,就会导致队列中的消息堆积,直到队列存储消息达到上限。之后发送的消息就会成为死信,可能会被丢弃,这就是消息堆积问题。

2023-05-07 18:32:04 4003

原创 RabbitMQ --- 死信交换机

什么样的消息会成为死信?消息被消费者reject或者返回nack消息超时未消费队列满了死信交换机的使用场景是什么?如果队列绑定了死信交换机,死信会投递到死信交换机;可以利用死信交换机收集所有消费者处理失败的消息(死信),交由人工处理,进一步提高消息队列的可靠性。消息超时的两种方式是?给队列设置ttl属性,进入队列后超过ttl时间的消息变为死信给消息设置ttl属性,队列接收到消息超过ttl时间后变为死信如何实现发送一个消息20秒后消费者才收到消息?给消息的目标队列指定死信交换机。

2023-05-07 17:10:11 901

原创 RabbitMQ --- 消息可靠性

​消息从发送,到消费者接收,会经理多个过程:其中的每一步都可能导致消息丢失​

2023-05-07 16:22:34 1363

原创 Redis --- 多级缓存

传统的缓存策略一般是请求到达Tomcat后,先查询Redis,如果未命中则查询数据库,如图: 存在下面的问题:多级缓存就是充分利用请求处理的每个环节,分别添加缓存,减轻Tomcat压力,提升服务性能:在多级缓存架构中,Nginx内部需要编写本地缓存查询、Redis查询、Tomcat查询的业务逻辑,因此这样的nginx服务不再是一个反向代理服务器,而是一个编写业务的Web服务器了。因此这样的业务Nginx服务也需要搭建集群来提高并发,再有专门的nginx服务来做反向代理,如图: 另外,我们的Tomcat服务将

2023-05-06 22:11:07 1285 1

原创 Redis --- 哨兵、分片集群

Redis提供了哨兵(Sentinel)机制来实现主从集群的自动故障恢复。

2023-05-05 16:02:22 864

原创 Redis --- 持久化、主从

Redis有两种持久化方案:RDB持久化、AOF持久化。

2023-05-05 15:01:47 518

原创 分布式事务 --- Seata事务模式、高可用

Seata四种不同的事务模式。

2023-05-04 16:18:36 1017

原创 分布式事务 --- 理论基础、Seata架构、部署

分布式事务,就是指不是在单个服务或单个数据库架构下,产生的事务

2023-05-04 15:50:57 533

原创 Elasticsearch --- 数据同步、集群

elasticsearch中的酒店数据来自于mysql数据库,因此mysql数据发生改变时,elasticsearch也必须跟着改变,这个就是elasticsearch与mysql之间的。常见的数据同步方案有三种:同步调用异步通知监听binlog。

2023-05-04 15:15:07 1378

原创 Sentinel --- 隔离和降级、授权规则、规则持久化

限流是一种预防措施,虽然限流可以尽量避免因高并发而引起的服务故障,但服务还会因为其它原因而故障。而要将这些故障控制在一定范围,避免雪崩,就要靠线程隔离(舱壁模式)和熔断降级手段了。

2023-05-03 20:26:42 1025

原创 Sentinel --- 简介、流量控制

Sentinel是阿里巴巴开源的一款微服务流量控制组件。丰富的应用场景:Sentinel 承接了阿里巴巴近 10 年的双十一大促流量的核心场景,例如秒杀(即突发流量控制在系统容量可以承受的范围)、消息削峰填谷、集群流量控制、实时熔断下游不可用应用等。完备的实时监控:Sentinel 同时提供实时的监控功能。您可以在控制台中看到接入应用的单台机器秒级数据,甚至 500 台以下规模的集群的汇总运行情况。广泛的开源生态。

2023-05-03 16:45:00 1115

原创 Elasticsearch --- 数据聚合、自动补全

聚合可以让我们极其方便的实现对数据的统计、分析、运算。例如:

2023-04-30 16:52:44 1384

原创 Elasticsearch --- DSL、RestClient查询文档、搜索结果处理

elasticsearch的查询依然是基于JSON风格的DSL来实现的。

2023-04-29 15:56:15 1259

原创 Elasticsearch --- RestAPI、RestClient操作文档

ES官方提供了各种不同语言的客户端,用来操作ES。这些客户端的本质就是组装DSL语句,通过http请求发送给ES。

2023-04-28 15:57:27 1268

原创 Elasticsearch --- 索引库、文档操作

索引库就类似数据库表,mapping映射就类似表的结构。我们要向es中存储数据,必须先创建“库”和“表”。

2023-04-28 11:16:33 718

转载 Elasticsearch --- 简介、安装

什么是elasticsearch?一个开源的分布式搜索引擎,可以用来实现搜索、日志统计、分析、系统监控等功能什么是elastic stack(ELK)?是以elasticsearch为核心的技术栈,包括beats、Logstash、kibana、elasticsearch什么是Lucene?是Apache的开源搜索引擎类库,提供了搜索引擎的核心API分词器的作用是什么?创建倒排索引时对文档分词用户搜索时,对输入的内容分词IK分词器有几种模式?ik_smart:智能切分,粗粒度。

2023-04-28 09:20:41 798

原创 RabbitMQ --- SpringAMQP

SpringAMQP是基于RabbitMQ封装的一套模板,并且还利用SpringBoot对其实现了自动装配,使用起来非常方便。

2023-04-25 21:14:24 558 1

原创 RabbitMQ --- 简介、快速入门

微服务间通讯有同步和异步两种方式:同步通讯:就像打电话,需要实时响应异步通讯:就像发邮件,不需要马上回复

2023-04-25 20:53:34 500

原创 Docker --- Docker-Compose、镜像仓库

Docker Compose可以基于Compose文件帮我们快速的部署分布式应用,而无需手动一个个创建和运行容器!

2023-04-25 15:56:26 1780

原创 Docker --- 基本操作、Dockerfile自定义镜像

基本操作、Dockerfile自定义镜像

2023-04-25 15:55:50 896

原创 Docker --- 简介、安装

docker是一个系统进程;虚拟机是在操作系统中的操作系统docker体积小、启动速度快、性能好;虚拟机体积大、启动速度慢、性能一般

2023-04-25 15:53:08 553

原创 SpringCloud --- Gateway服务网关

Spring Cloud Gateway 是 Spring Cloud 的一个全新项目,该项目是基于 Spring 5.0,Spring Boot 2.0 和 Project Reactor 等响应式编程和事件流技术开发的网关,它旨在为微服务架构提供一种简单有效的统一的 API 路由管理方式。

2023-04-24 20:19:44 855

原创 SpringCloud --- Feign远程调用

Feign替代RestTemplate实现远程调用

2023-04-24 19:54:24 1138

原创 SpringCloud --- Nacos注册中心、配置管理

nacos是阿里巴巴的产品,现在是中的一个组件。相比功能更加丰富,在国内受欢迎程度较高。

2023-04-24 10:41:22 1312

原创 SpringCloud --- Ribbon负载均衡

SpringCloudRibbon的底层采用了一个拦截器,拦截了RestTemplate发出的请求,对地址做了修改。用一幅图来总结一下:基本流程如下:拦截我们的RestTemplate请求RibbonLoadBalancerClient会从请求url中获取服务名称,也就是user-serviceDynamicServerListLoadBalancer根据user-service到eureka拉取服务列表eureka返回列表,localhost:8081、localhost:8082。

2023-04-23 22:35:29 656

原创 SpringCloud --- Eureka注册中心

假如我们的服务提供者user-service部署了多个实例,如图思考几个问题:order-service在发起远程调用的时候,该如何得知user-service实例的ip地址和端口?有多个user-service实例地址,order-service调用时该如何选择?order-service如何得知某个user-service实例是否依然健康,是不是已经宕机?

2023-04-23 21:16:56 708

原创 SpringCloud --- 认识微服务、服务拆分和远程调用

随着互联网行业的发展,对服务的要求也越来越高,服务架构也从单体架构逐渐演变为现在流行的微服务架构

2023-04-23 21:01:46 1355 2

原创 设计模式 --- 行为型模式

行为型模式用于描述程序在运行时复杂的流程控制,即描述多个类或对象之间怎样相互协作共同完成单个对象都无法单独完成的任务,它涉及算法与对象间职责的分配。

2023-04-23 14:00:59 663

原创 设计模式 --- 结构型模式

结构型模式描述如何将类或对象按某种布局组成更大的结构。它分为类结构型模式和对象结构型模式,前者采用继承机制来组织接口和类,后者釆用组合或聚合来组合对象。

2023-04-23 13:25:27 457

原创 设计模式 --- 创建者模式

创建型模式的主要关注点是“怎样创建对象?”,它的主要特点是“将对象的创建与使用分离”。这样可以降低系统的耦合度,使用者不需要关注对象的创建细节。

2023-04-22 20:07:54 176

原创 设计模式 --- 概述

软件设计模式(Software Design Pattern),又称设计模式,是一套被反复使用、多数人知晓 的、经过分类编目的、代码设计经验的总结。它描述了在软件设计过程中的一些不断重复发生的问题, 以及该问题的解决方案。也就是说,它是解决特定问题的一系列套路,是前辈们的代码设计经验的总 结,具有一定的普遍性,可以反复使用。

2023-04-22 14:45:12 510

原创 前后端分离开发、Yapi、Swagger、项目部署

前后端分离开发,就是在项目开发过程中,对于前端代码的开发由专门的前端开发人员负责,后端代码则由后端开发人员负责,这样可以做到分工明确、各司其职,提高开发效率,前后端代码并行开发,可以加快项目开发进度。

2023-04-20 22:49:28 982

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除