知识学习

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
热搜: 活动 交友 discuz
查看: 3991|回复: 0

destoon性能优化之公司列表慢的解决方案

[复制链接]

升级   100%

152

主题

0

回帖

752

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
752
发表于 2020-9-15 23:14:11 | 显示全部楼层 |阅读模式
由于更多的功能和更快的性能,但是发现Company公司模块列表速度非常慢,我们经过检查,发现程序是采用的Like查询分类ID,而MYSQL的普通索引对LIKE查询无效,造成公司黄页模块速度非常慢(数据量小可能体会不到)。

由于一个公司属于多个分类,所以必须使用LIKE查询,LIKE速度快的只有全文索引了,我们看到Mysql支持FULLTEXT的全文索引,不支持中文,而正好company的分类列catids正好是全英文的,
所以,解决办法是:
1:进入PHPMYADMIN,修改company表结构,为catids列新建一个FULLTEXT索引。
2:修改Destoon网站目录下的module下的company下的list.inc.php ,将:

  • $condition = "groupid>5 and catids like '%,".$catid.",%'";

改成

  • $condition = "groupid>5 and MATCH (catids) AGAINST ( ',".$catid.",')";


3,找到

  • $condition .= " AND catids like '%,".$catid.",%'";

修改成


  • $condition .= " AND MATCH (catids) AGAINST ( ',".$catid.",')";



注意是两个地方,1个PC,1个WAP。
好了,大功告成,速度马上飞快!


执行 SQL语句

  • ALTER TABLE `destoon_company` ADD FULLTEXT INDEX(`catids`)


本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|知识学习 ( 鲁ICP备20015483号 )

GMT+8, 2026-5-13 21:59 , Processed in 0.063785 second(s), 26 queries .

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表