Discuz论坛之大坑!各位坛主请注意!

今天论坛打开了这个会话功能,结果很荣幸踩坑里了,连接数直接给干到2000开外。

好了,直接上图说下:

wKiom1MsY8-x9OKZAAnGTm-533s096.jpg

show processlist,满屏显示这条SQL,情急之下,立即pt-kill,先让论坛活下来。顺便想问候下discuz开发,你们真的做了测试了吗,就直接发布了?

wKioL1MsZAzxA95XAAr_EJ44cEU098.jpg

表结构:

mysql> desc pre_common_session;
+--------------+----------------------+------+-----+---------+-------+
| Field        | Type                 | Null | Key | Default | Extra |
+--------------+----------------------+------+-----+---------+-------+
| sid          | char(6)              | NO   | PRI |         |       |
| ip1          | tinyint(3) unsigned  | NO   |     | 0       |       |
| ip2          | tinyint(3) unsigned  | NO   |     | 0       |       |
| ip3          | tinyint(3) unsigned  | NO   |     | 0       |       |
| ip4          | tinyint(3) unsigned  | NO   |     | 0       |       |
| uid          | int(11) unsigned     | NO   | MUL | 0       |       |
| username     | char(50)             | NO   |     |         |       |
| groupid      | smallint(6) unsigned | NO   |     | 0       |       |
| invisible    | tinyint(1)           | NO   |     | 0       |       |
| action       | tinyint(1) unsigned  | NO   |     | 0       |       |
| lastactivity | int(10) unsigned     | NO   |     | 0       |       |
| lastolupdate | int(10) unsigned     | NO   |     | 0       |       |
| fid          | int(11) unsigned     | NO   |     | 0       |       |
| tid          | int(11) unsigned     | NO   |     | 0       |       |
+--------------+----------------------+------+-----+---------+-------+
14 rows in set (0.00 sec)


wKiom1MsZpPxqnIfAAKDLW5TAPA952.jpg

由于该SQL导致全表扫描,虽然表数据不多1万多行,但InnoDB引擎在没有使用到索引的情况下,会转为表级锁,并发一大,线程处理不完,连接不释放,连接数就会上升。

wKiom1MsZ0mjVOapAADjB8UDJV8038.jpg

最终让开发在后台关闭该功能,解决之。



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值