Gestionar colas y tareas

Puedes gestionar las colas y las tareas de las siguientes formas:

  • En la Google Cloud consola
  • Usando la CLI de Google Cloud en tu terminal o en Cloud Shell
  • Enviando una solicitud a la API Cloud Tasks

Eliminar una tarea de una cola

Puedes eliminar una tarea si está programada o enviada. Por ejemplo, puede que tengas que eliminar una tarea que no se pueda completar correctamente, independientemente de cuántas veces se vuelva a intentar. No puedes eliminar una tarea si se ha completado correctamente o si se han agotado los reintentos después de fallar de forma constante.

Consola

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

    Ir a Colas

  2. Haz clic en el nombre de la cola de la tarea que quieras eliminar.

  3. Marca la casilla de la tarea que quieras eliminar.

  4. Haz clic en Eliminar tarea.

  5. Haz clic en Eliminar cuando se te indique.

gcloud

Elimina una tarea con el comando gcloud tasks delete:

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

Haz los cambios siguientes:

  • TASK_NAME: el nombre de la tarea que quieras eliminar
  • QUEUE_ID: el nombre de la cola a la que pertenece la tarea
  • LOCATION: la región en la que se ha implementado la cola (por ejemplo, us-central1)

REST

Para eliminar una tarea, utiliza el método projects.locations.queues.tasks.delete.

Antes de usar los datos de la solicitud, haz las siguientes sustituciones:

  • QUEUE_ID: el nombre de la cola a la que pertenece la tarea.
  • TASK_NAME: el nombre de la tarea que quieres eliminar
  • PROJECT_ID: tu Google Cloud ID de proyecto
  • LOCATION: la región en la que se encuentra la cola. Por ejemplo, us-central1.

El cuerpo de la solicitud debe estar vacío.

Para enviar tu solicitud, despliega una de estas opciones:

Si la solicitud se hace correctamente, el cuerpo de la respuesta estará vacío.

Purgar todas las tareas de una cola

Puedes eliminar todas las tareas de una cola purgándolas. Todas las tareas creadas antes de la llamada de purga se eliminan definitivamente. Sin embargo, las operaciones de purga pueden tardar hasta un minuto en aplicarse y las tareas pueden enviarse antes de que se aplique la purga.

Consola

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

    Ir a Colas

  2. Haz clic en el nombre de la cola de las tareas que quieras eliminar.

  3. Haz clic en Eliminar cola definitivamente.

  4. En el mensaje que aparece, haz clic en Purgar.

gcloud

Purgar una cola con el comando gcloud tasks queues purge:

gcloud tasks queues purge QUEUE_ID \
    --location=LOCATION

Haz los cambios siguientes:

  • QUEUE_ID: el nombre de la cola que quieras purgar
  • LOCATION: la región en la que se ha implementado la cola (por ejemplo, us-central1)

REST

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

Antes de usar los datos de la solicitud, haz las siguientes sustituciones:

  • QUEUE_ID: el nombre de la cola que quieres purgar
  • PROJECT_ID: tu Google Cloud ID de proyecto
  • LOCATION: la región en la que se implementa la cola (por ejemplo, us-central1)

El cuerpo de la solicitud debe estar vacío.

Para enviar tu solicitud, despliega una de estas opciones:

Si la salida del comando es correcta, en el cuerpo de la respuesta se incluirá 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"
}

Pausar o reanudar colas

Puedes pausar o reanudar una cola. Pausar una cola significa que se detiene la ejecución y la entrega de las tareas. Puedes seguir creando tareas y enviándolas o añadiéndolas a la cola, pero no se procesarán. Una vez que se reanuda la cola, las tareas pendientes se procesan en el orden en el que se añadieron a la cola.

Consola

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

    Ir a Colas

  2. Marca la casilla de la cola que quieras pausar.

  3. Haz clic en Pausar cola.

  4. En el mensaje que aparece, haz clic en Pausar.

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

