Administra las colas y las tareas

Puedes administrar las colas y las tareas de las siguientes maneras:

  • En la consola de Google Cloud
  • Con Google Cloud CLI en tu terminal o Cloud Shell
  • Envía una solicitud a la API de Cloud Tasks

Borra una tarea de una cola

Puedes borrar una tarea si está programada o enviada. Por ejemplo, es posible que debas borrar una tarea que no se puede completar correctamente, sin importar cuántas veces se vuelva a intentar. No puedes borrar una tarea si se completó correctamente o si se agotaron los reintentos después de fallar de forma constante. Una tarea se borra automáticamente si se alcanza el límite de retención máxima de tareas.

Console

  1. En la consola de Google Cloud , ve a la página Cloud Tasks > Colas.

    Ir a Queues

  2. Haz clic en el nombre de la cola de la tarea que deseas borrar.

  3. Selecciona la casilla de verificación de la tarea que deseas borrar.

  4. Haz clic en Borrar tarea.

  5. En el mensaje, haz clic en Borrar.

gcloud

Borra una tarea con el comando gcloud tasks delete:

gcloud tasks delete TASK_NAME \
    --queue=QUEUE_ID \
    --location=LOCATION

Reemplaza lo siguiente:

  • TASK_NAME: El nombre de la tarea que deseas borrar
  • QUEUE_ID: Es el nombre de la fila a la que pertenece la tarea.
  • LOCATION: la región en la que se implementa la fila, por ejemplo, us-central1

REST

Para borrar una tarea, usa el método projects.locations.queues.tasks.delete.

Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:

  • QUEUE_ID: Es el nombre de la fila a la que pertenece la tarea.
  • TASK_NAME: Es el nombre de la tarea que deseas borrar.
  • PROJECT_ID: ID del proyecto proyecto Google Cloud
  • LOCATION: La región en la que existe la fila, por ejemplo, us-central1

El cuerpo de la solicitud debe estar vacío.

Para enviar tu solicitud, expande una de estas opciones:

Si se ejecuta correctamente, el cuerpo de la respuesta está vacío.

Borra un lote de tareas de una cola

Puedes borrar un lote de tareas de una cola con el método projects.locations.queues.tasks.batchDelete para borrar una lista de nombres de tareas.

Ten en cuenta lo siguiente:

  • Todas las tareas se deben borrar de la misma cola.

  • Existe un límite para la cantidad de tareas que se pueden borrar en un solo lote. Para obtener más información, consulta Cuotas y límites.

  • Las solicitudes por lotes, que agregan operaciones individuales en una sola solicitud, no son atómicas porque es posible que algunas de las operaciones incluidas en el lote fallen mientras que otras se completen correctamente.

  • Solo puedes borrar una tarea si está programada o enviada. No puedes borrar una tarea si se completó correctamente o si se agotaron los reintentos después de fallar de forma constante. Una tarea se borra automáticamente si se alcanza el límite de retención máxima de tareas.

  • También puedes crear un lote de tareas. Para obtener más información, consulta Cómo crear un lote de tareas.

Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:

  • TASK_NAME: Es el nombre de las tareas que se borrarán con el siguiente formato: projects/PROJECT_ID/locations/REGION/queues/QUEUE_ID/tasks/TASK_ID
  • PROJECT_ID: ID del proyecto proyecto Google Cloud
  • REGION: La región en la que existe la fila, por ejemplo, us-central1
  • QUEUE_ID: Es el nombre de la fila a la que pertenecen las tareas.

El cuerpo de la solicitud contiene una lista de nombres de tareas.

Cuerpo JSON de la solicitud:

{
  "names": [
    "TASK_NAME"
  ]
}

Para enviar tu solicitud, expande una de estas opciones:

Si se ejecuta correctamente, el cuerpo de la respuesta contiene una instancia de Operation.

{
  "name": "projects/PROJECT_ID/locations/REGION/operations/OPERATION_ID",
  "metadata": {
    "@type": "type.googleapis.com/google.cloud.tasks.v2beta3.BatchDeleteTasksMetadata"
  },
  "done": false
}

Borra definitivamente todas las tareas de una cola

Puedes borrar todas las tareas de una cola si las borras definitivamente. Todas las tareas creadas antes de la llamada de purga se borran definitivamente. Sin embargo, las operaciones de borrado definitivo pueden tardar hasta un minuto en aplicarse, y es posible que las tareas se envíen antes de que se aplique el borrado definitivo.

