Partilhar via


Serviço de Atualização

Atualizações um serviço do Service Fabric com a descrição de atualização especificada.

Esta API permite atualizar as propriedades de um serviço do Service Fabric em execução. O conjunto de propriedades que podem ser atualizadas é um subconjunto das propriedades que foram especificadas no momento da criação do serviço. O conjunto atual de propriedades pode ser obtido com a GetServiceDescription API. Tenha em atenção que atualizar as propriedades de um serviço em execução é diferente de atualizar a sua aplicação com StartApplicationUpgrade a API. A atualização é uma operação em segundo plano de execução prolongada que envolve mover a aplicação de uma versão para outra, um domínio de atualização de cada vez, enquanto a atualização aplica as novas propriedades imediatamente ao serviço.

Pedir

Método URI do pedido
POST /Services/{serviceId}/$/Update?api-version=6.0&timeout={timeout}

Parâmetros

Nome Tipo Necessário Localização
serviceId string Yes Caminho
api-version string Yes Consulta
timeout número inteiro (int64) No Consulta
ServiceUpdateDescription ServiceUpdateDescription Yes Corpo

serviceId

Tipo: cadeia
Obrigatório: Sim

A identidade do serviço. Normalmente, este ID é o nome completo do serviço sem o esquema de URI "fabric:". A partir da versão 6.0, os nomes hierárquicos são delimitados com o caráter "~". Por exemplo, se o nome do serviço for "fabric:/myapp/app1/svc1", a identidade do serviço será "myapp~app1~svc1" em 6.0+ e "myapp/app1/svc1" em versões anteriores.


api-version

Tipo: cadeia
Obrigatório: Sim
Predefinição: 6.0

A versão da API. Este parâmetro é obrigatório e o respetivo valor tem de ser "6.0".

A versão da API REST do Service Fabric baseia-se na versão de runtime na qual a API foi introduzida ou foi alterada. O runtime do Service Fabric suporta mais do que uma versão da API. Esta é a versão suportada mais recente da API. Se for transmitida uma versão da API inferior, a resposta devolvida poderá ser diferente da documentada nesta especificação.

Além disso, o runtime aceita qualquer versão superior à versão suportada mais recente até à versão atual do runtime. Portanto, se a versão mais recente da API for 6.0, mas se o runtime for 6.1, para facilitar a escrita dos clientes, o runtime aceitará a versão 6.1 para essa API. No entanto, o comportamento da API será conforme a versão documentada 6.0.


timeout

Tipo: número inteiro (int64)
Obrigatório: Não
Predefinição: 60
InclusiveMaximum: 4294967295
InclusiveMinimum: 1

O tempo limite do servidor para executar a operação em segundos. Este tempo limite especifica a duração de tempo que o cliente está disposto a aguardar pela conclusão da operação pedida. O valor predefinido para este parâmetro é 60 segundos.


ServiceUpdateDescription

Tipo: ServiceUpdateDescription
Obrigatório: Sim

As informações necessárias para atualizar um serviço.

Respostas

Código de Estado HTTP Description Esquema de Resposta
200 (OK) Uma operação bem-sucedida devolverá o código de estado 202.
Todos os outros códigos de estado A resposta detalhada ao erro.
FabricError

Exemplos

Serviço sem estado

Este exemplo mostra como atualizar as definições relacionadas com o posicionamento e o balanceamento de carga de um serviço do Service Fabric sem estado.

Pedir

POST http://localhost:19080/Services/test~test1/$/Update?api-version=6.0
Corpo
{
  "ServiceKind": "Stateless",
  "Flags": "1568",
  "PlacementConstraints": "Color==Red",
  "DefaultMoveCost": "High",
  "ScalingPolicies": [
    {
      "ScalingTrigger": {
        "Kind": "AveragePartitionLoad",
        "MetricName": "servicefabric:/_CpuCores",
        "LowerLoadThreshold": "0.500000",
        "UpperLoadThreshold": "0.800000",
        "ScaleIntervalInSeconds": "900"
      },
      "ScalingMechanism": {
        "Kind": "PartitionInstanceCount",
        "MinInstanceCount": "4",
        "MaxInstanceCount": "6",
        "ScaleIncrement": "2"
      }
    }
  ]
}

Resposta 200

Corpo

O corpo da resposta está vazio.

Serviço com estado

Este exemplo mostra como atualizar as definições relacionadas com o posicionamento e o balanceamento de carga de um serviço do Service Fabric com estado.

Pedir

POST http://localhost:19080/Services/test~test2/$/Update?api-version=6.0
Corpo
{
  "ServiceKind": "Stateful",
  "Flags": "40",
  "PlacementConstraints": "Color==Green",
  "StandByReplicaKeepDurationSeconds": "1000"
}

Resposta 200

Corpo

O corpo da resposta está vazio.