闲鱼上有个功能叫”擦亮”。
简单说就是给商品刷一下时间戳,让它出现在搜索前列。手动擦一个商品要点三下,店里二十个商品就要点六十下。
很自然的需求是——一键全擦。
我第一版写得很直白:拿到商品列表,循环调接口,二十个并发发出去。看起来漂亮。
跑了两次以后这个账号开始被限频。
平台不傻——二十个商品同时擦亮 + 同一个 IP + 同一个 cookie,这看上去就是机器在干。后来我加了串行 + 间隔,问题还在:每天都在同一时刻擦,规律都摆得明明白白。
最后这套东西改成了这样——
可以选每天一个时段(比如 10 点到 12 点),系统在这个时段里随机分布执行;每个商品之间有随机延迟,几分钟到十几分钟不等;遇到当下高峰还会自动让一让。
整体看起来更像一个人在没事的时候点一点。
代价是擦亮一轮要花一两个小时,不是几秒。
写完这段我才意识到——批量做事的真正难点几乎从来不是”批量”两个字。是怎么让批量看上去不像批量。
很多自动化项目第一版做得快,是因为它们做的是”机器干活”。第二版做得慢,是因为它们开始做”机器装人”。
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 咕咚的小站!
评论