关于 laravel 任务调度的问题
使用 laravel 的任务调度做的定时任务,其中 Commands 中的文件像如下的代码一样, 包含很多调用执行其他文件中的方法。比如:
use App\Ctask\Cgetorders;
class Get_orders {
$cg = new Cgetorders();
$cg->get_wooc_orders('site0');
$cg->get_wooc_orders('site1');
$cg->get_wooc_orders('site2');
$cg->get_wooc_orders('site3');
$cg->get_shopify_orders('site4');
$cg->get_shopify_orders('site5');
$cg->get_shopify_orders('site6');
$cg->get_shopify_orders('site7');
}
不同的 API 接口、不同的站点 如果按照 API 来分组两个,每次调用就需要变换加载不同的站点配置。 我是想后面改成从数据库读取配置,接着来运行操作,而不是这样硬编码。 再者就像上边这样按照站点分组,站点配置是顺流程的,觉得会浪费资源, 当调用的站点数据更多的时候应该还会出现其他的情况。
不知道有没有其他的方法优化这个结构,使其读取配置,同时运行任务多的情况下也能顺利进行。 麻烦各位指点下。谢谢
1 Comment
嗯 数据库读取是一种思路 这样就可以让配置变得动态 且与运行时代码分离
没有最好的设计 只有适合业务的设计 你先按照自己的思路来做 再根据业务流程优化 第一步先消除硬编码 然后引入一些设计模式让代码变得优雅一些 其实就可以了 也没必要过度设计