日本 -
好几年前开始运营的我的网站,最近一年左右,有个查询会时不时的变的很慢,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
·日本中文新闻 唐田绘里香为新剧《极恶女王》剃光头 展现演员决心
·日本中文新闻 真子小室夫妇新居引发隐私担忧
·日本中文新闻 前AKB48成员柏木由纪与搞笑艺人交往曝光
·日本学校 {日本国际学校}梅田インターナショナルスクール
·日本学校 LINE:sm287 陳雨菲、20歳、台湾からの留学生、東京に来たばかり
·日本留学生活 出售平成22年走行48000km 代步小车
·日本华人网络交流 円相場 一時1ドル=140円台まで上昇?
·日本华人网络交流 问日本华人一个问题
·日本旅游代购 富山接机
·生活百科 英国转澳大利亚转换插头
·汽车 【求助】修车遇到困难怎么办?