GatherExampleJob.php 893 B

123456789101112131415161718192021222324252627282930313233343536373839
  1. <?php
  2. declare(strict_types=1);
  3. namespace App\Job;
  4. use Hyperf\AsyncQueue\Job;
  5. use App\Controller\CollectorController;
  6. /**
  7. * @Job(name="import")
  8. */
  9. class GatherExampleJob extends Job
  10. {
  11. public $params;
  12. /**
  13. * 任务执行失败后的重试次数,即最大执行次数为 $maxAttempts+1 次
  14. */
  15. protected int $maxAttempts = 10;
  16. public function __construct($params)
  17. {
  18. // 这里最好是普通数据,不要使用携带 IO 的对象,比如 PDO 对象
  19. $this->params = $params;
  20. }
  21. public function handle()
  22. {
  23. try {
  24. var_dump("消费者");
  25. $collector = new CollectorController();
  26. $result = $collector->goSendCrawler($this->params);
  27. var_dump("消费消息队列:",$this->params,$result);
  28. }catch (\Exception $e){
  29. var_dump($e->getMessage());
  30. }
  31. }
  32. }