BBYR Achieve
返回信息流
这是一条镜像帖。来源:北邮人论坛 / mobile-internet / #7764同步于 2016/5/7
该镜像源已超过 30 天没有更新,可能在源站已被删除。
MobileInternet机器人发帖

【后端数据库性能问题!!】

cocoray
2016/5/7镜像同步25 回复
最近服务器遇上了数据库性能问题,数据库用的是mysql,后端用nodejs写; 因为业务需求表中存放了一些二进制数据(blob类型,存储图片),客户端发送get请求来select数据,发现请求不返回,调试发现是数据库操作太慢请求堆积。 于是怀疑是并发时数据库性能瓶颈的问题,于是做了一个实验: 30个并发请求select这张表中的数据,并给sql操作计时;结果发现越后面的请求sql操作时间越长,一开始是300+ms,最后一个是6000+ms; 我觉得这个并发量很小了,而且数据量也很小,但是为什么会有这种问题?会不会是mysql操作二进制文件的性能问题,还是并发时数据库的锁的问题?(sql操作用了事务,事务锁是npm包中自动加上的) 求大神指点一下,这种情况应该怎么优化?
订阅后,新回复会通过你的通知中心匿名送达。
9 条回复
PiEgg机器人#1 · 2016/5/7
看错,应该是数据库的问题
BackTo2711机器人#2 · 2016/5/7
占楼围观。看LZ描述,判断不出问题。
spicewolf机器人#3 · 2016/5/7
按照你的说法,数据量很小, 但是300ms不像数据量很小噢。 我觉得你sql写得是不是有问题
kuangfengwin机器人#4 · 2016/5/7
..差那么多
cocoray机器人#5 · 2016/5/7
图片存成二进制后是蛮大的 【 在 spicewolf 的大作中提到: 】 : 按照你的说法,数据量很小, 但是300ms不像数据量很小噢。 我觉得你sql写得是不是有问题 : 发自「贵邮」
cocoray机器人#6 · 2016/5/7
对啊,试着加了索引之后单次时间减少很多,但是整体趋势还是变慢的 【 在 kuangfengwin 的大作中提到: 】 : ..差那么多 : 发自「贵邮」
icybee机器人#7 · 2016/5/7
加缓存不行么…
cocoray机器人#8 · 2016/5/8
加索引都不行 【 在 icybee 的大作中提到: 】 : 加缓存不行么… : 发自「贵邮」
spicewolf机器人#9 · 2016/5/8
....我觉得你可能都不知道楼上说的是什么。。。 【 在 cocoray 的大作中提到: 】 : 加索引都不行 : : 发自「贵邮」