首页 >后端开发 >php教程 >Ironmq和Laravel:设置

Ironmq和Laravel:设置

Jennifer Aniston
Jennifer Aniston原创
2025-02-21 08:43:08751浏览

IronMQ and Laravel: Setup

>这两个由laravel的推送队列用于背景任务的两部分教程指南初学者,由照片上传和调整示例说明。 调整图像大小是耗时的;这种方法通过卸载任务可以防止用户延迟。我们还将利用Ngrok启用本地队列测试。

>

完整的源代码可在GitHub上找到。 或者,部署到实时服务器进行测试。

键概念

  • >本教程演示了使用laravel设置Ironmq,以通过推动队列处理背景过程(例如图像调整大小)。 最终应用程序包括一个简单的照片上传和调整大小。
  • >设置涉及安装Laravel,其依赖关系,创建一个Iron.io帐户,并使用Ngrok将您的本地开发环境公开到Internet上,从而在本地测试期间启用IronMQ队列相互作用。
  • >
  • IronMQ简化了队列管理。 创建推动队列需要指定订户URL,这是IronMQ可在作业可用时会调用的URL。
  • >教程涵盖了Laravel内的IronMQ配置,包括队列和用户创建以及IronMQ和干预图像库的安装。 第二部分将详细说明应用程序开发和工作逻辑实施。

>排队和Ironmq

>队列是工作管道。作业按添加的顺序进行顺序处理。 与拉动队列不同的是,推送队列在准备好时会主动通知订户,从而消除了不断进行轮询的需求。 IronMQ是一项促进此基于推动的排队系统的服务。创建推动队列时,您可以定义订户URL; IronMQ当作业可用时将作业数据发送到此URL。

>

>更深入地研究各种解决方案的工作队列和比较,请参阅[本文](link_to_to_article_here-替换为实际链接,如果可用)。

>设置和安装

本节详细详细介绍了安装Laravel,其依赖项,创建Iron.io帐户和配置Ngrok。

laravel

>安装作曲家。
  1. 安装Laravel:
  2. 导航到
  3. >目录并运行

    。 访问您的Laravel安装,以composer create-project laravel/laravel --prefer-dist>。laravel> php artisan serve http://localhost:8000

    数据库设置:使用MySQL。使用数据库凭据创建数据库并更新
  4. 。运行
  5. app/config/database.php php artisan migrate:install

    修改
  6. (或等效)以显示确认您的设置的消息。
  7. app/views/welcome.blade.php

    安装IronMQ和干预图像库:将它们添加到您的
  8. 文件中:
  9. <code class="language-json">"require": {
        "laravel/framework": "^9.0",  // or your Laravel version
        "iron-io/iron_mq": "^1.4",
        "intervention/image": "^2.7"
    },</code>

    >运行composer update。 然后,通过在“干预图像文档中记录”中添加服务提供商和别名来配置干预映像包。config/app.php

ngrok

>用于使用IronMQ进行本地测试,请使用NGrok将您的本地服务器展示到Internet。

>下载并安装ngrok。
  1. 运行
  2. (如果您的Laravel服务器使用其他端口,则适当的端口)。 注意转发网址(例如,
  3. )。该URL将充当您的订户URL。 ./ngrok 8000 http://your-ngrok-url.ngrok.io
  4. Ironmq

创建一个Iron.io帐户和项目。
  1. 从Iron.io仪表板获取您的项目ID和令牌。

  2. 中配置您的laravel队列设置:

    >
  3. >添加

    config/queue.php到您的

    > file。
    <code class="language-php">'iron' => [
        'driver' => 'iron',
        'project' => env('IRON_PROJECT_ID'),
        'token' => env('IRON_TOKEN'),
        'queue' => 'laravel',
    ],</code>

    IRON_PROJECT_ID>使用工匠命令创建推动队列订户:> IRON_TOKEN .env>用ngrok转发URL替换

  4. >将以下路线添加到
    <code class="language-bash">php artisan queue:subscribe laravel http://your-ngrok-url.ngrok.io/queue/receive</code>

    http://your-ngrok-url.ngrok.io

  5. 结论(第1部分)routes/web.php

    <code class="language-php">Route::post('queue/receive', function () {
        return Queue::marshal();
    });</code>
    >该部分涵盖了必要组件的设置和安装。第二部分将着重于构建应用程序并实施图像调整大小的作业。
  6. >

>常见问题(FAQS)>(此部分在很大程度上保持不变,因为信息仍然相关。)

(现有的FAQ部分编写良好且准确;不需要更改。

以上是Ironmq和Laravel:设置的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn