- 博客(8)
- 收藏
- 关注
原创 Spring AOP底层原理
是一个自定义的切面类,通常用于实现速率限制(Rate Limiting),以控制方法的调用频率。它利用 Spring AOP 提供的功能来拦截方法调用并应用速率限制策略。RestController:比controller多一个@RequestBody 将对象转换为json格式。
2024-09-27 11:32:10
176
原创 Redis【生产问题】【持久化机制】【取消token认证】
缓存击穿中,请求的 key 对应的是热点数据,该数据存在于数据库中,但不存在于缓存中(通常是因为缓存中的那份数据已经过期)。这就可能会导致瞬时大量的请求直接打到了数据库上,对数据库造成了巨大的压力,可能直接就被这么多请求弄宕机了。缓存在同一时间大面积的失效,导致大量的请求都直接落到了数据库上,对数据库造成了巨大的压力。另外,缓存服务宕机也会导致缓存雪崩现象,导致所有的请求都落到了数据库上。
2024-09-26 10:22:57
709
原创 微服务【导入】
Redis、Mysql--集群(主从结构---一写多读)多个节点node,相同的服务部署多份,避免单点故障。物理机···一台物理机运行多个端口速度慢。假设:negix转发后的请求web程序运行在8080端口。java进程[ JVM ]【集群架构ps微服务】哨兵模式ps集群模式。运行在不同的端口【程序的入口位置】
2024-09-24 10:44:36
204
原创 MYSQL索引【index】
类型、创建方法,还是性能优化?表结构---设计表---SQL预览表结构---设计表---SQL预览---索引索引是数据库中提高查询性能的重要工具。创建索引可以通过旋转:发生在增加、删除数据--绝对的平衡,每增加一个旋转一次--不追求严格的平衡,而是大致的平衡。红黑树的平衡性相对较弱,可能会导致树的高度较高,这可能会导致一些数据需要进行多次磁盘 IO 操作才能查询到,这也是 MySQL 没有选择红黑树的主要原因。
2024-09-19 17:23:12
1362
原创 事务+权限【面试】
著作权归JavaGuide(javaguide.cn)所有 基于MIT协议 原文链接:https://javaguide.cn/system-design/framework/spring/spring-transaction.html。mybatis:封装成一个事务,ORM拼接SQL语句(n个操作包装执行发送至数据库)spring:一组操作,要么都执行;关系型数据库,spring中都有事务。
2024-09-14 10:44:05
465
原创 线程池【面试】
存储待执行的任务。线程池从中获取任务进行执行。常见的队列类型有和。: 负责管理线程的生命周期,包括线程的创建、销毁等。管理策略可以通过配置来控制线程池的行为。: 创建新线程的工厂类。通常用于自定义线程的创建方式和线程属性。: 当任务队列已满且线程池也无法处理更多任务时,线程池的拒绝策略决定如何处理新提交的任务。常见的拒绝策略包括和。rejectedExecutionHandler:拒绝执行异常Executor框架不仅包括了线程池的管理,还提供了线程工厂、队列以及拒绝策略等,Executor。
2024-09-12 11:12:33
775
原创 并发补充【面试】
**快速查找**:由于使用哈希表,`HashMap` 提供了常数时间复杂度的 `get` 和 `put` 操作(O(1)),尽管在最坏情况下(例如哈希冲突严重时)复杂度可能退化为 O(n)。- **允许 null 值**:`HashMap` 允许一个 `null` 键和多个 `null` 值。- **内存占用**:由于使用了哈希表和链表,`HashMap` 的内存占用可能较大,尤其是当桶的数量较多时。**面试官**:请你谈谈你对 `HashMap` 的了解,包括它的基本结构、工作原理以及优缺点。
2024-09-11 15:09:35
715
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人