Console

  1. En la consola de Google Cloud , ve a la página Cloud Tasks > Colas.

    Ir a Queues

  2. Haz clic en el nombre de la cola de las tareas que deseas borrar.

  3. Haz clic en Borrar definitivamente la fila.

  4. En el mensaje, haz clic en Borrar definitivamente.

gcloud

Borra una cola con el comando gcloud tasks queues purge:

gcloud tasks queues purge QUEUE_ID \
    --location=LOCATION

Reemplaza lo siguiente:

  • QUEUE_ID: Es el nombre de la cola que deseas purgar.
  • LOCATION: la región en la que se implementa la fila, por ejemplo, us-central1

REST

Para purgar una cola, usa el método projects.locations.queues.purge.

Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:

  • QUEUE_ID: Es el nombre de la cola que deseas borrar.
  • PROJECT_ID: ID del proyecto proyecto Google Cloud
  • LOCATION: la región en la que se implementa la fila, por ejemplo, us-central1

El cuerpo de la solicitud debe estar vacío.

Para enviar tu solicitud, expande una de estas opciones:

Si se ejecuta de forma correcta, el cuerpo de la respuesta contiene una instancia de Queue:

{
  "name": "projects/PROJECT_ID/locations/LOCATION/queues/QUEUE_ID",
  "rateLimits": {
    "maxDispatchesPerSecond": 500,
    "maxBurstSize": 100,
    "maxConcurrentDispatches": 1000
  },
  "retryConfig": {
    "maxAttempts": 100,
    "minBackoff": "0.100s",
    "maxBackoff": "3600s",
    "maxDoublings": 16
  },
  "state": "RUNNING",
  "purgeTime": "2025-03-28T13:06:30.110255Z"
}

Cómo pausar o reanudar las filas

Puedes pausar o reanudar una fila. Pausar una cola significa que se detiene la ejecución y la entrega de tareas. Aún puedes crear tareas y agregarlas a la cola, pero no se procesarán. Una vez que se reanuda la cola, las tareas pendientes se procesan en el orden en que se agregaron a la lista de tareas pendientes.

Console

  1. En la consola de Google Cloud , ve a la página Cloud Tasks > Colas.

    Ir a Queues

  2. Selecciona la casilla de verificación de la fila que deseas pausar.

  3. Haz clic en Pausar la fila.

  4. En el mensaje, haz clic en Pausar.

  5. Para reanudar la cola, haz clic en Reanudar la cola.

gcloud

  1. Pausa una cola con el comando gcloud tasks queues pause:

    gcloud tasks queues pause QUEUE_ID \
        --location=LOCATION

    Reemplaza lo siguiente:

    • QUEUE_ID: El nombre de la fila que deseas pausar
    • LOCATION: la región en la que se implementa la fila, por ejemplo, us-central1
  2. Reanuda una cola con el comando gcloud tasks queues resume:

    gcloud tasks queues resume QUEUE_ID \
        --location=LOCATION

REST

  1. Para pausar una fila, usa el método projects.locations.queues.pause.

    Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:

    • QUEUE_ID: El nombre de la fila que deseas pausar
    • PROJECT_ID: ID del proyecto proyecto Google Cloud
    • LOCATION: la región en la que se implementa la fila, por ejemplo, us-central1

    El cuerpo de la solicitud debe estar vacío.

    Para enviar tu solicitud, expande una de estas opciones:

    Si se ejecuta de forma correcta, el cuerpo de la respuesta contiene una instancia de Queue:

    {
      "name": "projects/PROJECT_ID/locations/LOCATION/queues/QUEUE_ID",
      "rateLimits": {
        "maxDispatchesPerSecond": 500,
        "maxBurstSize": 100,
        "maxConcurrentDispatches": 1000
      },
      "retryConfig": {
        "maxAttempts": 100,
        "minBackoff": "0.100s",
        "maxBackoff": "3600s",
        "maxDoublings": 16
      },
      "state": "PAUSED"
    }
    

  2. Para reanudar una cola, usa el método projects.locations.queues.resume.

    Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:

    • QUEUE_ID: Es el nombre de la fila que deseas reanudar.
    • PROJECT_ID: ID del proyecto proyecto Google Cloud
    • LOCATION: la región en la que se implementa la fila, por ejemplo, us-central1

    El cuerpo de la solicitud debe estar vacío.

    Para enviar tu solicitud, expande una de estas opciones:

    Si se ejecuta de forma correcta, el cuerpo de la respuesta contiene una instancia de Queue:

    {
      "name": "projects/PROJECT_ID/locations/LOCATION/queues/QUEUE_ID",
      "rateLimits": {
        "maxDispatchesPerSecond": 500,
        "maxBurstSize": 100,
        "maxConcurrentDispatches": 1000
      },
      "retryConfig": {
        "maxAttempts": 100,
        "minBackoff": "0.100s",
        "maxBackoff": "3600s",
        "maxDoublings": 16
      },
      "state": "RUNNING"
    }
    

