sqwiggl/azure-queue-laravel

Microsoft Azure Storage Queue 的 Laravel 队列驱动程序

v11.0.0 2024-03-30 08:13 UTC

README

CircleCI Coverage Status

Latest Stable Version Total Downloads

PHP Laravel 队列驱动程序包,支持 Microsoft Azure 存储队列

先决条件

  • Laravel 5.2 - 8.x(未在旧版本上进行测试)
  • PHP 5.6+ 用于 Laravel 5.2+
  • PHP 7+ 用于 Laravel 5.5+
  • PHP 7.1+ 用于 Laravel 5.6+
  • PHP 7.2+ 用于 Laravel 6+
  • PHP 7.3+ 用于 Laravel 8+
  • PHP 8.0+ 用于 Laravel 9+
  • PHP 8.1+ 用于 Laravel 10+
  • PHP 8.1+ 用于 Laravel 11+
  • Microsoft Azure 存储帐户和存储帐户密钥
  • 通过 Azure Portal 或通过 Azure CLIPowerShell 创建的队列容器

安装

使用 composer 安装

您可以在 Packagist 上找到此库。

在您的 composer.json 文件中要求此包。版本号将遵循 Laravel。

Laravel 11.x

"squigg/azure-queue-laravel": "^11.0"
composer require squigg/azure-queue-laravel:^11.0

Laravel 10.x

"squigg/azure-queue-laravel": "^10.0"
composer require squigg/azure-queue-laravel:^10.0

Laravel 9.x

"squigg/azure-queue-laravel": "^9.0"
composer require squigg/azure-queue-laravel:^9.0

Laravel 8.x

"squigg/azure-queue-laravel": "^8.0"
composer require squigg/azure-queue-laravel:^8.0

Laravel 7.x

"squigg/azure-queue-laravel": "^7.0"
composer require squigg/azure-queue-laravel:^7.0

Laravel 6.x

"squigg/azure-queue-laravel": "^6.0"
composer require squigg/azure-queue-laravel:^6.0

Laravel 5.8.x

"squigg/azure-queue-laravel": "5.8.*"
composer require squigg/azure-queue-laravel:5.8.*

Laravel 5.7.x

"squigg/azure-queue-laravel": "5.7.*"
composer require squigg/azure-queue-laravel:5.7.*

Laravel 5.6.x

"squigg/azure-queue-laravel": "5.6.*"
composer require squigg/azure-queue-laravel:5.6.*

Laravel 5.5.x

"squigg/azure-queue-laravel": "5.5.*"
composer require squigg/azure-queue-laravel:5.5.*

Laravel 5.4.x

"squigg/azure-queue-laravel": "5.4.*"
composer require squigg/azure-queue-laravel:5.4.*

Laravel 5.3.x

"squigg/azure-queue-laravel": "5.3.*"
composer require squigg/azure-queue-laravel:5.3.*

Laravel 5.2.x

"squigg/azure-queue-laravel": "5.2.*"
composer require squigg/azure-queue-laravel:5.2.* 
仅适用于 5.3 及更早版本

在您的 composer.json 文件中添加以下 pear 存储库,这是必需的 Microsoft Azure SDK(v5.4+ 使用 microsoft/azure-storage 包,v5.6+ 使用 microsoft/azure-storage-queue

"repositories": [
    {
        "type": "pear",
        "url": "http://pear.php.net"
    }
],

更新 Composer 依赖项

composer update

配置

添加提供者

如果您不使用 Laravel 自动包发现,请在 config/app.php 文件中将 ServiceProvider 添加到您的 providers 数组中

'Squigg\AzureQueueLaravel\AzureQueueServiceProvider',

对于 Lumen(5.x),您需要将提供者添加到 bootstrap/app.php

    $app->register(Squigg\AzureQueueLaravel\AzureQueueServiceProvider::class);

添加 Azure 队列配置

将以下内容添加到 config/queue.php 文件中的 connections 数组中,并填写从 Azure 管理门户获取的自己的连接数据

'azure' => [
    'driver'        => 'azure',                             // Leave this as-is
    'protocol'      => 'https',                             // https or http
    'accountname'   => env('AZURE_QUEUE_STORAGE_NAME'),     // Azure storage account name
    'key'           => env('AZURE_QUEUE_KEY'),              // Access key for storage account
    'queue'         => env('AZURE_QUEUE_NAME'),             // Queue container name
    'timeout'       => 60,                                  // Seconds before a job is released back to the queue
    'endpoint'      => env('AZURE_QUEUE_ENDPOINTSUFFIX'),   // Optional endpoint suffix if different from core.windows.net
    'queue_endpoint'=> env('AZURE_QUEUE_ENDPOINT'),         // Optional endpoint for custom addresses like https:///my_storage_name
],

将环境变量添加到您的 .env 文件中,以设置上述配置参数

AZURE_QUEUE_STORAGE_NAME=xxx
AZURE_QUEUE_KEY=xxx
AZURE_QUEUE_NAME=xxx
AZURE_QUEUE_ENDPOINTSUFFIX=xxx
AZURE_QUEUE_ENDPOINT=xxx

设置默认 Laravel 队列

通过在您的 .env 文件中将 QUEUE_CONNECTION 值设置为 azure 来更新 Laravel 使用的默认队列。

QUEUE_CONNECTION=azure

此设置是 Laravel 旧版本中的 QUEUE_DRIVER

用法

根据 文档 中的说明使用正常的 Laravel 队列功能。

请记住,通过将 QUEUE_DRIVER 值在您的 .env 文件中设置为 azure 来更新默认队列。

变更日志

2023-03-30 - V11.0 - 支持 Laravel 11.x

2023-03-17 - V10.0 - 支持 Laravel 10.x

2022-03-17 - V9.0 - 支持 Laravel 9.x

2021-10-16 - V8.1 - 支持 PHP 8

2020-09-19 - V8.0 - 支持 Laravel 8.x(仅 composer 依赖项和测试重构)

2020-06-04 - V7.0 - 支持 Laravel 7.x(仅 composer 依赖项和测试重构)

2020-06-04 - V6.0 - 支持 Laravel 6.x(仅 composer 依赖项更改)

2019-07-13 - V5.8 - 支持 Laravel 5.8(仅 composer 依赖项和测试更改)

2019-07-13 - V5.7.1 - 修复调用基本 Laravel 队列方法时的无效签名

2018-09-04 - V5.7 - 支持 Laravel 5.7(仅 composer 依赖项更改)

2018-02-07 - V5.6 - 切换到 Microsoft Azure Storage PHP API 的 GA 版本。支持 Laravel 5.6(仅 composer.json 修改)。更新开发依赖到最新版本。

2017-09-11 - V5.5 - 仅支持 Laravel 5.5 和 PHP7+。更新 Azure Storage API 到 0.18

2017-09-11 - V5.4 - 更新 Azure Storage API 到 0.15(无重大变更)

许可证

根据 MIT 许可证发布。基于 Alex Bouma 的 Laravel 4 软件包,更新为 Laravel 5。