- 博客(11)
- 收藏
- 关注
原创 Kafka
使用Kafka在消息的收发过程都会出现消息丢失,Kafka分别给出了解决方案生产者发送消息到Broker丢失消息在Broker中存储丢失消费者从Broker接收消息丢失。
2026-01-25 15:00:05
645
原创 点评项目p68分布式锁-redission锁的MutiLock原理(在windows创建多个redis)
Redisson的MultiLock解决了Redis主从架构下分布式锁的可靠性问题。传统主从模式下,主机宕机可能导致锁丢失。MultiLock通过在多个独立Redis节点上同时加锁,只有所有节点都加锁成功才算获取成功,即使部分节点故障也能保证锁的可靠性。测试中通过配置多个Redis实例,使用RedissonClient创建联锁,验证了MultiLock的实现机制。该方法避免了单点故障问题,提高了分布式锁的可用性,但会带来一定的性能开销。MultiLock适用于对锁可靠性要求高的场景,是Redis分布式锁的一
2026-01-12 16:01:21
62
原创 Redis基础篇
Redis是一种基于内存的键值型NoSQL数据库,具有高性能、支持多种数据结构等特性。文章首先对比了关系型数据库(SQL)与非关系型数据库(NoSQL)的区别,包括数据结构、关联性、查询方式和事务特性等方面。接着介绍了Redis的特点:支持多种数据结构、单线程原子性操作、低延迟、持久化和集群支持等。在命令操作部分,详细讲解了通用命令(如KEYS、DEL、EXPIRE等)和String类型的操作命令(如SET、GET、INCR等),展示了基本的数据操作方式。Redis适用于数据结构不固定、对性能要求高的场景,
2025-12-26 20:18:06
882
原创 NuScenes数据集下载
为解决NuScenes数据集下载不便的问题,作者已将数据集上传至迅雷网盘分享。该分享旨在方便自动驾驶模型复现的研究人员获取数据集资源。
2025-12-24 16:06:17
1015
1
原创 Java面试专题-MySQL篇事务等
事务是数据库操作的基本单元,具有ACID特性(原子性、一致性、隔离性、持久性)。InnoDB引擎通过redo log保证持久性,undo log实现原子性,MVCC和锁机制确保隔离性。并发事务可能导致脏读、不可重复读和幻读问题,MySQL默认隔离级别"可重复读"能解决部分幻读问题。MVCC通过隐藏字段(DB_TRX_ID、DB_ROLL_PTR)、undo log和ReadView实现多版本控制,其中undo log记录逻辑变更用于回滚,redo log记录物理变更确保数据持久化。两种日
2025-12-23 20:37:58
766
原创 Java面试专题-MySQL篇优化06-09
摘要 覆盖索引与超大分页优化 覆盖索引指查询通过索引即可获取全部所需数据,避免回表操作。例如select id,name from tb_user where name='Arm'利用了name索引即为覆盖索引。对于超大分页问题,传统limit 9000000,10需要排序大量数据,优化方案是使用覆盖索引+子查询:先通过索引快速获取目标ID,再查询完整数据。 索引创建原则 核心原则包括:1)数据量大且查询频繁的表建索引;2)为常用查询条件、排序、分组的字段建索引;3)选择区分度高的列;4)长字符串使用前缀索
2025-12-23 11:41:14
1571
原创 Java面试专题-MySQL篇优化01-05
MySQL优化与索引知识摘要 MySQL优化主要涉及慢查询定位、SQL执行计划分析和索引优化。慢查询可通过开源工具或MySQL慢日志定位,执行计划使用EXPLAIN分析。索引底层采用B+树结构,相比B树更高效。索引分为聚簇索引(保存行数据)和二级索引(保存主键),回表查询指通过二级索引找到主键再到聚簇索引获取完整数据的过程。优化还包括事务处理、主从同步和分库分表等方案。
2025-12-22 10:50:11
817
原创 Java面试专题-redis篇集群和IO多路复用等11-14
Redis集群方案主要包括主从复制、哨兵模式和分片集群三种。主从复制实现读写分离,通过全量同步和增量同步保证数据一致性;哨兵模式提供自动故障恢复功能,解决高可用问题;分片集群则通过哈希槽实现海量数据存储和高并发写操作。Redis的高性能得益于纯内存操作、单线程避免上下文切换以及I/O多路复用模型。针对集群脑裂问题,可通过配置最小从节点数量和同步延迟参数来避免数据丢失。分片集群中数据读写基于哈希槽计算,确保请求被正确路由。
2025-12-20 21:29:45
776
原创 Java面试专题-redis篇分布式锁09-10
本文介绍了Redis分布式锁的实现原理及应用场景。主要内容包括:1)分布式锁的使用场景,如集群环境下的定时任务、抢单等;2)基于setnx命令的简单实现方式及其缺陷;3)Redisson的完整解决方案,包括自动续期、可重入等特性;4)针对主从一致性问题提出了红锁方案,并分析了其优缺点。文章指出,Redis分布式锁适用于AP场景,若需强一致性建议使用Zookeeper实现。最后总结了面试常见问题的标准回答模板。
2025-12-20 00:05:04
633
原创 Java面试专题-redis篇06-08
Redis提供了两种持久化方式:RDB和AOF。RDB通过定期快照保存数据,恢复速度快但可能丢失部分数据;AOF记录所有写命令,数据完整性高但文件较大。Redis采用惰性删除+定期删除策略处理过期数据,并通过多种淘汰策略(如LRU、LFU等)在内存不足时删除部分数据,确保系统稳定运行。这两种持久化方式各有优劣,实际应用中常结合使用以提高数据安全性。
2025-12-18 22:01:02
733
原创 Java面试专题-redis篇01-05
Java面试Redis专题总结 Redis在项目中主要应用于缓存、分布式锁、计数器、消息队列等场景。针对缓存问题需掌握: 缓存穿透:查询不存在数据导致频繁访问数据库,可通过缓存空数据或布隆过滤器解决 缓存击穿:热点key过期导致大量请求直达数据库,采用互斥锁或逻辑过期方案 缓存雪崩:大量key同时失效或Redis宕机,可通过随机TTL、集群部署、多级缓存应对 双写一致性:数据库与缓存同步问题,根据业务要求选择强一致(延迟双删+分布式锁)或最终一致(异步通知)
2025-12-16 19:53:23
1061
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