如题。
我的系统是CentOS7.2,64位,阿里云。
我度娘的是用linux定时任务+redis。
1、php用在apache上访问mysql,和用在crontab上,用在php cli上访问mysql是否一致?我之前代码是PDO的,config如下:
class Config {
public static $db_type = 'mysql'; //mysql, sqlite, oracle, sqlserver, pgsql, firebird, mongo
public static $db_host = 'localhost';
public static $db_port = 3306;
public static $db_charset = 'utf8';
public static $db_database = 'wxshaker';
public static $db_username = 'wxshaker';
public static $db_password = 'abc123';
}
不知道crontab能使用PDO吗?访问mysql也是localhost吗?
2、关于订单处理逻辑。我现在是有一个订单表,里面有状态、以及时间字段。
定时任务是直接操作这个订单表?例如:查看状态是否为已发货,并且时间已经过了,则自动收货。
还是不直接操作这个表(因为订单已经够忙了,下单、发货、退货等,都要搞这个表,定时任务再来插一腿?)还是建一个view或者另外建一个表。状态改变时,这个view或者表上同步要自动收货的订单。
3、网上讲到redis生产者、消费者,不太懂。
4、php响应时间默认好像是30秒?这个我不想改,30秒已经够了。
但是在crontab中,如果要处理很多订单时,30秒会不会短?我想的是这一个php脚本,不限时间,其他的按默认的30秒。
大家给出个主意,怎么将这功能弄得高效、强壮?