gpt4 book ai didi

MySQL 问题更大=更慢?

转载 作者:行者123 更新时间:2023-11-29 12:36:30 26 4
gpt4 key购买 nike

请耐心等待,我对 MySQL 编码并不太有信心。我正在运行一个类似于 Twitter 的网站。然而,似乎用户获得的关注者越多,网站在该特定用户个人资料上运行的速度就越慢。关注者较少的用户的页面加载速度相当快。

下面是 MySQL 的“Follower”部分,你们中的任何人都可以看到代码的问题或阐明为什么会发生这种情况吗?

提前致谢。

代码:

CREATE TABLE IF NOT EXISTS `followers` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`follower` int(11) unsigned NOT NULL,
`following` int(10) unsigned NOT NULL,
`status` enum('0','1') CHARACTER SET utf8 NOT NULL DEFAULT '1' COMMENT '0 Trash, 1 Active',
`date` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
PRIMARY KEY (`id`),
KEY `follower` (`follower`,`following`,`status`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci AUTO_INCREMENT=1;

最佳答案

首先,为什么要对不断更新的表使用 MyISAM 引擎,这会减慢您的应用程序,因为 MyISAM 使用表级锁,这意味着选择必须等待插入完成才能运行,始终使用InnoDB 用于此类表。

第二件事,我认为最好为每个 followerfollowing 使用一个键,因为现在任何类似于 WHERE follow=X< 的查询 不会使用您的索引follower

如果您可以展示 SELECTS 示例,也许您会得到更多建议。

关于MySQL 问题更大=更慢?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26702272/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com