分类:科技

定时任务方案选择指南:crontab、K8s CronJob、Airflow、XXL-JOB 各自该出现的地方

76 阅读 0 2680 字 · 约 9 分钟

一个项目刚开始,定时任务少,随手扔个 crontab -e,一行表达式一个脚本。没人纠结——能跑就行。 后来定时任务多了。三个 cron 变十几个,散在不同机器上。没人知道哪个在跑、哪个停了、哪个重复了。要补跑、要暂停、要看日志——每次都先 ssh 上去找脚本在哪。然后你开始看调度框架:Airflo

配置文件格式选择指南:JSON、YAML、TOML、INI、ENV、XML 各自的代价与适用场景

78 阅读 0 4928 字 · 约 17 分钟

有个事在软件开发里反复发生:你花在纠结配置文件格式上的时间,比你花在写配置本身上的时间还多。 这不是你的问题。配置文件在任何一个项目里都长成痛点:一开始随手扔个 .env 就够,后来要分环境、要嵌套、要注释、要校验——每个需求冒出来时,先前的格式就有一项撑不住。于是你开始看别的格式,发现每种都有一帮

从内存到消息队列:数据交换的进化链

50 阅读 0 3277 字 · 约 11 分钟

一个系统刚开始的时候,所有数据都在一个进程里。函数调函数,变量传变量——快,简单,不会出错。这时候你不需要什么 REST,不需要什么消息队列,甚至不需要文件。 后来系统长大了。数据量撑破内存,业务逻辑要拆成多个进程,甚至要拆到不同的机器上。这时候你才意识到:数据要跨边界了。跨边界的代价,比你以为的大

复杂度到底从哪来的?

73 阅读 0 3865 字 · 约 13 分钟

做了快十年,经手的项目从几十行脚本到几十万行系统都有。有一个问题一直绕不开:复杂度到底从哪来的? 不是「为什么会有复杂度」——那个答案太简单:问题本身有复杂度,解决它就得付出复杂度。真正的问题是:为什么很多系统的复杂度,比它要解决的问题大得多?多出来的那一部分是谁加的、什么时候加的、怎么避免?

为什么从 demo 到生产路还很长?一次数据拉取功能的复杂度演进复盘

75 阅读 0 3196 字 · 约 11 分钟

从 50 只 demo 到全市场生产,一个数据拉取功能长出了八套机制。回看演进链:规模 → 数据量 → 真实数据 → 失败 → 速度 → 成本 → 并发 → 接口限流 → 内存,每一层的解决都打开下一层。调用量靠估算暴露、内存靠崩溃、失败靠事故、并发靠推演、成本靠习惯、接口限流靠拒绝——demo 是单次的、小规模的、理想环境的,它把"功能正确"之外的所有维度都屏蔽了。

我不觉得会用 AI 工具是人与人之间的差距

71 阅读 0 2648 字 · 约 9 分钟

我不觉得会用 AI 工具是人与人之间的差距。说这话的人,不是在贩卖焦虑,就是在自我欺骗。 这句话不讨喜,但我还是想说。因为最近半年,你一定见过这些场景:朋友圈里有人截图发「我用 AI 一天干完了别人一周的活」,评论区清一色「求教程」「求带」;短视频里博主表情严肃地告诉你「不会用 AI 的人正在被淘汰