使用 Laravel 服务容器的优势

本文探讨了Laravel消息队列的优化方案,通过服务容器改进sendMessage类的实例化过程,减少代码耦合并提高效率。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

背景

最近在看项目中前辈的代码,发现使用队列发送消息的时候,从一开始整合发送消息需要数据的时候,就一直携带者实例化好的sendMessage类,项目中又将推送资料和推送会议分成了两个队列,所以在好些个方法中都有这个sendMessage对象;而且sendMessage实例化时,又依赖其他的类; 所以这个就让我想起来了laravel的核心 Provider

了解laravel的工作原理

详细请看文档

所以laravel服务容器就像一个高度自动化的工厂,你需要的东西,定制好模型,使用特定接口来制造就可以了;而且它可以在实例化的时候解决你需要的一些依赖的类的问题;

原发送消息执行流程
  • 实际发送逻辑汇总
SendMessage.php

class SendMessage{
   
   
   protected $mailService;  // 发送邮件的服务
   public function __construct(SendMailService $mailService)
    {
   
   
        $this->mailService = $mailService;
    }

   public function send(array $data, $sender = null, $receiver = null, $module = null, $from = null, $push_url = null, $is_type =
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值