EEfaq论坛-赚客自留地

 找回密码
 免费注册
查看: 1293|回复: 13

发个占用资源最少的随机文章代码 - 在80w文章的wp站上测试

  [复制链接]
发表于 2013-9-3 00:56:23 | 显示全部楼层 |阅读模式
本代码参考了网上的代码然后组合而成,之前花了几小时测试的,随机是真正的随机,不会出现某些代码id连续的问题,在我一个80w+文章的wp站测试过,我测试过N多随机代码,这个是占资源最少的了,有兴趣的朋友可以研究更新一下,对有大数据网站又想用随机文章的朋友或者有用。
  1. <ul>
  2. <?php
  3. global $wpdb, $post;
  4. $post_output = "";
  5. $random_posts = "";
  6. $sql="SELECT MAX(id),MIN(id) FROM $wpdb->posts";
  7. $result=mysql_query($sql);
  8. $yi=mysql_fetch_array($result);
  9. $idmax=$yi[0];
  10. $idmin=$yi[1];
  11. $idlist='';   
  12. for($i=1;$i<=20;$i++){   
  13. if($i==1){ $idlist=mt_rand($idmin,$idmax); }   
  14. else{ $idlist=$idlist.','.mt_rand($idmin,$idmax); }   
  15. }  
  16. $idlist2="id,".$idlist;
  17. $sql="select * from $wpdb->posts where id in ($idlist) order by field($idlist2) LIMIT 0,12";  

  18. $random_posts = $wpdb->get_results($sql);
  19.     $wp_rp_title= '';        
  20. foreach ( $random_posts as $random_post )
  21. {
  22.     $post_output.='<li>';
  23.         
  24.     $post_output .=  '<a href="'.get_permalink($random_post->ID).'" title="'.wptexturize($random_post->post_title).'" >'.wptexturize($random_post->post_title).'</a>';

  25.     $post_output .=  '</li>';
  26. }

  27. echo $post_output;
  28. ?>
  29. </ul>
复制代码

评分

参与人数 1e币 +2 收起 理由
bbhit + 2 80W的WP,还能跑得起来?得多好的机器?.

查看全部评分

发表于 2013-9-3 08:52:04 | 显示全部楼层
这里懂代码的不多
回复 支持 反对

使用道具 举报

发表于 2013-9-3 09:40:34 | 显示全部楼层
楼主,80W+ 让 wordpress负载 很是可怕了吧,


回复 支持 反对

使用道具 举报

发表于 2013-9-3 10:38:57 | 显示全部楼层
回复 支持 反对

使用道具 举报

 楼主| 发表于 2013-9-3 14:59:06 | 显示全部楼层
xaut3 发表于 2013-9-3 09:40
楼主,80W+ 让 wordpress负载 很是可怕了吧,

一般般吧,高流量才可怕,低流量就没感觉了,Google bot 疯狂爬的时候也很可怕

回复 支持 反对

使用道具 举报

 楼主| 发表于 2013-9-3 15:00:35 | 显示全部楼层
luguokankan 发表于 2013-9-3 10:38
我懂代码

原理没错,可这代码写得怎样,我就不好意思说什么了

哈,这代码我也是参考网上的,自己没能写出好的,只好借鉴了,能满足自己要求就可以了

回复 支持 反对

使用道具 举报

发表于 2013-9-3 16:18:31 | 显示全部楼层
谢谢分享了 已经收藏、。。。。。。。。。
回复 支持 反对

使用道具 举报

发表于 2013-9-3 16:31:07 | 显示全部楼层
chenyox 发表于 2013-9-3 14:59
一般般吧,高流量才可怕,低流量就没感觉了,Google bot 疯狂爬的时候也很可怕

...

那google 会不喜欢的。现在网页加载速度也算在排名上面,过慢的,应该不会有好排名吧

回复 支持 反对

使用道具 举报

 楼主| 发表于 2013-9-3 18:00:50 | 显示全部楼层
xaut3 发表于 2013-9-3 16:31
那google 会不喜欢的。现在网页加载速度也算在排名上面,过慢的,应该不会有好排名吧

...

既然是大数据,那么绝大多数是采集站了,都是短期的, 现在只要向google提交sitemap了,基本2星期内都会差不多收录完,但是流量没有以前那么多了,至于网站速度慢,不仅Google不喜欢,访客也不喜欢啊

回复 支持 反对

使用道具 举报

发表于 2013-9-25 23:26:50 | 显示全部楼层
谢谢楼主的分享了 ,收藏、。。。。。。。。。
回复 支持 反对

使用道具 举报

发表于 2013-11-26 09:14:51 | 显示全部楼层
我觉得where id in这个的代码性能并不是很高
我觉得做随机,不如做全文索引相关度更高的文章
回复 支持 反对

使用道具 举报

 楼主| 发表于 2013-11-26 11:20:31 | 显示全部楼层
bbhit 发表于 2013-11-26 09:14
我觉得where id in这个的代码性能并不是很高
我觉得做随机,不如做全文索引相关度更高的文章
...

随机还是会占用资源的,我现在基本不用了,而且你采集amz的话随不随机Google都会K你,还有不好意思我没有权限回复短消息,这里回复一下:
我是采网页数据,不是api,不是一小时内采完的,是在vps上挂着,一小时是说上这6个站的时间,不包括采集的时间,例如解析域名,设置网站,改模板之类的。

vps不是无限上的,例如之前的vps上的站挂了,肯定删掉上新的站啊,而且vps是月付的,怎么也积累不了过百vps,因为现在的环境下Google K 站可是很快的,可能刚有流量2天就K了。。。

数据有些是重复的,没有办法。

用wordpress,也是因为wp占用资源大,所以才用vps,因为用虚拟主机被封过很多次了,浪费感情。

域名这个我自己的就不说了,只能说如果注册新域名来玩你算算账吧,而且我测试了很多,新域名是最容易K 的。。。

评分

参与人数 1e币 +2 收起 理由
bbhit + 2 谢谢,最高只能打两分

查看全部评分

回复 支持 反对

使用道具 举报

发表于 2013-11-26 11:25:38 | 显示全部楼层
本帖最后由 bbhit 于 2013-11-26 11:34 编辑
chenyox 发表于 2013-11-26 11:20
随机还是会占用资源的,我现在基本不用了,而且你采集amz的话随不随机Google都会K你,还有不好意思我没有 ...

恩,谢谢

如果不注册新域名?或者是购买那些过期类的域名?这类的域名其实投入也是很高啊
过期域名是否被google降权处理过了这种很难判断

随便麻烦介绍一下你用的VPS吧,谢谢





回复 支持 反对

使用道具 举报

发表于 2013-12-29 12:02:30 | 显示全部楼层



LZ,其实我想知道你是怎么优化的WP,可以承载80W文章,有静态化吗?

回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

QQ|联系我们|Archiver|手机版|小黑屋|EEfaq论坛

GMT+8, 2024-12-4 01:30

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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