Updatedienst
Updates einen Service Fabric-Dienst mithilfe der angegebenen Updatebeschreibung.
Diese API ermöglicht das Aktualisieren von Eigenschaften eines ausgeführten Service Fabric-Diensts. Die Eigenschaften, die aktualisiert werden können, sind eine Teilmenge der Eigenschaften, die zum Zeitpunkt der Erstellung des Diensts angegeben wurden. Der aktuelle Satz von Eigenschaften kann mithilfe GetServiceDescription
der API abgerufen werden. Beachten Sie, dass sich das Aktualisieren der Eigenschaften eines ausgeführten Diensts vom Aktualisieren Ihrer Anwendung mithilfe der StartApplicationUpgrade
API unterscheidet. Bei dem Upgrade handelt es sich um einen Hintergrundvorgang mit langer Ausführung, bei dem die Anwendung von einer Version in eine andere verschoben wird, wobei eine Upgradedomäne gleichzeitig erfolgt, während das Update die neuen Eigenschaften sofort auf den Dienst anwendet.
Anforderung
Methode | Anforderungs-URI |
---|---|
POST | /Services/{serviceId}/$/Update?api-version=6.0&timeout={timeout} |
Parameter
Name | type | Erforderlich | Standort |
---|---|---|---|
serviceId |
Zeichenfolge | Ja | Pfad |
api-version |
Zeichenfolge | Ja | Abfrage |
timeout |
ganze Zahl (int64) | Nein | Abfrage |
ServiceUpdateDescription |
ServiceUpdateDescription | Ja | Body |
serviceId
Typ: Zeichenfolge
Erforderlich: Ja
Die Identität (ID) des Diensts. Diese ID ist üblicherweise der vollständige Name des Diensts ohne das URI-Schema „fabric“.
Ab Version 6.0 wird für hierarchische Namen das Zeichen „~“ als Trennzeichen verwendet.
Wenn der Dienstname beispielsweise „fabric:/myapp/app1/svc1“ lautet, würde die Dienstidentität ab 6.0 „myapp~app1~svc1“ und in früheren Versionen „myapp/app1/svc1“ lauten.
api-version
Typ: Zeichenfolge
Erforderlich: Ja
Standard:
Die Version der API. Dieser Parameter ist erforderlich, und sein Wert muss "6.0" sein.
Die Service Fabric-REST-API-Version basiert auf der Laufzeitversion, in der die API eingeführt oder geändert wurde. Die Service Fabric-Runtime unterstützt mehrere Versionen der API. Dies ist die neueste unterstützte Version der API. Wenn eine niedrigere API-Version übergeben wird, unterscheidet sich die zurückgegebene Antwort möglicherweise von der in dieser Spezifikation dokumentierten.
Darüber hinaus akzeptiert die Runtime jede Version, die höher als die neueste unterstützte Version bis zur aktuellen Version der Runtime ist. Wenn also die neueste API-Version 6.0 ist, aber die Runtime 6.1 ist, akzeptiert die Runtime Version 6.1 für diese API, um das Schreiben der Clients zu erleichtern. Das Verhalten der API entspricht jedoch der dokumentierten Version 6.0.
timeout
Typ: integer (int64)
Erforderlich: Nein
Standard:
InclusiveMaximum: 4294967295
InclusiveMinimum: 1
Der Servertimeout für die Ausführung des Vorgangs in Sekunden. Dieser Timeout gibt die Zeitdauer an, die der Client bereit ist, auf den Abschluss des angeforderten Vorgangs zu warten. Der Standardwert für diesen Parameter ist 60 Sekunden.
ServiceUpdateDescription
Typ: ServiceUpdateDescription
Erforderlich: Ja
Die zum Aktualisieren eines Diensts erforderlichen Informationen.
Antworten
HTTP-Statuscode | BESCHREIBUNG | Antwortschema |
---|---|---|
200 (OK) | Ein erfolgreicher Vorgang gibt 202 status Code zurück. |
|
Alle anderen status Codes | Die detaillierte Fehlerantwort. |
FabricError |
Beispiele
Zustandsloser Dienst
In diesem Beispiel wird gezeigt, wie Die Platzierungs- und Lastenausgleichseinstellungen eines zustandslosen Service Fabric-Diensts aktualisiert werden.
Anforderung
POST http://localhost:19080/Services/test~test1/$/Update?api-version=6.0
Text
{
"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"
}
}
]
}
Antwort 200
Text
Der Antworttext ist leer.
Zustandsbehafteter Dienst
In diesem Beispiel wird gezeigt, wie Sie die Platzierungs- und Lastenausgleichseinstellungen eines zustandsbehafteten Service Fabric-Diensts aktualisieren.
Anforderung
POST http://localhost:19080/Services/test~test2/$/Update?api-version=6.0
Text
{
"ServiceKind": "Stateful",
"Flags": "40",
"PlacementConstraints": "Color==Green",
"StandByReplicaKeepDurationSeconds": "1000"
}
Antwort 200
Text
Der Antworttext ist leer.