Enumerar filas

Puedes enumerar las colas. Cuando se enumeran las colas, se muestran algunos detalles sobre el límite de frecuencia y el parámetro de reintento. Ten en cuenta que los siguientes campos son equivalentes:

  • Tasa máx. (consola), MAX_RATE (gcloud), maxDispatchesPerSecond (REST)
  • Max concurrent (Consola), MAX_NUM_OF_TASKS (gcloud), maxConcurrentDispatches (REST)

Console

  1. En la consola de Google Cloud , ve a la página Cloud Tasks > Colas.

    Ir a Queues

    Se enumeran todas las colas de tu proyecto Google Cloud .

  2. Para obtener más detalles, haz clic en el nombre de una cola y, luego, en la pestaña Configuración.

    Se muestran los detalles del límite de frecuencia y los parámetros de reintento.

gcloud

Enumera las colas con el comando gcloud tasks queues list:

gcloud tasks queues list \
    --location=LOCATION

Reemplaza LOCATION por la región en la que se implementa la cola, por ejemplo, us-central1. Si no se especifica una ubicación, se usa la ubicación de la app de App Engine de tu proyecto Google Cloud si existe; de lo contrario, debes especificar una ubicación.

El resultado debería ser similar al siguiente ejemplo:

QUEUE_NAME: my-queue
STATE: PAUSED
MAX_NUM_OF_TASKS: 1000
MAX_RATE (/sec): 500.0
MAX_ATTEMPTS: 100
...

REST

Para enumerar las colas, usa el método projects.locations.queues.list.

Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:

  • PROJECT_ID: ID del proyecto de Google Cloud.
  • LOCATION: la región en la que se crean las colas, por ejemplo, us-central1.

Para enviar tu solicitud, expande una de estas opciones:

Si se ejecuta de forma correcta, el cuerpo de la respuesta contiene instancias de recursos de Queue y la respuesta debe ser similar a la siguiente:

{
  "queues": [
    {
      "name": "projects/PROJECT_ID/locations/LOCATION/queues/QUEUE_ID",
      "rateLimits": {
        "maxDispatchesPerSecond": 500,
        "maxBurstSize": 100,
        "maxConcurrentDispatches": 1000
      },
      "retryConfig": {
        "maxAttempts": 100,
        "minBackoff": "0.100s",
        "maxBackoff": "3600s",
        "maxDoublings": 16
      },
      "state": "PAUSED",
      "purgeTime": "2025-03-28T13:37:32.292552Z"
    },
    ...
  ],
  "nextPageToken": "CjQKCHppcHBlcjIAEgwI9-GExAYQ_oDc1AMaGioLeWlrZXMtYWdhaW4yC3VzLWNlbnRyYWwx"
}

Borra colas

Puedes borrar una fila. También se borran las tareas de la cola. Si borras una cola, debes esperar 3 días antes de volver a crearla con el mismo nombre. Este período de espera evita comportamientos inesperados en las tareas que se están ejecutando en el momento de la eliminación o que están en espera para ejecutarse. También evita fallas en los procesos internos durante el ciclo de eliminación o recreación.

Console

  1. En la consola de Google Cloud , ve a la página Cloud Tasks > Colas.

    Ir a Queues

  2. Selecciona la casilla de verificación de la cola que deseas borrar.

  3. Haz clic en Borrar cola.

  4. Cuando se te solicite, escribe el nombre de la fila y, luego, haz clic en Confirmar.

gcloud

Borra una cola con el comando gcloud tasks queues delete:

gcloud tasks queues delete QUEUE_ID \
    --location=LOCATION

Reemplaza lo siguiente:

  • QUEUE_ID: El nombre de la fila que deseas borrar
  • LOCATION: la región en la que se implementa la fila, por ejemplo, us-central1

REST

Para borrar una fila, usa el método projects.locations.queues.delete.

Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:

  • QUEUE_ID: Es el nombre de la fila que deseas borrar.
  • PROJECT_ID: ID del proyecto proyecto Google Cloud
  • LOCATION: la región en la que se implementa la fila, por ejemplo, us-central1

El cuerpo de la solicitud debe estar vacío.

Para enviar tu solicitud, expande una de estas opciones:

Si se ejecuta correctamente, el cuerpo de la respuesta está vacío.

¿Qué sigue?