python
已收录文章:48篇
-
asyncio.to_thread 能让事件循环避开同步阻塞函数,但它不会把 CPU 密集型代码变成真正并行。文章用一个可运行实验拆开线程池容量、取消语义、异常传递和优雅停机边界,给出上线前的检查清单。291 收藏
-
Python 3.14 标准库支持 UUIDv7。本文从日志和数据库主键场景拆开时间字段、随机性、字符串排序与时钟回拨边界,并给出迁移验收方法。274 收藏
-
Python 服务在并发升高后,日志格式化和磁盘写入容易挤占请求线程。本文用 QueueHandler 与 QueueListener 拆开日志生产和落盘,比较直接写文件、队列日志两种方案,给出可运行示例、压测口径与优雅退出处理。268 收藏
-
Python 3.13 已将 typing.AnyStr 标记为弃用,官方建议改用新的类型参数语法。本文用字符串与字节串函数拆解迁移写法、运行版本和静态检查门禁。238 收藏
-
Python 异步服务需要把 request_id、租户或用户上下文带进子任务时,contextvars 能保持 Task 隔离,但跨线程不会自动复制。本文用可复现的边界检查说明 copy_context、to_thread 与日志关联的正确用法。234 收藏
-
用 memoryview.cast 在不复制缓冲区的前提下读取固定长度二进制记录,重点检查格式字符串、C 连续布局、字节序与越界风险。226 收藏
-
Python 的 webbrowser.open 适合把链接交给系统浏览器打开,但它不是 Selenium 或 Playwright,返回 True 也不代表页面加载成功。本文用最小示例拆开控制器选择、返回值和无界面环境的边界。223 收藏
-
临时目录清理最容易出问题的地方,不是调用 unlink,而是筛选条件太宽、相对路径越界和删错文件后无法复盘。用 pathlib 统一解析路径,按后缀和 mtime 过滤,先写入待删清单再处理,就能把一次性脚本变成可检查、可回退的清理流程。219 收藏
-
Python logging.Filter 不只是放行或丢弃日志;当过滤器修改 LogRecord 时,handler 之间可能互相污染上下文。本文用可运行示例拆开过滤边界、复制记录和验证方法。212 收藏
-
Python 3.14 为 asyncio 增加 ps 和 pstree 命令,可以直接查看运行进程里的任务名、协程栈和等待链。本文用一个可复现的卡住任务场景说明如何选择 PID、读取输出、定位等待点,并给出版本与权限边界。207 收藏
-
Python 批量调用外部接口时,任务越多不一定越快。本文从订单补数任务的耗时基线出发,用 httpx 连接池、asyncio.Semaphore 和超时预算控制请求数量,并通过压测结果说明配置边界与排查方法。196 收藏
-
Python 3.13 新增 dbm.sqlite3 后,dbm 的键值接口可以落到 SQLite 文件上。本文用缓存索引小实验说明 flag、字节值、关闭、SQLite 直读和旧版本兼容边界。188 收藏