在同一个laravel应用中运行2个作业无法正常工作

问题描述

我正在项目中工作,已经有一份创建订单的工作。

// dispatch CreateTemplateOrders job
CreateTemplateOrders::dispatch($orderTemplate,Jwt::getUser()->name)->onQueue('corporate_order_generator');

我需要添加一个作业以导出excel。

// dispatch Export corporate orders job
ExportCorporateOrdersJob::dispatch($data,$currentUser->corporate->id)->onQueue('corporate_order_export_excel');

该应用程序已经生产一年以上,使用kubernetes头盔进行排队工作 作业正在运行的队列

apiVersion: apps/v1
kind: Deployment
Metadata:
  name: {{ template "app.fullname" . }}-worker
  labels:
    app: {{ template "app.name" . }}-worker
    chart: {{ template "app.chart" . }}
    release: {{ .Release.Name }}
    heritage: {{ .Release.Service }}
spec:
  replicas: {{ .Values.replicaCount }}
  selector:
    matchLabels:
      app: {{ template "app.name" . }}-worker
      release: {{ .Release.Name }}
  template:
    Metadata:
      labels:
        app: {{ template "app.name" . }}-worker
        release: {{ .Release.Name }}
    spec:
      securityContext:
        fsGroup: 82
        runAsUser: 0
      containers:
        - name: {{ .Chart.Name }}-worker
          image: "{{ .Values.app.image.repository }}:{{ .Values.app.image.tag }}"
          imagePullPolicy: {{ .Values.app.image.pullPolicy }}
          env:
{{ toYaml .Values.app.env | indent 12 }}
          command: ["/bin/sh","-c","cd /home/web/www && PHP artisan queue:work --queue=high,corporate_order_generator,corporate_order_export_excel,default"]
          ports:
            - containerPort: 9000
          volumeMounts:
            - name: app-secrets
              mountPath: /etc/secrets
              readOnly: true
          resources:
  {{ toYaml .Values.app.resources | indent 12 }}
      volumes:
        - name: app-secrets
          secret:
            secretName: app-secrets
      imagePullSecrets:
        - name: regcred

添加corporate_order_export_excel以便使用ci / cd进行队列和部署,但是它不起作用。 corporate_order_generator将工作排队,但导出无法工作。 我正在使用gitlab ci / cd进行部署。 我正在使用数据库作为队列驱动程序。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)