摘要: ThreadLocal : ThreadLocal 并不解决线程间共享数据的问题 ThreadLocal 通过隐式的在不同线程内创建独立实例副本避免了实例线程安全的问题 a56爆大奖在线娱乐线程持有一个 Map(ThreadLocalMap)并维护了 ThreadLocal 对象与具体实例的映射,该Map 由于只被 阅读全文
posted @ 2024-04-30 13:29 Skyvswfq 阅读(6) 评论(0) 推荐(0) 编辑
摘要: 一、redis为什么快 1.基于内存:内存读写效率远高于磁盘读写 2.存储形式:键值对的内存数据库,哈希表结构 O(1)时间复杂度可以获取值 3.单线程:避免上下文切换 4.IO多路复用 :单个线程处理多个客户端链接 5.编码:支持多种数据结构及编码,根据元素数量,有阀值,大于小于阀值的编码不同 6 阅读全文
posted @ 2024-04-26 11:07 Skyvswfq 阅读(6) 评论(0) 推荐(0) 编辑
摘要: 消息队列的基本作用 解耦 异步 削峰 引入消息队列会导致什么 1.降低系统的可用性:系统引入的外部依赖越多,越容易挂掉 2.系统的复杂度变高:使用 MQ 后可能需要保证消息没有被重复消费、处理消息丢失的情况、保证消息传递的顺序性等等问题 3.一致性问题:A 系统处理完了直接返回成功了,但问题是:要是 阅读全文
posted @ 2024-04-24 23:34 Skyvswfq 阅读(4) 评论(0) 推荐(0) 编辑
摘要: 分布式事务的5种实现方式 XA方案 TCc方案 本地方法表 可靠性消息最终一致性方案 最大努力通知方案 1.两阶段提交/XA方案 所谓的 XA 方案,即:两阶段提交,有一个事务管理器的概念,负责协调多个数据库(资源管理器)的事务,事务管理器先问问各个数据库你准备好了吗?如果a56爆大奖在线娱乐数据库都回复 ok,那 阅读全文
posted @ 2024-04-24 22:34 Skyvswfq 阅读(113) 评论(0) 推荐(0) 编辑
摘要: 为什么使用分布式锁 为了保证一个方法或属性在高并发情况下的同一时间只能被同一个线程执行 分布式锁应该具备哪些条件? 1.在分布式系统环境下,一个方法在同一时间只能被一个机器的一个线程执行 2.高可用的获取锁和释放锁 3.高性能的获取锁和释放锁 4.具备可重入特性 5.具备锁实效机制,防止死锁 6.具 阅读全文
posted @ 2024-04-24 22:16 Skyvswfq 阅读(30) 评论(0) 推荐(0) 编辑