Mantenha tudo organizado com as coleções
Salve e categorize o conteúdo com base nas suas preferências.
Sobre o Google Tarefas
Enquantos os aplicativos são processos de longa duração, o Google Tarefas é executado por um período finito e, em seguida, para. As tarefas são executadas nos próprios contêineres com base na configuração do app principal e podem ser configuradas para usar recursos limitados, por exemplo, CPU, memória e armazenamento de disco temporário.
Casos de uso do Google Tarefas
Como migrar um banco de dados
Como executar um job em lote (programado/não programado)
Como enviar um e-mail
Transformação de dados (ETL)
Processamento de dados (upload/backup/download)
Como o Google Tarefas funciona
As tarefas são executadas de forma assíncrona, independentemente do aplicativo principal ou de outras tarefas em execução no mesmo app. Um aplicativo criado para executar tarefas não tem rotas criadas ou atribuídas, e o ciclo de vida de execução é ignorado. Os ciclos de vida do código-fonte e do build continuam normalmente e resultam em uma imagem de contêiner usada para executar tarefas depois de enviar o app. Consulte os ciclos de vida em Como implantar um aplicativo.
O ciclo de vida de uma tarefa é o seguinte:
Você envia um aplicativo para executar tarefas com o comando kf push APP_NAME --task.
Você executa uma tarefa no aplicativo com o comando kf run-task APP_NAME. A tarefa herda as variáveis de ambiente, vinculações de serviço, alocação de recursos, comando de inicialização e grupos de segurança vinculados ao aplicativo.
O Kf cria um PipelineRun do Tekton com valores do aplicativo e de parâmetros do comando run-task.
O PipelineRun do Tekton cria um pod do Kubernetes que inicia um contêiner com base nas configurações do aplicativo e da tarefa.
A execução da tarefa é interrompida (termina normalmente ou é encerrada de forma manual). O pod é interrompido ou encerrado. Os pods de tarefas interrompidas são preservados e, portanto, os registros são acessíveis pelo comando kf logs APP_NAME --task.
Se você encerrar uma tarefa antes de ela parar, o PipelineRun do Tekton será cancelado (consulte Como cancelar um PipelineRun) e o pod com os registros será excluído. Os registros de tarefas encerradas são entregues aos streams de registros no nível do cluster, se configurados (por exemplo, Stackdriver ou Fluentd).
Se o número de tarefas executadas em um aplicativo for maior que 500, as mais antigas serão excluídas automaticamente.
Política de retenção de tarefas
As tarefas são criadas como recursos personalizados no cluster do Kubernetes. Portanto, é importante não esgotar o espaço do banco de dados etcd. Por padrão, o kf mantém apenas as 500 tarefas mais recentes por aplicativo. Quando o número de tarefas chegar a 500, as mais antigas (junto com os pods e registros) serão excluídas automaticamente.
Geração de registros de tarefas e histórico de execução
Todos os dados ou mensagens que a tarefa gera para STDOUT ou STDERR são disponibilizados pelo comando kf logs APP_NAME --task. O mecanismo no nível do cluster (como Stackdriver e Fluentd) envia os registros de tarefas para o destino de geração de registros configurado.
[[["Fácil de entender","easyToUnderstand","thumb-up"],["Meu problema foi resolvido","solvedMyProblem","thumb-up"],["Outro","otherUp","thumb-up"]],[["Difícil de entender","hardToUnderstand","thumb-down"],["Informações incorretas ou exemplo de código","incorrectInformationOrSampleCode","thumb-down"],["Não contém as informações/amostras de que eu preciso","missingTheInformationSamplesINeed","thumb-down"],["Problema na tradução","translationIssue","thumb-down"],["Outro","otherDown","thumb-down"]],["Última atualização 2025-09-04 UTC."],[],[],null,["# Tasks\n\nAbout Tasks\n-----------\n\nIn contrast to Apps (long-running processes), Tasks run for a finite amount of time and then stops. Tasks run in their own containers based on configuration on the parent App, and it could be configured to use limited resources (e.g. CPU/memory/ephermeral disk storage).\n\nUse Cases for Tasks\n-------------------\n\n- Migrating a database\n- Running a batch job (scheduled/unscheduled)\n- Sending an email\n- Transforming data (ETL)\n- Processing data (upload/backup/download)\n\nHow Tasks work\n--------------\n\nTasks are executed asynchronously and run independently from the parent App or other Tasks running on the same App. An App created for running Tasks does not have routes created or assigned, and the **Run** lifecycle is skipped. The **Source code upload** and **Build** lifecycles still proceed and result in a container image used for running Tasks after pushing the App (see App lifecycles at [Deploying an Application](../how-to/deploying-an-app)).\n\nThe lifecycle of a Task is as follows:\n\n1. You push an App for running tasks with the `kf push APP_NAME --task` command.\n2. You run a Task on the App with the `kf run-task APP_NAME` command. Task inherits the environment variables, service bindings, resource allocation, start-up command, and security groups bound to the App.\n3. Kf creates a Tekton [PipelineRun](https://github.com/tektoncd/pipeline/blob/master/docs/pipelineruns.md) with values from the App and parameters from the `run-task` command.\n4. The Tekton PipelineRun creates a Kubernetes Pod which launches a container based on the configurations on the App and Task.\n5. Task execution stops (Task exits or is terminated manually), the underlying Pod is either stopped or terminated. Pods of stopped Tasks are preserved and thus Task logs are accessible via the `kf logs APP_NAME --task` command.\n6. If you terminate a Task before it stops, the Tekton PipelineRun is cancelled (see [Cancelling a PipelineRun](https://github.com/tektoncd/pipeline/blob/master/docs/pipelineruns.md#cancelling-a-pipelinerun)), the underlying Pod together with the logs are deleted. The logs of termianted Tasks are delivered to the cluster level logging streams if configured (e.g. Stackdriver, Fluentd).\n7. If the number of Tasks run on an App is greater than 500, the oldest Tasks are automatically deleted.\n\nTasks Retention Policy\n----------------------\n\nTasks are created as custom resources in the Kubernetes cluster, therefore, it is important not to exhaust the space of the underlying `etcd` database. By default, Kf only keeps the latest 500 Tasks per each App. Once the number of Tasks reach 500, the oldest Tasks (together with the underlying Pods and logs) will be automatically deleted.\n\nTask Logging and Execution History\n----------------------------------\n\nAny data or messages the Task outputs to STDOUT or STDERR is available by using the `kf logs APP_NAME --task` command. Cluster level logging mechanism (such as Stackdriver, Fluentd) will deliver the Task logs to the configured logging destination."]]