作者小头像 Lv.3
更多个人资料
183 成长值
0 关注
0 粉丝
+ 关注 私信

个人介绍

这个人很懒,什么都没有留下

感兴趣或擅长的领域

暂无数据
个人勋章
TA还没获得勋章~
成长雷达
180
3
0
0
0

个人资料

个人介绍

这个人很懒,什么都没有留下

感兴趣或擅长的领域

暂无数据

达成规则

以上满足项可达成此勋章

  • 博客
  • 关注
  • 粉丝
  • 论坛
全部时间
全部时间
最近三天
最近一周
最近一月
  • 全部
  • 暂无专栏分类
Python GIL 与并发模型选型:多线程、多进程还是协程
一、GIL 是什么GIL(Global Interpreter Lock,全局解释器锁) 是 CPython 解释器里的一把互斥锁:同一时刻,一个 Python 进程内只有一个线程能执行 Python 字节码。很多人的第一反应是“那多线程不就没用了?”——并不完全对。要理解 GIL 的影响,得先分清任务类型:CPU 密集型 和 I/O 密集型。 二、GIL 为什么存在CPython 用引用...
Python 任务调度 多线程
作者小头像 yd_268144123 2026-11-14 09:48:42
1
0
0
2026-11-14 09:48:42
1
0
0
缓存穿透、击穿、雪崩的成因与解决方案
一、为什么缓存会“出问题”缓存是性能利器,但把流量挡在数据库前面后,一旦缓存层异常,问题会瞬间放大到数据库。面试和实战里最常被问的三个经典问题——缓存穿透、缓存击穿、缓存雪崩——名字相近,成因和解法完全不同,必须分清。 二、缓存穿透(Cache Penetration)成因:查询一个根本不存在的数据(如 id = -1 或随机不存在的 key)。缓存里没有,数据库里也没有,于是每次请求都穿...
作者小头像 yd_268144123 2026-11-13 09:44:45
0
0
0
2026-11-13 09:44:45
0
0
0
分布式锁的几种实现方案与常见陷阱
一、为什么需要分布式锁单机多线程用 synchronized / Lock 就能互斥。但服务一旦部署多实例、或多台机器共享同一份资源(库存、账户余额、定时任务),本地锁就失效了——因为锁只在单个进程内有效。分布式锁要保证:同一时刻,跨进程/跨机器,只有一个持有者能操作共享资源。实现上有几种主流方案,各有取舍。 二、基于 Redis 的分布式锁最常见的做法,用 SET key value N...
分布式
作者小头像 yd_268144123 2026-11-12 09:56:07
0
0
0
2026-11-12 09:56:07
0
0
0
HTTP 缓存机制详解:强制缓存、协商缓存与 Cache-Control 实战
一、缓存能解决什么Web 性能优化里,缓存是性价比最高的手段之一:把「不必每次都回源请求」的资源留在浏览器或 CDN 上,既减轻服务器压力,又让用户打开更快。理解 HTTP 缓存的规则,是前端/后端/运维都绕不开的基本功。本文讲清强制缓存、协商缓存两套机制,以及 Cache-Control 等关键响应头怎么配。 二、两类缓存:强制缓存 vs 协商缓存强制缓存:浏览器在有效期内直接用本地副本...
http
作者小头像 yd_268144123 2026-11-11 09:53:08
6
0
0
2026-11-11 09:53:08
6
0
0
Python 单元测试实战:pytest 核心用法与工程实践
一、为什么写单元测试单元测试是保证代码质量的“安全网”:重构时能快速发现回归、定位问题时能缩小范围、写测试的过程本身也会倒逼接口设计更清晰。Python 生态里最主流的框架是 pytest,语法简洁、生态丰富。本文从零讲清 pytest 的核心用法、常用技巧和工程实践。 二、第一个测试# calc.pydef add(a, b): return a + b# test_calc.py...
Python 单元测试
作者小头像 yd_268144123 2026-11-10 09:49:52
14
0
0
2026-11-10 09:49:52
14
0
0
Docker Compose 多服务编排实战:依赖、健康检查与常见坑
一、为什么需要 Compose一个应用往往不止一个容器:Web 服务、数据库、缓存、消息队列……如果用 docker run 一个个起,命令又长又难维护,容器间网络、依赖顺序、环境变量都要手动处理。Docker Compose 用一个 compose.yaml 描述整组服务,一条 docker compose up 就能把整套环境拉起,特别适合本地开发、联调、单机部署。 二、一个完整示例以...
Docker
作者小头像 yd_268144123 2026-11-09 09:52:13
11
0
0
2026-11-09 09:52:13
11
0
0
gRPC 与 REST 接口设计对比与选型实战
一、背景微服务之间怎么通信,是架构设计绕不开的问题。最常见的选择是 REST(基于 HTTP/JSON) 与 gRPC(基于 HTTP/2 + Protobuf)。两者不是孰优孰劣,而是适配不同场景。本文从协议、性能、契约、工程实践几个角度讲清差异,给出选型建议。 二、REST 快速回顾REST 以资源为中心,用 HTTP 动词(GET/POST/PUT/DELETE)操作资源,通常用 J...
作者小头像 yd_268144123 2026-11-08 09:46:48
9
0
0
2026-11-08 09:46:48
9
0
0
JWT 认证与鉴权实战:结构、签名与安全设计
一、为什么用 JWT传统 Session 方案把登录状态存在服务端,靠 Cookie 里的 sessionId 去查。服务一多、要水平扩展时,就得引入共享存储(Redis)来同步会话,或者做会话粘滞,比较麻烦。JWT(JSON Web Token)把“用户是谁、有什么权限”编码进一个自带签名的令牌里,服务端无需存会话,只要用密钥验签就能确认令牌没被篡改。这让它在无状态 API、微服务、前后...
作者小头像 yd_268144123 2026-11-07 09:46:37
18
0
0
2026-11-07 09:46:37
18
0
0
消息队列选型实战:RabbitMQ 与 Kafka 的差异与场景
一、为什么要用消息队列在微服务和异步架构里,消息队列(MQ)主要解决三件事:解耦:生产者只管把消息发出去,不必关心谁消费、怎么处理。削峰填谷:流量洪峰先落到队列,消费者按自身能力匀速处理,避免把下游打垮。异步:把耗时操作(发短信、生成报表)从主流程里剥离,接口快速返回。选型时最常被拿来比较的就是 RabbitMQ 和 Kafka。两者定位不同,不是谁替代谁。 二、RabbitMQ:灵活的传...
Kafka RabbitMQ
作者小头像 yd_268144123 2026-11-06 09:47:39
30
0
0
2026-11-06 09:47:39
30
0
0
Python 异步编程实战:asyncio 协程、并发控制与常见坑
一、为什么需要异步很多服务的瓶颈不在 CPU,而在“等待”:等数据库返回、等 HTTP 响应、等文件读写。传统同步模型下,一个请求在等待时会占着一个线程干等,想提高并发只能不断加线程,线程一多切换开销和内存占用就上来了。asyncio 的思路是:用一个事件循环(event loop)在单线程里调度大量协程,遇到 IO 等待就切去处理别的任务,等结果就绪再切回来。这样少量线程也能扛住大量并发...
Python
作者小头像 yd_268144123 2026-11-05 14:49:48
25
0
0
2026-11-05 14:49:48
25
0
0
总条数:18
10
10
20
50
100
  • 1
  • 2

上滑加载中

https://www.baidu.com/s?ie=utf-8&f=3&rsv_bp=0&rsv_idx=1&tn=baidu&wd=sed%20%E6%9B%BF%E6%8D%A2%E5%AD%97%E7%AC%A6%E4%B8%B2&rsv_pq=c7db61a600035dc5&rsv_t=5e19yEsbV9N5fIvdlGRU
作者小头像
作者小头像
快速交付
+ 关注