Bagikan melalui


Mendiagnosis dan memecahkan masalah pengecualian layanan tak tersedia Azure Cosmos DB

BERLAKU UNTUK: NoSQL

SDK tidak dapat terhubung ke Azure Cosmos DB. Skenario ini dapat bersifat sementara atau permanen tergantung pada kondisi jaringan.

Penting untuk memastikan desain aplikasi mengikuti panduan kami untuk merancang aplikasi tangguh dengan Azure Cosmos DB SDK untuk memastikannya bereaksi dengan benar terhadap kondisi jaringan yang berbeda. Aplikasi Anda harus memiliki fitur percobaan ulang saat kesalahan layanan tidak tersedia.

Saat mengevaluasi kasus untuk kesalahan layanan tidak tersedia:

  • Apa efek yang diukur dalam volume operasi yang terpengaruh dibandingkan dengan operasi yang berhasil? Apakah itu ada dalam SLA layanan?
  • Apakah latensi/ketersediaan P99 terpengaruh?
  • Apakah kegagalan memengaruhi semua instans aplikasi Anda atau hanya sebagian? Ketika masalah direduksi menjadi subset instans, biasanya masalah itu terkait dengan instans tersebut.

Langkah-langkah pemecahan masalah

Daftar berikut ini berisi penyebab dan solusi yang diketahui untuk pengecualian layanan tak tersedia.

Memverifikasi kode substatus

Dalam kondisi tertentu, kesalahan Http 503 Service Unavailable menyertakan kode substatus yang membantu mengidentifikasi penyebabnya.

Kode Substatus Deskripsi
20001 Kesalahan layanan tidak tersedia terjadi karena ada masalah konektivitas sisi klien (kegagalan saat mencoba menyambungkan). Klien mencoba memulihkan dengan mencoba kembali tetapi semua percobaan ulang gagal.
20002 Kesalahan layanan tidak tersedia terjadi karena ada batas waktu sisi klien. Klien mencoba memulihkan dengan mencoba kembali tetapi semua percobaan ulang gagal.
20003 Kesalahan layanan tidak tersedia terjadi karena ada kesalahan I/O yang mendasari yang terkait dengan sistem operasi. Lihat detail pengecualian untuk kesalahan I/O terkait.
20004 Kesalahan layanan tidak tersedia terjadi karena CPU komputer klien kelebihan beban.
20005 Kesalahan layanan tidak tersedia terjadi karena kumpulan utas komputer klien kelaparan. Verifikasi potensi pemblokiran panggilan asinkron dalam kode Anda.
20006 Koneksi antara layanan dan klien terganggu atau dihentikan secara tidak terduga.
>= 21001 Kesalahan layanan tidak tersedia ini terjadi karena kondisi layanan sementara. Verifikasi kondisi di bagian di atas, konfirmasikan apakah Anda telah mencoba kembali kebijakan. Jika volume kesalahan ini lebih tinggi dibandingkan dengan keberhasilannya, hubungi Dukungan Azure.

Port yang diperlukan sedang diblokir

Pastikan bahwa semua port yang diperlukan telah aktif.

Masalah konektivitas sementara di pihak klien

Pengecualian layanan tidak tersedia dapat muncul ketika ada masalah konektivitas sementara yang menyebabkan waktu habis dan dapat dicoba kembali dengan aman mengikuti rekomendasi desain.

Ikuti langkah-langkah pemecahan masalah timeout untuk mengatasinya.

Pemadaman layanan

Periksa status Azure untuk melihat apakah ada masalah yang sedang berlangsung.

Langkah berikutnya