- 博客(11)
- 资源 (1)
- 收藏
- 关注
原创 缓存穿透、缓存击穿、缓存雪崩的区别及解决方案
一、缓存处理流程 前台请求,后台先从缓存中取数据,取到直接返回结果,取不到时从数据库取,数据库取到的话更新缓存,并返回结果,数据库也没取到,那直接返回空结果。 示意图入下: 二、缓存击穿 描述:缓存击穿是指缓存缓存中没有数据,但是数据库中有数据(一般是缓存时间到期),这是由于并发用户特别多,同时读取缓存没读到数据,有同事读取数据库,引起数据库的压力剧增,造成压力过大 解决方案: 1、设置热点数据,永远不过期。 2、加互斥锁,互斥锁参考代码如下 说明: 1)缓存中有数据,直接走上述1
2022-03-31 19:31:14
1740
原创 Java基础高频面试题
目录 1、JDK,JRE,JVM的区别与联系 JDK JRE JVM 三者的联系 三者的区别 二、类加载的过程 三、JVM的结构 四、Java基础 1,post与get请求的区别 2,三次握手 3,sql优化 静待及时更新!!! 1、JDK,JRE,JVM的区别与联系 JDK JDK(Java Development Kit) 是整个JAVA的核心,包括了Java运行环境(Java Runtime Envirnment),一堆Java工具(javac/java/jdb等.
2022-03-19 15:33:24
684
原创 (高频面试题)Spring-MVC执行流程详解
Spring-MVC概述 Spring MVC属于SpringFrameWork的后续产品,已经融合在Spring Web Flow里面。Spring 框架提供了构建 Web 应用程序的全功能 MVC 模块。使用 Spring 可插入的 MVC 架构,从而在使用Spring进行WEB开发时,可以选择使用Spring的Spring MVC框架或集成其他MVC开发框架。 Spring-MVC流程示意 该图只是用于理清思路,不是特别严谨,请见谅。 ...
2022-03-19 10:44:43
373
原创 Mybatis
一、回调地狱 1、概念 在业务中,数据层层嵌套,每层数据的结果会当作下个数据的参数,当嵌套多了,代码复杂度高,就被称为回调地狱。 2、回调地狱的优化 规则: async控制同步异步,标识函数 await标识Aiax请求,两者必须同时出现 3、箭头函数 /* 3.箭头函数写法 1.去除function关键字 2.参数与函数体之间使用 => 连接 3.如果只有一个参数,则参数括号可以省略 4.箭头函数使用一般用于回调函数 5.如果使用functio
2022-03-11 21:15:37
948
原创 SpringMVC
一、SpringMVC概述 1、SpringMVC是Spring框架后续开发的web模块,主要负责与前端进行交互。 2、SpringMVC基于servelet进行开发的框架,目的是简化前后端的调用。 3、开发时注意包路径,在主启动类的同包及子包中编辑。 4、现在开发一般都是前后端分离得方式,所有服务器返回得一般都是json串。 5、每次编辑完代码,都需要重启TomCat服务器。 二、入门案例 package com.jt.controller; import org.springframe
2022-03-10 20:42:55
1024
原创 Sentinel-限流,熔断,降级,热点等实践
一、流控规则 1,阈值类型 QSP:当调用url对应的资源时,QSP达到单机阈值时,就会限流。 线程数:当调用url对应的资源时,线程数达到单机阈值时,就会限流。 2.限流模式 直接(默认):直接限流 关联:当关联的资源达到阈值时,就限流自己。既当一个资源访问量达到阈值时,对其他资源进行限流。霸权主义。 链路:当有多个服务对资源进行访问时,可以指定限流的链路。 3,流控效果 快速失败,warm up,排队等待 4,当出现限流时,会出现500异常,我们可以基于@Sentinelresour
2022-03-02 20:58:46
1074
2
原创 Sentinel限流应用实践
目录 一、Sentinel定义 1,概述 2,Sentinel核心分为两个部分 二、Sentinel安装 1,下载网址 2,解压,目录不要有中文。 3,在本级目录下打开cmd,输入指令,启动Sentinel。指令:java -Dserver.port=8180 -Dcsp.sentinel.dashboard.server=localhost:8180 -Dproject.name=sentinel-dashboard -jar sentinel-dashboard-1.8.1.jar
2022-03-01 19:48:05
474
原创 Spring-MVC-AOP
一,MVC设计思想, 如果将大量的代码写到一个方法中,后期维护不易,开发效率低 MVC说明: 1,M,model数据层,数据处理,数据的持久化 2,V,view 视图层,前端页面相关的内容 3,C,controller。控制层,控制数据的流转过程 二,层级代码结构 前提:在项目中代码需要松耦合,根据MVC指导想,后端代码进行了演化,演变为现在的层级代码结构。 1,Controller层,@RestController,控制层,主要实现与前端页面的交互!!! 2,Service层,@Se
2022-02-28 20:26:50
358
原创 Spring-IOC
一、Spring-IOC 1.0生命周期说明 1.1对象创建 1.2对象初始化 1.3调用方法 1.4对象销毁。 @PostConstruct 标识初始化方法 @PreDestroy 标识销毁方法. 核心:生命周期的方法都是自动调用 2.0Spring管理对象 2.1@component与@bean注解的区别 2.1. 1,前者自动为该注解标识的类通过反射的机制实例化对象,交给容器来管理。后者通过手动创建对象。 2,前者是标示类的,后者是标识方法的。 3,前者对象的ID是类名首字母
2022-02-28 19:29:23
181
原创 Nacos配置中心管理内容
一、配置中心入门 1,添加依赖:nacos-config <dependency> <groupId>com.alibaba.cloud</groupId> <artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId> </dependency> 2设置配置文件并改名bootstrap.yml,改名是因为优先级问题,
2022-02-28 16:22:45
371
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