你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

更新服务

使用指定的更新说明汇报 Service Fabric 服务。

此 API 允许更新正在运行的 Service Fabric 服务的属性。 可更新的属性集是创建服务时指定的属性的子集。 可以使用 API 获取 GetServiceDescription 当前的属性集。 请注意,更新正在运行的服务的属性与使用 StartApplicationUpgrade API 升级应用程序不同。 升级是一个长时间运行的后台操作,涉及将应用程序从一个版本移动到另一个版本,一次一个升级域,而更新会立即将新属性应用于服务。

请求

方法 请求 URI
POST /Services/{serviceId}/$/Update?api-version=6.0&timeout={timeout}

参数

名称 类型 必须 位置
serviceId string 路径
api-version string 查询
timeout 整数 (int64) 查询
ServiceUpdateDescription ServiceUpdateDescription “是” Body

serviceId

类型:字符串
必需:是

服务的标识。 此 ID 通常是不带“fabric:”URI 方案的服务全名。 从版本 6.0 开始,分层名称以“~”字符隔开。 例如,如果服务名称为“fabric:/myapp/app1/svc1”,则 6.0 及更高版本中的服务标识为“myapp~app1~svc1”,在以前的版本中为“myapp/app1/svc1”。


api-version

类型:字符串
必需:是
默认

API 的版本。 此参数是必需的,其值必须为“6.0”。

Service Fabric REST API 版本基于引入或更改 API 的运行时版本。 Service Fabric 运行时支持 API 的多个版本。 这是 API 支持的最新版本。 如果传递的 API 版本较低,则返回的响应可能与本规范中所述的响应不同。

此外,运行时接受高于当前运行时版本支持的最新版本的任何版本。 因此,如果最新的 API 版本为 6.0,但如果运行时为 6.1,为了便于编写客户端,运行时将接受该 API 的版本 6.1。 但是,API 的行为将按照记录的 6.0 版本。


timeout

类型:整数 (int64)
必需:否
默认
InclusiveMaximum4294967295
InclusiveMinimum1

执行操作的服务器超时,以秒为单位。 此超时指定客户端可以等待请求的操作完成的持续时间。 此参数的默认值为 60 秒。


ServiceUpdateDescription

类型ServiceUpdateDescription
必需:是

更新服务所需的信息。

响应

HTTP 状态代码 说明 响应架构
200 (正常) 成功的操作将返回 202 状态代码。
所有其他状态代码 详细的错误响应。
FabricError

示例

无状态服务

此示例演示如何更新无状态 Service Fabric 服务的放置和负载均衡相关设置。

请求

POST http://localhost:19080/Services/test~test1/$/Update?api-version=6.0
正文
{
  "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"
      }
    }
  ]
}

200 响应

正文

响应正文为空。

有状态服务

此示例演示如何更新有状态 Service Fabric 服务的放置和负载均衡相关设置。

请求

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

200 响应

正文

响应正文为空。