MqttProcess.php 1.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960
  1. <?php
  2. declare(strict_types=1);
  3. namespace App\Process;
  4. use App\Utils\LogUtil;
  5. use Hyperf\Process\AbstractProcess;
  6. use Hyperf\Process\Annotation\Process;
  7. #[Process(name: "mqtt_process", redirectStdinStdout: false, pipeType: 2, enableCoroutine: true)]
  8. class MqttProcess extends AbstractProcess
  9. {
  10. // 日志模块名称
  11. const LOG_MODULE = 'MqttProcess';
  12. const LOG_FUNCTION = 'handle';
  13. /**
  14. * 进程数量
  15. */
  16. public int $nums = 1;
  17. /**
  18. * 进程名称
  19. */
  20. public string $name = 'mqtt_process';
  21. /**
  22. * 重定向自定义进程的标准输入和输出
  23. */
  24. public bool $redirectStdinStdout = false;
  25. /**
  26. * 管道类型
  27. */
  28. public int $pipeType = 2;
  29. /**
  30. * 是否启用协程
  31. */
  32. public bool $enableCoroutine = true;
  33. /**
  34. * 监听订阅
  35. *
  36. * @return void
  37. */
  38. public function handle(): void
  39. {
  40. // 日志统一写入
  41. LogUtil::getInstance("Mqtt/");//设置日志存入通道
  42. // 业务代码
  43. }
  44. public function isEnable($server): bool
  45. {
  46. // 跟随服务启动一同启动
  47. return false;
  48. }
  49. }