看到分享(前辈/前同事)那文章,想到一件有趣的事。

2023-06-16 15:54:49 +08:00
 go522000

看到这文章,不作评论。https://www.v2ex.com/t/949195


这让我想起之前一个采集系统,客户开始在沟通的时候,说要采集 QQ 空间,微博,twitter 等内容,所以在设计数据库的时候就有一个字段叫 target 指定采集的目标,我就把这个字段设计为 varchar(255)。最开始是实现 QQ 空间的采集功能,其它的先不用开发,所以 target 里面全是 QQ 号。

交付之后用了一段时间,客户公司就聘请一个全职员工来维护这个系统,然后这家伙居然在群里喷说外包公司太烂了,为什么用 varchar ,QQ 号全是数字要用 int ,varchar 太慢了,XX 什么不规范等。我听了头晕晕,你说 varchar 比 char 慢我还能认了,但这个是需求的问题,而且有问题不是先找我沟通吗?我还在群里呢,怎么在群里直接就喷了。

行吧,我先默默备份数据库后不在群里回复他,当没看到,反正钱收到了。

后来,我关注到采集下来的数量比之前少了很多,才知道他直接把 varchar(255)改为 int(11),而有一些 QQ 号长度超过 int(11),导致全是采集同一个号。

原是想等客户那边找过来,继续维护这系统,把接下来的微博和 twitter 的采集功能开发下去,再赚点钱。不过,还好对方是经验不足,倒不至于傻,他那边有备份,后来类型改为 bigint ,可以正常运行。

1660 次点击
所在节点    程序员
5 条回复
LeegoYih
2023-06-16 16:34:16 +08:00
大家在职场中遇到这种人一定要怼回去,不能吃哑巴亏,否则群里人都会觉得你是错的 /软柿子。
“varchar 太慢”有数据支撑吗,Benchmark 结果有吗?
以后要采集微信号之类的是不是还是要改回 varchar ?
我已经考虑到需求以后的扩展了,你还在想 QQ 号有几位?
chenxiankong
2023-06-16 17:27:41 +08:00
对于这种情商低的,我建议回复: 啊,对对对,你说得对.(反正钱收到了~)
LykorisR
2023-06-16 17:36:54 +08:00
QQ 号全是数字用 int.....我不好说
zhangxh1023
2023-06-16 17:59:09 +08:00
爬虫系统都要这么精打细算性能吗,我感觉 特别是这种反爬严重的,一般都要特意降低频率的吧。
xuanbg
2023-06-17 09:01:38 +08:00
什么叫 varchar 比 int 慢?这个理解不能

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/949335

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX