把事件总线交给 NATS JetStream 前,我会先分清 stream 和 consumer 边界 2026-06-30 开发实践 NATS / JetStream / 消息队列 / 云原生 / 开源项目 / 开发实践 一篇面向小团队的 NATS JetStream 实践笔记:先把事件入口、持久化 stream、消费确认和 replay 证据拆清楚,再把临时脚本里的消息流量迁进去。 3 | 0
把定时脚本交给 Kestra 前,我会先画清工作流边界 2026-06-29 开发实践 Kestra / 工作流编排 / 开源项目 / 自动化 / 开发实践 一篇面向小团队的 Kestra 实践笔记:把定时任务、Webhook、脚本执行和失败证据收进同一条可观察工作流,先治理边界,再扩大自动化范围。 4 | 0
把 Python 工具链交给 uv 前,我会先分清三类环境 2026-06-26 2026-06-26 开发实践 uv / Python / 开源项目 / 依赖管理 / DevOps / 开发实践 一篇面向小团队的 uv 实践笔记:把项目依赖、一次性命令工具和 CI 环境分开治理,让 Python 工具链更容易复现和交接。 3 | 0
把权限判断交给 OpenFGA 前,我会先画清 tuple 和模型边界 2026-06-18 2026-06-18 开发实践 OpenFGA / 权限系统 / 开源项目 / SaaS / 开发实践 一篇面向 SaaS 小团队的 OpenFGA 实践笔记:先把资源、关系、tuple、模型版本和测试流程收拢,再把权限检查接进业务服务。 4 | 0
把云资源变更交给 OpenTofu 前,我会先管好 state 和 plan 2026-06-16 2026-06-16 开发实践 OpenTofu / IaC / 云服务实践 / DevOps / 开源项目 一篇面向小团队的 OpenTofu 实践笔记:先把配置、plan、state、锁和审批链路理顺,再把云资源变更接进自动化流水线。 4 | 0
用 OpenFeature 给功能开关留一层可替换接口 2026-06-12 开发实践 OpenFeature / Feature Flags / 开源项目 / 云原生 / 开发实践 OpenFeature 适合把功能开关从零散 if 判断收敛成标准 SDK、Provider、Context 和 Hook 组合,方便以后替换平台或接入自研系统。 6 | 0
用 Valkey 给本地开发加一层可替换缓存 2026-06-11 开发实践 Valkey / 开源项目 / 缓存 / 开发实践 / 云服务实践 Valkey 适合先从本地开发缓存层练起:明确 TTL、驱逐、持久化和 ACL,再决定是否接入生产服务。 6 | 0
把 Renovate 接进团队前,我会先管住依赖 PR 的节奏 2026-06-10 开发实践 Renovate / 依赖管理 / DevOps / 开源项目 / 工程实践 Renovate 很适合自动发现依赖更新,但真正落地前要先设计分组、审批、时间窗和自动合并边界,避免依赖 PR 变成持续噪音。 2 | 0
把 CI 脚本写进代码前,我会先用 Dagger 做一条本地可复跑流水线 2026-06-09 开发实践 Dagger / CI/CD / DevOps / 开源项目 / 开发实践 Dagger 可以把测试、构建、发布这些交付动作写成可组合函数,让同一条流水线在本地和 CI 中复跑,适合先治理脚本漂移和缓存边界。 3 | 0
用 LiteLLM Proxy 给团队留一个可替换的 AI 网关 2026-06-08 AI 工具 LiteLLM / AI 工具 / 开源项目 / 开发实践 / LLMOps LiteLLM Proxy 可以把多家模型服务收拢成一个 OpenAI 兼容入口,适合小团队先做统一路由、密钥隔离和成本观察。 3 | 0