凌晨两点的低血糖:身体正在给 35 岁的我发最后通牒

凌晨两点的低血糖不是闹着玩的,眼前发黑手抖得按不住键盘,得扶着桌子缓五分钟。这他妈就是35岁的身体给我的警告,比任何甲方催命都准。团队扩张这摊子事,表面流水翻了三倍,实际是把我的血槽抽干了。今天必须把个人博客的自动化发布系统搭起来,这是给自己留的逃生舱口,再陷在管理泥潭里明年就得进ICU。

博客的核心表结构就三张,但每张都带着过去两年被流量和交付毒打出来的教训。user表除了常规字段,加了`energy_level`和`focus_slot`两个字段,用来记录我每天什么时间段脑子最清醒,这是用血泪换来的数据——下午三点后我基本就是废人,所有重要创作必须压到上午。post表是主体,关键在`status`字段:`draft`、`scheduled`、`published`、`archived`,还有我特意加的`burnout_risk`。这个风险标记是写了个简单的规则引擎来判断的:如果一篇草稿连续修改超过7次,或者单日写作时间超过6小时,系统就自动打上这个标签并锁死编辑24小时。这是强制冷却,不然我又会像去年做那个电商小程序一样,钻牛角尖改到胃痉挛。

最复杂的是schedule表。这不止是定时发布,是我把SEO那套野路子经验算法化了。每个字段都有讲究:`target_keyword`、`suggested_post_time`(根据历史点击率算出来的)、`platform_sync_flag`(同步到知乎专栏和公众号的开关)、还有`retry_on_fail`。为什么需要重试机制?因为微信公众平台的API就是个玄学,经常半夜抽风,频率限制说变就变。我设了三次指数退避重试,失败就转存到本地队列,第二天早上再用模拟登录的方式补发。这套逻辑是用Python的apscheduler加requests库硬怼出来的,中间踩的坑能写本书:多线程下的日志混乱、Cookie池的维护、还有那个该死的SSL证书验证错误。

自动发布逻辑跑在阿里云最便宜的ECS上,用systemd做成服务守护进程。核心脚本也就两百行,但每一行都是效率偏执。它每小时跑一次,扫描schedule表里`published`状态的任务,用Jinja2模板引擎把Markdown内容渲染成HTML,同时调用百度站长平台的API主动推送链接。推送前会先用`jieba`分词库过一遍,确保关键词密度别太离谱——去年有个项目就是关键词堆砌被降权了,白干三个月。渲染完成后,通过SCP同步到又拍云的CDN目录,最后发一条钉钉机器人通知到我手机,附带简单的发布报告:字数、图片数量、预估的首次加载时间。

搞完这套东西已经凌晨三点半,低血糖的感觉又泛上来了,赶紧撕了条能量胶咽下去。看着终端里滚动的日志,突然觉得可笑。我花了两年时间教别人做产品、管项目,自己的时间却碎得捡不起来。这个博客系统本质上是个时间监狱的越狱工具,它逼我把创作流程工业化,把那些感性的“等我有灵感再写”的借口彻底拆除。灵感是奢侈品,35岁的人只配相信流程和自动化。团队里那帮小孩还在为谁该写周报吵架,我已经在代码里给自己建好了防崩溃系统。身体发出的警报是真实的,但比身体更早崩溃的,往往是那些你以为坚不可摧的旧模式。这张schedule表里已经预填了未来三个月的选题,第一个就是《论小老板的自我奴役》,写出来估计能得罪一圈人,但不得罪人,我搞这个博客干嘛呢。

© 版权声明
THE END
喜欢就支持一下吧
点赞76 分享