这篇文章主要介绍的内容是关于php脚本定时更新商品列表,有着一定的参考价值,现在分享给大家,有需要的朋友可以参考一下
电商项目中为了提高抗并发能力,需要对商品列表做缓存,以下是更新缓存用的脚本:
//PRODUCTION_为缓存商品列表的临时key//PRODUCTION为缓存商品列表key
$con = mysqli_connect($db_config['host'],$db_config['user'],$db_config['passwd'],$db_config['database']);
$redis = new Redis();$redis->connect($redis_config['host']);$redis->del(PRODUCTION_);
$sql = "select * from production ORDER BY created_at";
$result = mysqli_query($con,$sql);
$artimages = [];while($row = mysqli_fetch_assoc($result)){
$redis->lPush(PRODUCTION_,json_encode($row));
}/*
*之所以不直接更新到商品列表是因为当商品列表数据量比较大的时候,脚本执行的时间长,
*在del PRODUCTION之后 lPush PRODUCTION之前 用户访问网站的时候会出现读取不到
*商品列表的情况。
*先存入临时列表,再最后rename为实际被查询的key
*/$redis->rename(PRODUCTION_,PRODUCTION);上诉脚本只是一个demo,实际应用时需要加锁,否则在脚本未执行完,又到了crontab下一次自动执行的时候,就会出错。
以下是crontab脚本:
* * * * * root /usr/local/php/bin/php /xxx/xxxx/xxx/production.php >/dev/null 2>&1 root 是执行脚本的用户 /usr/local/php/bin/php php脚本解释器,如果不写全路径的话会报错 >/dev/null 2>&1 忽略日志输出
相关推荐:
立即学习“PHP免费学习笔记(深入)”;
前台功能介绍:1、网页首页显示有高级会员推荐,精品推荐,商业机会分类列表,最新供求信息,网站动态,推荐企业,行业动态等;2、商业机会栏目功能有:二级分类,已经带有详细分类的数据库,后台可以更改增加操作,并可以推荐公司,栏目分为分类显示信息,最新的采购、供应、合作和代理信息,搜索时同样按分类,信息,时间,交易类型等搜索;3、展厅展品栏目功能:二级分类,已经带有详细分类的数据库,后台可以更改增加操作,










