帝国CMS模版制作中一直有个问题困扰着墨鱼,确切的说这也不是帝国CMS的问题,这算是PHP问题,这个问题就是随机算法。
从大数据中随机取行数,这个本身就是一个非常耗费资源的操作,如果帝国CMS采用了生成静态的方式,就会发现生成的特别慢,CPU特别高。
那么墨鱼就想如何去彻底解决这个问题。用了一些方法:比如在数据库里的一些查询优化方法,还有数据库本身的优化方法,都不能解决。所以墨鱼就打算不在局限在数据库里查询了,改成从文本查询。
有大方向就好办了。
生成XML或者文件,比如ID 栏目ID 标题 链接 封面图之类的比如下面的格式:
ID||栏目ID||信息标题||信息链接||封面图
ID||栏目ID||信息标题||信息链接||封面图
ID||栏目ID||信息标题||信息链接||封面图
然后取的时候分割成数组供以后调用。这样模版里调用的时候直接去文件里取,就非常快了。实际测试200W数据随机取20条,用了几十毫秒。CPU基本不动。我连续后台生成了几万数据,非常快!
请先联系 墨鱼 沟通后,点击下面的“确定改造”,联系墨鱼进行改造!
查看原内容