Live2D

10 2022 档案

摘要:缓存穿透问题的解决思路 缓存穿透 :缓存穿透是指客户端请求的数据在缓存中和数据库中都不存在,这样缓存永远不会生效,这些请求都会打到数据库。 常见的解决方案有两种: 缓存空对象 优点:实现简单,维护方便 缺点: 额外的内存消耗 可能造成短期的不一致 布隆过滤 优点:内存占用较少,没有多余key 缺点: 阅读全文
posted @ 2022-10-22 13:36 都是朕的江山 阅读(76) 评论(0) 推荐(0) 编辑
摘要:进程 概念 进程是操作系统资源分配的最小单元。一个进程拥有的资源有⾃⼰的堆、栈、虚存空间(页表)、文件描述符等信息。 从编程的角度来理解进程,可以把它看作是⼀个类或一个 PCB(Process Control Block,进程控制块的结构体)。 进程是操作系统对一个正在运行的程序的一种抽象,可以把进 阅读全文
posted @ 2022-10-18 19:39 都是朕的江山 阅读(90) 评论(0) 推荐(0) 编辑
摘要:概念 Java里的拦截器是动态拦截Action调用的对象,它提供了一种机制可以使开发者在一个Action执行的前后执行一段代码,也可以在一个Action执行前阻止其执行,同时也提供了一种可以提取Action中可重用部分代码的方式。 拦截器使用步骤 创建一个实现了HandlerInterceptor的 阅读全文
posted @ 2022-10-18 00:05 都是朕的江山 阅读(230) 评论(0) 推荐(0) 编辑
摘要:Session 共享实现 为什么要实现session共享呢 随着互联网公司的项目在微服务和分布式的环境下进行的搭建,导致一个项目可能分别部署在几个甚至很多的服务器集群下,此时就会出现一个问题: 当用户进行一个session会话的时候,比如一个用户去登录项目,一般的大公司的项目都是有Nginx进行反向 阅读全文
posted @ 2022-10-16 13:55 都是朕的江山 阅读(159) 评论(0) 推荐(0) 编辑
摘要:引入Swagger 步骤 引入依赖(Swagger 或 Knife4j:官方文档https://doc.xiaominfo.com/knife4j/documentation/get_start.html) <!--引入Knife4j的官方start包,Swagger2基于Springfox2.10 阅读全文
posted @ 2022-10-08 15:37 都是朕的江山 阅读(285) 评论(0) 推荐(0) 编辑
摘要:通用返回类 一般后端需要将数据封装成通用返回类再传递给前端 /** * 通用返回类 * @param <T> */ @Data public class BaseResponse<T> implements Serializable { //状态码 private int code; //数据 pr 阅读全文
posted @ 2022-10-03 11:21 都是朕的江山 阅读(210) 评论(0) 推荐(0) 编辑
摘要:封装全局异常处理 1.定义业务异常类 作用: 1.相对于java的异常类,支持更多字段 2.自定义构造函数,更灵活/快捷的设置字段 /** * 自定义异常类 * @author LL */ public class BusinessException extends RuntimeException 阅读全文
posted @ 2022-10-03 11:13 都是朕的江山 阅读(561) 评论(0) 推荐(1) 编辑
摘要:字节序基础概念 字节序,顾名思义,指字节在内存中存储的顺序。比如一个int32_t类型的数值占用4个字节,这4个字节在内存中的排列顺序就是字节序。字节序有两种: (1)小端字节序(Little endinan),数值低位存储在内存的低地址,高位存储在内存的高地址; (2)大端字节序(Big endi 阅读全文
posted @ 2022-10-01 13:17 都是朕的江山 阅读(89) 评论(0) 推荐(0) 编辑
摘要:TCP与UDP的联系与区别 TCP TCP(Transmission Control Protocol,传输控制协议)是面向连接的协议,也就是说,在收发数据前,必须和对方建立可靠的连接。TCP仅支持单播传输,面向字节流,提供全双工通信,是可靠传输。 建立连接 三次握手示意图 一个TC建立连接连接必须 阅读全文
posted @ 2022-10-01 12:22 都是朕的江山 阅读(69) 评论(0) 推荐(1) 编辑

返回顶端
点击右上角即可分享
微信分享提示