日本 -
好几年前开始运营的我的网站,最近一年左右,有个查询会时不时的变的很慢,5秒以上。
但查询几次后就变0.1秒以内了,估计是一开始整张表没载入内存所以慢吧。
网站用的是PHP虚拟主机,也就1万5千多日元1年,升级主机不知道会不会问题就解决了。
DB是MariaDB(MySql)。
最近月PV是100-200万左右。
相关表:
会员表 5,007,769条数据 6.1GB
语言1表 9,988,262条数据 1.3GB
语言2表 14,941,340条数据 754MB
语言1和2的合体表 29,801,365条数据 1.9GB
比如说某会员的语言1有两种(英语,日语),语言2有三种(汉语,韩语,俄语),
此会员的语言1表就会有2条数据
1 英语
2 日语
语言2表会有3条数据
1 汉语
2 韩语
3 俄语
语言1和2的合体表会有6条(2x3)数据
1 英语 汉语
2 英语 韩语
3 英语 俄语
4 日语 汉语
5 日语 韩语
6 日语 俄语
用户可以在画面上选择语言1和语言2进行会员查询。
只选择语言1的话,只要关联会员表和语言1表。
只选择语言2的话,只要关联会员表和语言2表。
同时选择语言1和语言2的话,一开始设计的时候,要关联会员表,语言1表和语言2表三张表。
但是当时考虑到同时关联两张语言表以后速度会变慢,所以造了语言1和2的合体表。
现在只要关联会员表和合体表就行了。
上面的查询,一开始速度贼快,但一年多以前出现在5秒以上的情况。
有什么好的方法让这些表没载入内存时也能在1秒内得到查询结果吗?
本人才疏学浅,实在想不出好的方法。
有大神出来展示一下神的力量吗?
评论
玛丽亚。 一堆bug
评论
第一传给服务器的数据结构有问题,可以改善。拆开,再重新组装等。
第二SQL文写的有问题,可以改善,加上索引,partition等等
第三表定义本身的改善
第四配置服务器上的 apache的配置文件等也可以直接影响性能,可以改善。
第五如果没有Elastic Load Balancing 加上Elastic Load Balancing 一定能改善
第六不知道你用的是独立的服务器还是云服务,如果是云服务 解决这个问题就很简单了
评论
说了这么一大堆臭氧
你倒是把网址写出来啊
你倒是把慢的 sql 写出来啊
评论
分页处理做了么? between and
多用户,同时对500万条以上数据进行查询,肯定慢成狗了……
深夜,选择用户少的时间测试一下速度
如果还是慢,需要优化查询sql
如果很快,更换aws,然后找出用户量大的时间增加服务器数量即可
评论
扯成了三个表。。。。。。
评论
简单到不能再简单的查询了。
评论
有可能!!我怎么没想到。也许真是玛利亚的问题。
评论
有什么好的分表的方法吗?
有200多种语言,难道分成200多张表?
虽然分成200多张表确实应该能解决速度问题。
评论
这尼玛 where 让你写的,这叫分页?
小于 now 的都被你查出来了……
日本 Japan
·日本中文新闻 日本人英语能力连年下滑,水平低于韩国中国
·日本中文新闻 日本决定核废水2023春夏排入海
·日本中文新闻 日本百元店,吊打MUJI优衣库
·日本签证办理 办理在留或者资格更新可以网上申请,在留卡直接寄到家
·日本签证办理 11/29递交的,1/12收到通知啦~开心
·日本留学生活 关内便利店招人
·日本华人网络交流 跟大家说个事。我儿子昨天掉冰洞里了。事故性冬泳。。。。
·日本华人网络交流 院子 or 房顶 如果是自己的,是否可以擅自加一个屋子呢?
·日本华人网络交流 天然气费今天来了。这个月21000
·澳洲新闻 注意!维州2月1日起全面实施塑料袋禁令,违者罚款5.4万澳元(
·澳洲新闻 澳洲东海岸连日来雷阵雨,气象局发布恶劣天气预警(图)