Perbarui Layanan
Updates layanan Service Fabric menggunakan deskripsi pembaruan yang ditentukan.
API ini memungkinkan pembaruan properti dari layanan Service Fabric yang sedang berjalan. Kumpulan properti yang dapat diperbarui adalah subset properti yang ditentukan pada saat membuat layanan. Kumpulan properti saat ini dapat diperoleh menggunakan GetServiceDescription
API. Perhatikan bahwa memperbarui properti layanan yang sedang berjalan berbeda dari peningkatan aplikasi Anda menggunakan StartApplicationUpgrade
API. Peningkatan adalah operasi latar belakang yang berjalan lama yang melibatkan pemindahan aplikasi dari satu versi ke versi lainnya, satu domain peningkatan pada satu waktu, sedangkan pembaruan segera menerapkan properti baru ke layanan.
Minta
Metode | URI Permintaan |
---|---|
POST | /Services/{serviceId}/$/Update?api-version=6.0&timeout={timeout} |
Parameter
Nama | Jenis | Diperlukan | Lokasi |
---|---|---|---|
serviceId |
string | Ya | Jalur |
api-version |
string | Ya | Kueri |
timeout |
bilangan bulat (int64) | Tidak | Kueri |
ServiceUpdateDescription |
ServiceUpdateDescription | Ya | Isi |
serviceId
Jenis: string
Diperlukan: Ya
Identitas layanan. ID ini biasanya merupakan nama lengkap layanan tanpa skema URI 'fabric:’.
Mulai dari versi 6.0, nama hierarki dibatasi dengan karakter “~”.
Misalnya, jika nama layanan adalah "fabric:/myapp/app1/svc1", identitas layanan akan menjadi "myapp~app1~svc1" di 6.0+ dan "myapp/app1/svc1" di versi sebelumnya.
api-version
Jenis: string
Diperlukan: Ya
Default: 6.0
Versi API. Parameter ini diperlukan dan nilainya harus '6.0'.
Versi REST API Service Fabric didasarkan pada versi runtime tempat API diperkenalkan atau diubah. Runtime Service Fabric mendukung lebih dari satu versi API. Ini adalah versi API terbaru yang didukung. Jika versi API yang lebih rendah diteruskan, respons yang dikembalikan mungkin berbeda dari yang di dokumentasikan dalam spesifikasi ini.
Selain itu runtime menerima versi apa pun yang lebih tinggi dari versi terbaru yang didukung hingga versi runtime saat ini. Jadi, jika versi API terbaru adalah 6.0, tetapi jika runtime adalah 6.1, untuk mempermudah penulisan klien, runtime akan menerima versi 6.1 untuk API tersebut. Namun perilaku API akan sesuai dengan versi 6.0 yang di dokumentasikan.
timeout
Jenis: bilangan bulat (int64)
Diperlukan: Tidak
Default: 60
InclusiveMaximum: 4294967295
InclusiveMinimum: 1
Batas waktu server untuk melakukan operasi dalam hitungan detik. Batas waktu ini menentukan durasi waktu klien bersedia menunggu operasi yang diminta selesai. Nilai default untuk parameter ini adalah 60 detik.
ServiceUpdateDescription
Jenis: ServiceUpdateDescription
Diperlukan: Ya
Informasi yang diperlukan untuk memperbarui layanan.
Respons
Kode Status HTTP | Deskripsi | Skema Respons |
---|---|---|
200 (OK) | Operasi yang berhasil akan mengembalikan kode status 202. |
|
Semua kode status lainnya | Respons kesalahan terperinci. |
FabricError |
Contoh
Layanan stateless
Contoh ini menunjukkan cara memperbarui penempatan dan penyeimbangan beban pengaturan terkait layanan Service Fabric stateless.
Minta
POST http://localhost:19080/Services/test~test1/$/Update?api-version=6.0
Isi
{
"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"
}
}
]
}
Respons 200
Isi
Isi respons kosong.
Layanan stateful
Contoh ini menunjukkan cara memperbarui penempatan dan penyeimbangan beban pengaturan terkait layanan Service Fabric yang stateful.
Minta
POST http://localhost:19080/Services/test~test2/$/Update?api-version=6.0
Isi
{
"ServiceKind": "Stateful",
"Flags": "40",
"PlacementConstraints": "Color==Green",
"StandByReplicaKeepDurationSeconds": "1000"
}
Respons 200
Isi
Isi respons kosong.