自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 解决电商系统中MySQL死锁

在REPEATABLE READ隔离级别下,事务A的INSERT操作会隐式加间隙锁,事务B的UPDATE可能被阻塞。同时强调预防死锁的最佳实践,如保持事务简短、按顺序访问资源、合理设计索引等。解决问题的系统方法:复现问题、分析日志、定位原因、实施解决方案、验证效果。形成循环等待:A等B释放inventory,B等A释放orders。事务A先锁orders,再锁inventory。事务B先锁inventory,再锁orders。事务A和B以相反顺序竞争锁,形成循环依赖。,这样可能会形成循环等待,导致死锁。

2025-02-27 17:13:03 579

原创 MySQL的锁与隔离级别及其应用

共享锁和排他锁:控制并发读写的核心锁类型。行锁、间隙锁、Next-Key 锁:控制锁的粒度,影响并发性能和数据一致性。隔离级别:决定锁的使用方式和并发控制强度。READ UNCOMMITTED:几乎不加锁,性能高但一致性差。READ COMMITTED:使用行锁,避免脏读。REPEATABLE READ:使用行锁和间隙锁,避免不可重复读。SERIALIZABLE:使用表锁,完全隔离。通过合理选择隔离级别和锁机制,可以在保证数据一致性的同时,最大化并发性能。

2025-02-27 16:36:55 794

原创 共享内存&管道通信

空间换时间:通过共享物理内存页实现零拷贝分离数据通道与控制通道:数据通道是共享内存,控制通道需要独立同步机制直接内存访问:需要处理字节序、内存对齐等底层细节。

2025-02-26 12:46:14 1141

原创 ebpf的环形缓冲区&Perf事件缓冲区

1. 内核eBPF代码中定义两个map:perf_event_array和ringbuf_map。2. 在eBPF程序中,使用bpf_perf_event_output发送数据到perf_event_array。3. 同时使用bpf_ringbuf_output发送数据到ringbuf_map。4. 应用层代码中,设置perf事件缓冲区来接收perf_event_array的事件。5. 同时,使用ring_buffer API来读取ringbuf_map的数据。

2025-02-25 22:43:42 681

原创 Dpdk实现DNS(dpdk在项目中的应用)

dpdk实现高性能,低延迟,高并发dns

2025-02-25 22:07:14 1011

原创 C++手写线程池(执行不需要顺序的多任务)

将item用头插法加入任务队列list//考虑线程安全:原子操作 \if (list!= null) //排除刚开始一个节点都没有的情况 \//删除节点。

2024-10-15 21:06:46 305

原创 C++11线程池(c++常用特性)

通过C++11线程池掌握C++常用新特性1.腾讯面试:线程池引入无锁队列能否提升性能2.通过线程池组件掌握C++新特性3.C函数、C++类函数无缝扔给线程池处理4.如何实现多参数任务的支持5.如何等待任务执行返回结果。

2024-10-11 22:01:15 1134

原创 C++11高效灵活定时器

平衡二叉搜索树。

2024-10-09 22:32:57 1109

原创 MySQL高级查询(C++全栈系列)

表模型。

2024-10-07 16:14:41 226

原创 redis(c++全栈)

模式:请求回应模式。

2024-10-07 15:05:11 1134

原创 socket封装fd(Muduo网络中的socket源码)

loop有wakeup_fd(系统内置)

2024-10-06 21:33:29 219

原创 c++全栈学习(B站学习笔记,持续更新ing)

通过项目进行串联提高技术服务派生类代码处理事情方式,构建链表结构TCP,UDP(8个字节头,没有协议格式),httpps:epoll是文件系统,管理fd的一个组件1.网络与进程线程进程虚拟分布图(每一个进程都有)

2024-10-03 21:16:13 1316

原创 枚举类型介绍及使用

原因:避免了与整数或其他枚举值的隐式转换,同时改善了作用域。1.枚举值默认从0开始,也可以手动指定值。2.在底层为整数->可以与整数进行比较。

2024-09-29 09:35:32 327 1

空空如也

空空如也

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

TA关注的人

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