Laravel-Listener-Work
2024-06-27 10:14:52 0 举报
Laravel-Listener-Work是一个用于处理事件的Laravel包,它允许你监听和响应应用程序中的事件。通过它,你可以轻松地为各种事件绑定监听器,从而实现对事件的处理和控制。Laravel-Listener-Work支持多种不同的事件分发模式,包括同步和异步分发。在生成事件时,你可以指定事件的数据,并在监听器中接收并进行处理。此外,它还提供了一些常用的工具函数,如触发事件、监听器注册等。这个包的设计初衷是为Laravel应用程序提供一个灵活、强大的事件处理机制,简化事件驱动的编程。
作者其他创作
大纲/内容
BeanstalkdJob (Illuminate\\Queue\\Jobs)
# $redis# $job
+ fire()+ delete()+ release($delay = 0)+ attempts()+ getContainer()+ getRedisQueue()+ getRedis Job()
出自: 王继超
Listener (Illuminate\\Queue)
# $commandPath# $environment# $sleep# $maxTries# $workerCommand# $outputHandler
Application (Illuminate\\Console)
#$laravel#$lastOutput
Dispatcher (Illuminate\\Contracts\\Bus)interface
WorkCommand (Illuminate\\Queue\\Console)
# $name = 'queue:work'# $description = 'Process the next job on a queue'# $worker ( Illuminate\\Queue\\Worker )
Job (Illuminate\\Contracts\\Queue)interface
+ fire()+ delete()+ release($delay = 0)+ attempts()+ getName()+ getQueue()
InteractsWithQueue (InteractsWithQueue)
# $job
+ delete()+ release($delay = 0)+ attempts()+ setJob(Illuminate\\Contracts\\Queue\\Job $job)
Queueable (Illuminate\\Bus)
+ $queue+$delay
+ onQueue($queue)+ delay($delay)
ListenCommand (Illuminate\\Queue\\Console)
# $name = 'queue:listen'# $description = 'Listen to a given queue'# $listener
+ fire()+__construct(Illuminate\\Queue\\Listener $listener)
Command (Illuminate\\Console)
- $application- $name- $processTitle- $code
Worker (Illuminate\\Queue)
# $manager# $events# $failer# $exceptions
Kernel (Illuminate\\Contracts\\Console)
Dispatcher (Illuminate\\Bus)
# $container# $pipeline# $pipes# $queueResolver# $mappings# $mapper
Job (Illuminate\\Queue\\Jobs)abstract
# $instance# $container# $queue# $deleted = false# $released = false
+ abstract fire()+ abstract attempts()+ abstract getRawBody()+ delete()+ isDeleted()+ isReleased+ isDeletedOrReleased()+ release()+ failed()# resolve($class)# parseJob($job)# resolveAndFire(array $payload) [解析出json中的数据 parsejob 后 执行Illuminate\\\\Queue\\\\CallQueuedHandler@call]
RedisJob (Illuminate\\Queue\\Jobs)
Application (Symfony\\Component\\Console)
-$commands-$runningCommand
Command (Symfony\\Component\\Console\\Command)
#$laravel#$input#$output#$name#$signature
SendReminderEmail (App\\Jobs) [自定义的Job类]
+ handle()+ failed()
序号
runTime segment(所处的运行模块)
类 名(括号里面代表所处的命名空间)
说 明
20
具体任务执行模块
SendReminderEmail (App\\Jobs)
自定义任务类
21
Job (App\\Jobs)
应用层任务类的顶级父类
22
使任务拥有队列属性
23
使任务拥有操作自身的能力
类所处模块
1
命令行初始化模块
内核接口
2
Kernel (Illuminate\\Foundation\\Console)
框架核心基础类
3
Kernel (App\\Console)
命令行应用核心类
4
框架内建命令行组建类
5
命令行应用类
6
消费队列命令运行模块
Base class for all commands
7
8
Listen方式的命令行
9
Work方式的命令行
10
进程处理工具
Process (Symfony\\Component\\Process)
Symfony封装的进程处理类,自带超时检测
11
监听者
12
工作者
13
任务的存储与操作
RedisJob的操作
14
BeanstalkJob的操作
15
Job (Illuminate\\Queue\\Jobs)
队列任务公共实现类
16
Job (Illuminate\\Contracts\\Queue)
队列任务接口
17
唤起执行任务的模块
CallQueuedHandler (Illuminate\\Queue)
访问队列中具体自定义任务的执行器
18
出发自定义任务执行的具体调度器
19
调度器接口
+ run($callback = null)+ start($callback = null)+ wait($callback = null)+checkTimeout()
+$commands
+schedule(Schedule $schedule)
+$app+$events+$artisan :Illuminate\\Console\\Application+$commands
类说明:
# $dispatcher
0 条评论
下一页