Docs 菜单
Docs 主页
/ / /
Laravel MongoDB

队列

要使用 MongoDB 作为 Laravel 队列的数据库,请更改应用程序的 config/queue.php文件中的驱动程序:

'connections' => [
'database' => [
'driver' => 'mongodb',
// You can also specify your jobs-specific database
// in the config/database.php file
'connection' => 'mongodb',
'collection' => 'jobs',
'queue' => 'default',
// Optional setting
// 'retry_after' => 60,
],
],

下表描述了可以指定用于配置队列行为的属性:

设置
说明
driver
必需要使用的队列驱动程序。此属性的值必须是mongodb
connection
用于存储作业的数据库连接。它必须是mongodb连接。如果未指定连接,则驱动程序将使用默认连接。
collection
必需用于存储要处理的作业的 MongoDB 集合的名称。
queue
必填队列名称。
retry_after
指定在重试正在处理的作业之前队列连接应等待的秒数。默认值为60

要使用 MongoDB 处理失败的作业,请在应用程序的config/queue.php文件中创建failed条目并指定数据库和集合:

'failed' => [
'driver' => 'mongodb',
'database' => 'mongodb',
'collection' => 'failed_jobs',
],

下表描述了可以指定用于配置如何处理失败作业的属性:

设置
说明
driver
必需要使用的队列驱动程序。此属性的值必须是mongodb
connection
用于存储作业的数据库连接。它必须是mongodb连接。如果未指定连接,则驱动程序将使用默认连接。
collection
用于存储失败作业的 MongoDB 集合的名称。默认值为failed_jobs

然后,在应用程序的config/app.php文件中添加服务提供程序:

MongoDB\Laravel\MongoDBQueueServiceProvider::class,

作业批处理 是 Laravel 的一项功能,可让您在执行队列中的作业之前、之后和期间执行一批作业以及相关动作。要了解有关此功能的详情,请参阅 作业批处理 在 Laravel 文档中。

在 MongoDB 中,您不必在使用作业批处理之前创建指定的集合。 job_batches集合会自动创建,用于存储有关作业批处理的元数据,例如作业的完成百分比。

要启用作业批处理,请在应用程序的config/queue.php文件中创建batching条目:

'batching' => [
'driver' => 'mongodb',
'database' => 'mongodb',
'collection' => 'job_batches',
],

下表描述了可以指定用于配置作业批处理的属性:

设置
说明
driver
必需要使用的队列驱动程序。此属性的值必须是mongodb
connection
用于存储作业的数据库连接。它必须是mongodb连接。如果未指定连接,则驱动程序将使用默认连接。
collection
用于存储作业批处理的 MongoDB 集合的名称。默认值为job_batches

然后,在应用程序的config/app.php文件中添加服务提供程序:

MongoDB\Laravel\MongoDBBusServiceProvider::class,

后退

缓存和锁

来年

事务