你在这里


Sort

Drupal网站去掉Views中不是很必要的Sort

James Qi 2015年6月26日 - 15:27 发布

  Drupal网站的Views模块非常有用,我们一直用它来生成一些列表,包括node的列表、term的列表等。最近在搬迁一个系列网站到阿里云美国数据中心的服务器过程中,发现RDS的磁盘IOPS一直非常高影响了使用,经过仔细排查,发现造成堵塞的主要原因都是带sort的SQL语句使得不断生成大的临时文件,再把Devel打开,找到这句SQL所在的页面,从而发现是网站的node全列表views有问题,打开views编辑发现Sort一栏中有内容,而去掉Sort条件再报错、运行就发现极少出现原来的问题了。

  查了一些资料,在运行带有sort的select语句是需要产生临时文件,如果内存不够放置的话就需要写入到磁盘从而引起效率急剧下降,而我们的一些网站数据量很大,数据在几十万、几百万都有,这时临时文件也很大了,只有读写硬盘,因而让RDS的IOPS达到限制。

  分析了一下,这个sort其实不是很必要,只是把所有node列出来,不是必须进行按时间排序,于是在Views中去掉了sort项,然后持续几天的IOPS过高就解决了,我准备如果还是不解决的话,甚至把这个Views整个都删除掉,即使删除也不影响网站的核心功能,用户一般还是通过搜索引擎以及各种分类页或者搜索页进到内页的,成千上万的Views页面人工不可能翻页来查看。

自由标签:

订阅 RSS - Sort