gcloud

  1. Para pausar una cola, usa el comando gcloud tasks queues pause:

    gcloud tasks queues pause QUEUE_ID \
        --location=LOCATION

    Haz los cambios siguientes:

    • QUEUE_ID: el nombre de la cola que quieres pausar
    • LOCATION: la región en la que se ha implementado la cola (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 cola, usa el método projects.locations.queues.pause.

    Antes de usar los datos de la solicitud, haz las siguientes sustituciones:

    • QUEUE_ID: el nombre de la cola que quieres pausar
    • PROJECT_ID: tu Google Cloud ID de proyecto
    • LOCATION: la región en la que se implementa la cola (por ejemplo, us-central1)

    El cuerpo de la solicitud debe estar vacío.

    Para enviar tu solicitud, despliega una de estas opciones:

    Si la salida del comando es correcta, en el cuerpo de la respuesta se incluirá 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, utiliza el método projects.locations.queues.resume.

    Antes de usar los datos de la solicitud, haz las siguientes sustituciones:

    • QUEUE_ID: el nombre de la cola que quieras reanudar
    • PROJECT_ID: tu Google Cloud ID de proyecto
    • LOCATION: la región en la que se implementa la cola (por ejemplo, us-central1)

    El cuerpo de la solicitud debe estar vacío.

    Para enviar tu solicitud, despliega una de estas opciones:

    Si la salida del comando es correcta, en el cuerpo de la respuesta se incluirá 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"
    }
    

Mostrar lista de colas

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

  • Velocidad máxima (consola), MAX_RATE (gcloud) y maxDispatchesPerSecond (REST)
  • Máximo simultáneo (consola), MAX_NUM_OF_TASKS (gcloud) y maxConcurrentDispatches (REST)

Consola

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

    Ir a Colas

    Se muestran todas las colas de tu Google Cloud proyecto.

  2. Para obtener más información, haga clic en el nombre de una cola y, a continuación, en la pestaña Configuración.

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

gcloud

Para enumerar las colas, usa el comando gcloud tasks queues list:

gcloud tasks queues list \
    --location=LOCATION

Sustituye LOCATION por la región en la que se ha desplegado la cola (por ejemplo, us-central1). Si no se especifica ninguna ubicación, se usará la ubicación de la aplicación App Engine de tu Google Cloud proyecto, si existe. De lo contrario, debes especificar una ubicación.

La salida debería ser similar a la siguiente:

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 los datos de la solicitud, haz las siguientes sustituciones:

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

Para enviar tu solicitud, despliega una de estas opciones:

Si la solicitud se completa correctamente, el cuerpo de la respuesta contiene instancias de recursos Queue y la respuesta debería 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"
}

Eliminar colas

Puedes eliminar una cola. También se eliminan las tareas de la cola. Si eliminas una cola, debes esperar 3 días para volver a crearla con el mismo nombre. Este periodo de espera evita comportamientos inesperados en las tareas que se están ejecutando en el momento de la eliminación o que están esperando a ejecutarse. También evita errores en los procesos internos durante el ciclo de eliminación o recreación.

Consola

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

    Ir a Colas

  2. Marca la casilla de la cola que quieras eliminar.

  3. Haz clic en Eliminar cola.

  4. Cuando se te pida, escribe el nombre de la cola y haz clic en Confirmar.

gcloud

Elimina una cola con el comando gcloud tasks queues delete:

gcloud tasks queues delete QUEUE_ID \
    --location=LOCATION

Haz los cambios siguientes:

  • QUEUE_ID: el nombre de la cola que quieres eliminar
  • LOCATION: la región en la que se ha implementado la cola (por ejemplo, us-central1)

REST

Para eliminar una cola, utiliza el método projects.locations.queues.delete.

Antes de usar los datos de la solicitud, haz las siguientes sustituciones:

  • QUEUE_ID: el nombre de la cola que quieres eliminar
  • PROJECT_ID: tu Google Cloud ID de proyecto
  • LOCATION: la región en la que se implementa la cola (por ejemplo, us-central1)

El cuerpo de la solicitud debe estar vacío.

Para enviar tu solicitud, despliega una de estas opciones:

Si la solicitud se hace correctamente, el cuerpo de la respuesta estará vacío.