创建将数据从 api 同步到数据库的作业的最佳方法
best method to create a job that will sync data from an api to the database
我正在处理亚马逊 mws api 及其超级痛苦。我想创建一个 cron,它稍后会出去并从 api 中获取大量数据并将其存储在本地数据库中。执行此操作的最佳方法是什么,因为它将处理大量数据,不确定我是否需要创建工作、任务或诸如此类的东西而不会崩溃或超时。我正在使用 laravel 5.3
我认为解决此问题的最佳方法是 creating jobs。在大多数情况下,这很好地解决了 PHP 的内存限制,因为 CLI 限制通常高于限制对于 HTTP 请求。
如果您不想 timeout
您的工作人员,那么您可以按以下方式收听您的队列:
php artisan queue:work --timeout=0
现在的问题是如何使用 cron 调度作业 dispatch(new SomeProcess());
。
所以答案是使用 Laravel 的 Task Scheduling 作为:
$schedule->call(function () {
dispatch(new SomeProcess());
})->daily();
我正在处理亚马逊 mws api 及其超级痛苦。我想创建一个 cron,它稍后会出去并从 api 中获取大量数据并将其存储在本地数据库中。执行此操作的最佳方法是什么,因为它将处理大量数据,不确定我是否需要创建工作、任务或诸如此类的东西而不会崩溃或超时。我正在使用 laravel 5.3
我认为解决此问题的最佳方法是 creating jobs。在大多数情况下,这很好地解决了 PHP 的内存限制,因为 CLI 限制通常高于限制对于 HTTP 请求。
如果您不想 timeout
您的工作人员,那么您可以按以下方式收听您的队列:
php artisan queue:work --timeout=0
现在的问题是如何使用 cron 调度作业 dispatch(new SomeProcess());
。
所以答案是使用 Laravel 的 Task Scheduling 作为:
$schedule->call(function () {
dispatch(new SomeProcess());
})->daily();