自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 为什么 InnoDB 的可重复读隔离级别几乎“消灭了”幻读?——MVCC 与 Next-Key Lock 的分工协作

InnoDB的RR隔离级别通过MVCC和Next-Key Lock的协同机制几乎消除了幻读问题。对于快照读(普通SELECT),MVCC通过创建事务级Read View冻结数据视图,使事务始终读取同一历史快照,既解决了不可重复读,也避免了新行出现的幻读。而对于当前读(如SELECT FOR UPDATE),InnoDB强制读取最新数据并加锁:行锁防止数据修改,Next-Key Lock(行锁+间隙锁)则锁住可能插入新记录的间隙位置,从物理层面阻断幻读。这种设计实现了读写分离:MVCC保障读的高并发,锁机制确

2025-12-18 15:44:33 605

原创 服务线程被占满?Tomcat 线程不够用?接口一慢全站雪崩?Tomcat 线程池、exec 线程与服务线程:一次彻底讲清

本文深入剖析了Tomcat线程模型及其在Web应用中的关键作用。核心观点指出:HTTP请求处理线程(服务线程)是稀缺资源,不能被长时间阻塞。文章澄清了NIO解决的是网络IO阻塞而非业务阻塞的误区,强调同步调用模型在高并发场景的天然缺陷。通过AI绘画案例,阐述了异步架构的本质是线程职责拆分,让"快的事情快做完,慢的事情慢慢做"。最后指出单纯调大线程池不是解决方案,提出高并发系统的核心在于"尽快把线程还回去"。

2025-12-17 18:19:06 761

原创 一文搞懂令牌桶限流:平均速率与突发流量的本质(分布式令牌桶实现思路)

本文深入解析令牌桶限流算法的核心原理与工程实践。令牌桶通过固定速率生成令牌来限制系统长期平均处理能力(如100 QPS),同时利用桶容量允许短时间内消耗积累的令牌处理突发流量(如瞬时100请求)。文章通过时间线推演展示了"平均速率限制"与"突发流量允许"的辩证关系,并对比了漏桶算法的差异。针对分布式场景,提出了基于Redis+Lua的实施方案,详细说明如何原子化维护令牌状态,确保多节点限流一致性。最后指出Redis令牌桶属于"软限流",适合网关拦截

2025-12-17 18:00:13 1118

原创 HTTP 无状态与 Cookie 状态保持机制详解

HTTP协议本质上是无状态的,每个请求相互独立。Cookie机制通过在客户端存储状态信息并自动回传服务器,实现了无状态协议下的状态保持。Cookie不仅存储会话ID,还包含用户偏好、业务状态、安全令牌等多元信息。浏览器自动管理Cookie的存储和传递,无需前端干预,服务端通过Set-Cookie设置。这种设计既保持了HTTP的无状态优势,又提供了状态感知能力,是Web应用实现连续用户体验的关键基础设施。敏感信息应使用HttpOnly Cookie,且永远不要完全信任客户端数据。

2025-12-16 19:18:26 666

原创 服务器的流量、带宽是什么?计费详解

服务器流量和带宽是网站运营的关键计费项。带宽指数据传输速度上限(如5Mbps),决定网站并发访问能力;流量指实际传输数据总量(如100GB),影响费用成本。云服务器通常提供两种计费模式:固定带宽(流量不限但带宽固定)和按量付费(实际流量计费)。用户访问网站时,服务器向外发送的HTML、JS、图片等资源都会消耗出站流量。建议图片多的网站采用对象存储+CDN组合,既能降低流量费用又能提升访问速度。选择计费方案时,访问量稳定的网站适合固定带宽模式,流量波动大的可考虑按量付费。

2025-12-14 12:28:09 848

原创 联合索引有什么作用,给三个字段添加一个索引和分别给这三个字段对应添加索引,有什么区别?

联合索引(复合索引)通过将多个列组合在一个索引中,可优化多列查询、避免回表、提升排序效率,并支持最左前缀匹配。相比单独索引,联合索引存储空间小、写入性能好,在多列查询时效率更高;但单独索引在非最左前缀查询时更具优势。实际应用中应根据查询模式选择:高频多列查询用联合索引,多变单列查询用单独索引,也可混合使用。设计时需考虑列的选择性、查询场景和读写比例,并通过EXPLAIN验证索引使用情况。

