自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(15)
  • 收藏
  • 关注

原创 11.6八股

对比如果先写 Bin Log 再写 Redo Log:若 Bin Log 写成功后宕机,Redo Log 未记录,重启后无法恢复数据,导致 Bin Log 有记录但数据未修改,主从复制时从库会执行该 Bin Log,造成主从数据不一致。最终状态:Redo Log(commit)、Bin Log 均完整,数据页(用户 1=400,用户 2=400)持久化到磁盘,事务一致性保障完成。此时:Redo Log(prepare)和 Bin Log 均已持久化,数据页仍在内存(未刷盘,不影响一致性)。

2025-11-10 11:43:15 708

原创 本地缓存怎么在分布式环境下保持一致性

通过消息队列(如 Kafka、RabbitMQ)广播 “数据更新事件”,所有节点监听事件,收到后删除 / 更新本地缓存。:基于 Redis 的发布 / 订阅功能,更新节点发布 “缓存更新消息”,其他节点订阅消息并更新缓存。:为每个缓存 key 关联一个 “版本号”,查询时先对比版本号,不一致则更新缓存。节点 B 查询时,先查缓存的版本号(3),再查数据库的版本号(4);:每个节点的缓存仅存储本地访问的数据,无法感知其他节点的更新;:多节点同时更新同一数据,可能导致 “部分节点缓存未更新”;

2025-10-13 17:23:28 776

原创 Linux 查看 CPU 相关参数的命令

想知道某个进程的内核态 CPU 占比,用 pidstat -u -p 进程 ID,能明确看到 % sys 列;,显示进程内每个线程的 PID(LWP 列)、CPU 占用率(% CPU)、优先级(NI),适合定位线程级 CPU 高耗问题。,能区分用户态(% usr)和内核态(% sys)占比,比如看某个 Java 进程在内核态消耗的 CPU;如果要定位进程内哪个线程耗 CPU,用 ps -L -p 进程 ID,能看到每个线程的 CPU 占用。查 CPU 硬件信息,比如核心数、主频,用 lscpu 最直观;

2025-10-05 00:50:15 202

原创 零拷贝(这里的sendfile也可应用于kafka、Netty、Nginx;mmap应用于RocketMQ)

零拷贝指在进行数据 IO 时,数据在用户态下经历了零次 CPU 拷贝,并非不拷贝数据。通过减少数据传输过程中 内核缓冲区和用户进程缓冲区间不必要的CPU数据拷贝 与 用户态和内核态的上下文切换次数,降低 CPU 在这两方面的开销,释放 CPU 执行其他任务,更有效的利用系统资源,提高传输效率,同时还减少了内存的占用,也提升应用程序的性能。由于零拷贝在内核空间中完成所有的内存拷贝,可以最大化使用 socket 缓冲区的可用空间,从而提高了一次系统调用中处理的数据量,进一步降低了上下文切换次数。

2025-10-01 10:21:58 665

原创 sql中exists和in的区别

小用 IN,大用 EXISTS:子查询数据量小用IN,子查询数据量大用EXISTS;空值用 EXISTS:子查询可能含NULL,或需要 “排除集合”(NOT场景),优先用EXISTS;索引不能少:无论用哪个,关联字段(如o.user_idu.user_id)必须加索引,否则性能差。

2025-09-28 17:26:35 394

原创 三种 I/O 编程模型BIO、NIO、AIO及I/O 多路复用实现方式select、poll、epoll

select/poll/epoll 不是 I/O 模型,它们是实现 “非阻塞 I/O” 的手段,NIO 模型是编程语义,epoll 是系统内核行为。如果你面试中被问“五种 I/O 模型”,推荐这样回答:严格来说,I/O 编程模型应分为 BIO、NIO 和 AIO 三种;select、poll、epoll 是 Linux 下多路复用的三种实现方式,本质是支撑 NIO 的机制;实际开发中,我们常说五种是因为把模型和机制合在一起讲。

2025-09-27 17:01:07 938

原创 每日十题(1)

Spring Boot 启动的核心可以归纳为: 👉通过 @SpringBootApplication 入口触发 → 构建运行环境 → 创建并刷新 ApplicationContext → 自动配置按需装配 → 启动内置 Web 容器 → 应用就绪对外服务。入口触发:通过 @SpringBootApplication 主类的 main 方法调用 SpringApplication.run()。环境准备:加载配置、激活 Profile,确定应用运行环境。上下文创建。

2025-09-26 17:37:13 671

原创 订单到期关闭如何实现

笔记基于hollis,如有侵权,可联系删除在电商、支付等系统中,一般都是先创建订单(支付单),再给用户一定的时间进行支付,如果没有按时支付的话,就需要把之前的订单(支付单)取消掉。这种类似的场景有很多,还有比如到期自动收货、超时自动退款、下单后自动发送短信等等都是类似的业务问题。订单的到期关闭的实现有很多种方式,分别有:1、被动关闭(不推荐)2、定时任务(,适合时间精确度要求不高的场景)3、DelayQueue(不推荐,基于内存,无法持久化)4、时间轮(不推荐,基于内存,无法持久化)

2025-09-26 17:12:53 698

原创 2024广工大物实验报告十八(电子和场)

2024-10-23 16:45:58 10500

原创 2024广工大物实验报告九(旋光性溶液浓度的测量)

2024-10-23 16:18:48 14303

原创 2024广工大物实验报告十三(超声波在空气中传播速度的测定)

2024-10-23 16:14:16 7008 2

原创 2024广工大物实验报告十七(铁磁材料的磁滞回线和基本磁化曲线)

2024-10-23 16:09:15 11070

原创 2024广工大物实验报告五(用模拟法测绘静电场)

2024-10-23 15:59:58 10636

原创 2024广工大物实验报告十(用分光计测定光栅常数)

2024-10-23 15:51:36 8922

原创 2024广工大物实验报告十一(用冷却法测量金属的比热容)

2024-10-23 15:47:02 7456

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除