Güncelleştirme Hizmeti
Belirtilen güncelleştirme açıklamasını kullanarak bir Service Fabric hizmeti Güncelleştirmeler.
Bu API, çalışan bir Service Fabric hizmetinin özelliklerini güncelleştirmeye olanak tanır. Güncelleştirilebilecek özellikler kümesi, hizmeti oluştururken belirtilen özelliklerin bir alt kümesidir. Geçerli özellik kümesi API kullanılarak GetServiceDescription
elde edilebilir. Çalışan bir hizmetin özelliklerini güncelleştirmenin API kullanarak StartApplicationUpgrade
uygulamanızı yükseltmekten farklı olduğunu unutmayın. Yükseltme, uygulamayı bir sürümden diğerine, bir kerede bir yükseltme etki alanına taşımayı içeren uzun süre çalışan bir arka plan işlemidir, güncelleştirme ise yeni özellikleri hizmete hemen uygular.
İstek
Yöntem | İstek URI'si |
---|---|
POST | /Services/{serviceId}/$/Update?api-version=6.0&timeout={timeout} |
Parametreler
Ad | Tür | Gerekli | Konum |
---|---|---|---|
serviceId |
string | Yes | Yol |
api-version |
string | Yes | Sorgu |
timeout |
integer (int64) | No | Sorgu |
ServiceUpdateDescription |
ServiceUpdateDescription | Yes | Gövde |
serviceId
Tür: dize
Gerekli: Evet
Hizmetin kimliği. Bu kimlik genellikle 'fabric:' URI şeması olmayan hizmetin tam adıdır.
Sürüm 6.0'dan başlayarak hiyerarşik adlar "~" karakteriyle sınırlandırılır.
Örneğin, hizmet adı "fabric:/myapp/app1/svc1" ise, hizmet kimliği 6.0+ sürümünde "myapp~app1~svc1" ve önceki sürümlerde "myapp/app1/svc1" olacaktır.
api-version
Tür: dize
Gerekli: Evet
Varsayılan: 6.0
API sürümü. Bu parametre gereklidir ve değeri '6.0' olmalıdır.
Service Fabric REST API sürümü, API'nin tanıtıldığı veya değiştirildiği çalışma zamanı sürümünü temel alır. Service Fabric çalışma zamanı API'nin birden fazla sürümünü destekler. Bu, API'nin desteklenen en son sürümüdür. Daha düşük bir API sürümü geçirilirse, döndürülen yanıt bu belirtimde belgelenenden farklı olabilir.
Buna ek olarak çalışma zamanı, çalışma zamanının geçerli sürümüne kadar desteklenen en son sürümden daha yüksek olan tüm sürümleri kabul ediyor. Bu nedenle, en son API sürümü 6.0 ise ancak çalışma zamanı 6.1 ise, istemcileri yazmayı kolaylaştırmak için çalışma zamanı bu API için sürüm 6.1'i kabul eder. Ancak API'nin davranışı, belgelenen 6.0 sürümüne göre olacaktır.
timeout
Tür: tamsayı (int64)
Gerekli: Hayır
Varsayılan: 60
InclusiveMaximum: 4294967295
InclusiveMinimum: 1
İşlemi saniyeler içinde gerçekleştirmek için sunucu zaman aşımı. Bu zaman aşımı, istemcinin istenen işlemin tamamlanmasını beklemeye istekli olduğu süreyi belirtir. Bu parametre için varsayılan değer 60 saniyedir.
ServiceUpdateDescription
Tür: ServiceUpdateDescription
Gerekli: Evet
Bir hizmeti güncelleştirmek için gereken bilgiler.
Yanıtlar
HTTP Durum Kodu | Description | Yanıt Şeması |
---|---|---|
200 (Tamam) | Başarılı bir işlem 202 durum kodu döndürür. |
|
Diğer tüm durum kodları | Ayrıntılı hata yanıtı. |
Doku Oluşturucu |
Örnekler
Durum bilgisi olmayan hizmet
Bu örnekte durum bilgisi olmayan bir Service Fabric hizmetinin yerleştirme ve yük dengeleme ile ilgili ayarlarının nasıl güncelleştirilecekleri gösterilmektedir.
İstek
POST http://localhost:19080/Services/test~test1/$/Update?api-version=6.0
Gövde
{
"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 Yanıt
Gövde
Yanıt gövdesi boş.
Durum bilgisi olan hizmet
Bu örnekte durum bilgisi olan bir Service Fabric hizmetinin yerleştirme ve yük dengeleme ile ilgili ayarlarının nasıl güncelleştirilecekleri gösterilmektedir.
İstek
POST http://localhost:19080/Services/test~test2/$/Update?api-version=6.0
Gövde
{
"ServiceKind": "Stateful",
"Flags": "40",
"PlacementConstraints": "Color==Green",
"StandByReplicaKeepDurationSeconds": "1000"
}
200 Yanıt
Gövde
Yanıt gövdesi boş.