Go语言技术文章
-
Linux epoll 的 LT 模式在复杂协议、连接状态较多或团队更重视排障时通常更易维护。本文比较 LT 与 ET 的触发语义、非阻塞契约、工作预算和关闭清理边界,给出服务端事件循环的选择依据。132 收藏 -
Linux inotify 大规模监听应先缩小目录范围,再分别预算 watch、instance 和队列资源。本文说明目录级迁移、fdinfo 计数、事件合并、溢出恢复与回归场景,避免只提高限制却继续丢事件。458 收藏 -
journalctl 的 --boot 负责选择启动批次,--priority 负责选择消息级别。本文用组合命令筛出启动期间的错误日志,并说明服务、内核、时间窗口、权限和空结果的处理边界。326 收藏 -
讲清 Linux fanotify 权限事件的初始化、目录标记、用户态策略判断和 FAN_ALLOW/FAN_DENY 响应边界。489 收藏 -
Linux 启动变慢时,systemd-analyze critical-chain 可以沿着目标单元的关键依赖链找出等待位置。本文按启动总览、关键链、blame、status 和 journalctl 的顺序排查,区分依赖等待与服务自身初始化耗时,并保留回滚路径。113 收藏 -
Type=notify 不把进程启动当成服务就绪,而是等待服务通过 NOTIFY_SOCKET 发送 READY=1。本文用一个最小 Python 服务和 unit 文件说明通知时机、NotifyAccess=main、检查命令、启动超时与回滚边界。436 收藏 -
Python fractions.Fraction 可以保留数值的有理表示,limit_denominator 则能把结果约束到指定最大分母。本文解释浮点数转换差异、参数选择方法和常见边界。417 收藏 -
Python 3.14 新增的 compression.zstd 提供 zstd.open 和 ZstdDecompressor。本文按文件和通用输入两种场景说明如何分块读取大压缩流,控制解压输出大小,并处理 EOF、多帧输入、异常和模块缺失。288 收藏 -
Python 3.15 t-string 返回 Template 而非最终字符串。本文用受限纯文本渲染器说明静态文本与插值处理、求值时机、异常与回退边界,并指出 t-string 并非自动安全模板。491 收藏 -
Python httpx 的关键不是把 AsyncClient 写得更短,而是让同一个客户端覆盖合适的异步生命周期。本文从循环中新建客户端的常见问题出发,说明共享连接池、Limits 参数、并发任务和关闭时机。299 收藏 -
用 Python sqlite3 的 serialize 与 deserialize 在连接之间迁移内存数据库,说明 bytes 快照、事务状态、SQLite 编译能力和恢复连接生命周期的关键边界。497 收藏 -
用 ContextVar 保存请求范围内的 request_id,再通过 logging.Filter 统一写入 LogRecord。本文给出 asyncio 并发示例,并说明 token 恢复、默认值、Handler 过滤器和后台任务边界。471 收藏 -
typing.Protocol 可以围绕消费者需要描述可替换依赖。本文用两个标题查询实现说明小协议、显式注入与签名兼容,并区分静态检查、运行时成员检查和业务语义保障。236 收藏 -
用一个可移植的进程池小工具说明 Python multiprocessing 中 spawn 与 fork 的资源继承、平台差异、代码写法和选择边界。322 收藏 -
Python 3.11 引入的 StrEnum 适合承载接口中的稳定字符串值。本文从 name 与 value 的区别出发,演示 json.dumps 序列化、枚举类调用反序列化,以及严格编码器和未知值场景下的处理边界。393 收藏