> For the complete documentation index, see [llms.txt](https://docs.skail.dev/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.skail.dev/construir/portal/workloads.md).

# Workloads

Referência da área Workloads do portal: criar, nome e versão, e a relação com `SKAIL_WORKLOAD` e com o caminho do trigger.

## O que é

A aplicação vista pelo skail: um par nome e versão (`faturamento:v1.2.3`) publicado em um environment. É a unidade de endereçamento: cada function e command recebe o endereço `nome:versao/NomeDoMetodo`, e as execuções são entregues ao workload com esse `nome:versao`.

## Identidade técnica

| Valor                | Vai para                                                                          |
| -------------------- | --------------------------------------------------------------------------------- |
| Nome (`faturamento`) | Parte antes dos dois-pontos em `SKAIL_WORKLOAD`; segmento `{workload}` do trigger |
| Versão (`v1.2.3`)    | Parte depois dos dois-pontos em `SKAIL_WORKLOAD`; segmento `{versao}` do trigger  |

Se `SKAIL_WORKLOAD` da aplicação não bater com um workload publicado no environment, a aplicação sobe mas nenhuma execução chega a ela; execuções disparadas para esse `nome:versao` ficam Na fila no Monitor, esperando por ela.

## Versões

A versão faz parte do endereço de cada execução. Uma execução iniciada em `v1.2.2` continua endereçada a `v1.2.2` até terminar; publicar `v1.2.3` não a move. Por isso duas versões do mesmo workload coexistem no mesmo environment enquanto execuções antigas esvaziam, e a aplicação da versão antiga precisa continuar rodando até então. Ver [Versionamento](/aprender/fundamentos/versionamento-de-codigo-com-execucoes-em-andamento.md) e [Como fazer deploy de uma nova versão](/construir/configurar-e-hospedar/como-fazer-deploy-de-uma-nova-versao-do-workload.md).

## Operações

| Operação                  | Onde                                   | Observação                                                   |
| ------------------------- | -------------------------------------- | ------------------------------------------------------------ |
| Criar workload            | Dentro do environment, Workloads, novo | Nome e versão inicial                                        |
| Criar nova versão         | Dentro do environment, Workloads, novo | Mesmo nome, nova versão; a antiga continua publicada         |
| Ver execuções do workload | Monitor                                | Cada execução mostra workload e versão                       |
| Despublicar versão        | Dentro do environment, Workloads       | Só quando o Monitor mostrar zero execuções em andamento nela |

## Um workload por aplicação

Cada processo .NET que hospeda functions é um workload. Duas aplicações diferentes com o mesmo `SKAIL_WORKLOAD` disputam as mesmas execuções (isso é escala horizontal, desejado para réplicas do mesmo build, indesejado para aplicações diferentes ou para dois desenvolvedores em `dev`).

## Veja também

[Projetos, environments, namespaces e workloads](/aprender/arquitetura/projetos-environments-namespaces-e-workloads.md), [POST /trigger](/construir/api-http/post-trigger-workload-versao-funcao-id.md), [Como configurar o runtime](/construir/configurar-e-hospedar/como-configurar-o-runtime.md).
