有几个做法在配置界面上看起来很合理,也常常被当成标准动作,真跑起来却会给后面的代理IP走向埋麻烦。它们共同的特点是:短期看没问题,规模一上来或者人员一换,问题就露出来,而且往往已经积累了一段时间。
配置里凡是靠默认和习惯写下的东西,都值得回头问一句为什么。
短期看不出问题,长期一起还。
第一个是给所有设备留固定地址
固定地址看起来很稳妥,实际上把地址池的弹性用光了。设备一多,段就撑不住;要加设备时只能临时扩段或者回收,回收又容易碰到正在跑任务的设备。爱快里比较合适的做法是只给长期在线、身份不能变的设备留固定地址,其余的走代理IP轮换。
第二个是把分组当装饰
分组设了却不维护,比不设更麻烦。设了分组,后面的人会以为它是准的,照着它做判断,结果拿到的结论是错的。要么不分组,要么每次变动都更新;爱快上最容易出现的情况是分组名还是半年前那套,设备早换过两轮了。
第三个是只按接口位置写规则
按接口位置写规则,写的时候很直观,换设备时不直观。接口编号一变,规则就指错了地方,而且不会报错。这种做法在单机环境里没问题,设备一多就成了隐患。爱快里更稳的写法是按分组与地址段来写,物理位置放在注释里,迁移的时候改动面小很多。
第四个是把验证省掉
验证是最容易被省的一步,因为它当场看不到收益。省掉之后,问题会延迟到某次业务异常时才暴露,那时候要回查好几天前的改动。爱快里加一步代理IP地址核对,成本是两分钟,收益是每次改动都可追溯,怎么算都划算。
四个做法的共同点:都省略了「后面会发生什么」这一层推演。
设想半年之后的某个上午,新来的同事问:「这一组为什么这么划?」如果手边有一张表能回答,这半年就没白过;如果只能回答「当初就这么配的」,那这几个做法大概都还在里面。