2025-12-14 01:08:43 348

原创 缓存穿透、缓存击穿、缓存雪崩场景以及解决方案

缓存问题主要包括穿透、击穿和雪崩三种场景。缓存穿透指查询不存在数据导致频繁访问数据库,可通过缓存空值或布隆过滤器解决;缓存击穿是热点key失效引发瞬时高并发查询,可用互斥锁或异步刷新应对;缓存雪崩由大量key同时失效导致,需打散过期时间并建立熔断机制。针对不同问题需采取相应策略,如分布式锁、多级缓存、随机化TTL等,同时结合监控和预警机制保障系统稳定性。(150字)

2025-12-12 16:16:39 1057

原创 分片上传,断点续传流程详解

分片上传流程通过前后端协作,实现了高效、可靠的文件传输。关键点包括MD5校验、Redis临时存储和自动合并。如果你正在开发类似系统,可以考虑以下优化:- 断点续传:后端记录已上传分片,前端查询后跳过已完成部分- 并行上传:使用Promise.all同时上传多个分片- 错误重试:为每个分片添加重试机制- 安全性:添加权限校验和文件类型限制断点续传通过数据库和Redis的结合,实现了高效恢复。针对断电等极端场景,引入本地存储和文件验证是关键优化点。重试机制:每个分片上传失败时,自动重试3次。

2025-10-26 22:17:19 1013

原创 深入解析 Spring AI 中的 RAG:什么是RAG,完整的RAG工作流,SpringAI中的RAG Advisor的核心区别与选型指南​

一、什么是 RAG?二、完整的RAG工作流三、Spring AI 中的检索增强生成 Advisor 选型

2025-10-25 10:16:21 755

原创 PostgreSQL向量扩展pgvector的Docker化部署详解

确保该目录存在或 Docker 有权限创建它。这是防止数据丢失的关键!务必设置密码、端口映射和数据卷以持久化数据。: 替换为你想要的用户名、密码和数据库名。: 替换为你主机上用于存储数据库数据的。扩展的信息,表明它已成功加载并可用了。: 给你的容器起个名字。

2025-10-24 19:37:03 357

原创 Bing以图搜图详解

用户可以使؜用一张图片来搜索相似的图片,相比传统‌的关键词搜索,能够更精确地找到与上传‍图片内容相似的图片。这个功能也经常应用到购物场景,查询相似的商品 为了获得更多的搜索结果,我们的需求是从 全网搜索图片,而不是只在自己的图库中搜索。主要有 2 种方案:1.第三方 API 2.数据抓取(爬虫) 如果想从自建的图库中搜索,我们是需要建立数据集的,这个实现起来就比较麻烦了,因为以图搜图涉及一些比较复杂的算法。但是我们可以使用百度 AI 提供的图片搜索 API 参考官方

2025-09-14 11:37:22 2010

原创 轻松获取Bing高质量素材

在互联网上获取图片素材时,版权问题是必须高度重视的关键因素。绝大多数专业图片素材网站(如Shutterstock、Getty Images、视觉中国等)都对其平台上的内容实施了严格的版权保护措施。

2025-09-13 20:48:32 519

原创 Session与Cookie关系详解,解决方案Token

默认:session 信息通常存储在服务端内存中,适合单服务器环境。多服务器部署:内存存储会导致 session 不相通,需采用集中式存储(Redis、数据库)、sticky session、JWT 或 session 复制来解决。推荐方案:在现代分布式系统中,Redis是最常见的 session 存储方案,因其高性能和易用性;对于无状态需求,JWT也是热门选择。

2025-05-15 20:00:16 1682

原创 XXL-JOB 3.1.0 环境搭建及实现入门案例

XXL-JOB是一个分布式任务调度平台,其核心设计目标是开发迅速、学习简单、轻量级、易扩展。

2025-05-10 18:03:09 2482 1

空空如也

空空如也

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

TA关注的人

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