503 Hizmeti Kullanılamıyor - Arka Uç Sunucusu

Apigee Edge belgelerini görüntülüyorsunuz.
. Git: Apigee X belgeleri.
bilgi

Videolar

503 Hizmet Kullanılamıyor Hatalarının çözümü hakkında daha fazla bilgi edinmek için aşağıdaki videoyu izleyin.

Video Açıklama
Arka Uç Sunucudan Gelen 503 Hizmet Kullanılamıyor Hatası Aşağıdakiler hakkında bilgi edinin:
  • Apigee Edge'de 503 Hizmet Kullanılamıyor Hatası'na Giriş
  • 503 Hizmet Kullanılamıyor durumuna ilişkin gerçek zamanlı sorun giderme ve sorunları çözme Arka Uç Sunucusu

Belirti

İstemci uygulaması HTTP yanıt durumu alıyor Aşağıdaki Hizmet Kullanılamıyor mesajıyla birlikte 503 API proxy çağrısı.

Hata mesajları

Aşağıdaki hata mesajlarından birini görüyor olabilirsiniz:

HTTP/1.1 503 Service Unavailable
HTTP/1.1 503 Service Unavailable: Back-end server is at capacity

Şuna benzer bir hata mesajı da alabilirsiniz: ifadesini girin:

The server is temporarily unable to service your request due to
maintenance downtime or capacity problems. Please try again later.

Not: Yukarıdaki yanıt kodu ve hata mesajı yalnızca örnektir. Bazı durumlarda hata mesajıyla yalnızca hata yanıt kodunu alabilirsiniz. Hata yanıt kodunun biçimi ve içeriği ile hata mesajının biçimi arka uç sunucu uygulamasını kontrol edin.

Nedenler

HTTP durum kodu 503, sunucunun şu anda gelen iletileri işleyemediği anlamına gelir kabul edersiniz. Bu hata genellikle sunucunun çok meşgul veya bakım nedeniyle geçici olarak kapalıdır.

503 Hizmet Kullanılamıyor yanıtının olası nedenleri şunlardır:

Neden Açıklama Sorun giderme adımlarını kimler gerçekleştirebilir?
Aşırı Yüklü Sunucu Arka uç sunucusu aşırı yüklü veya kapasitesinin üzerinde olduğu için sunucudaki yeni emin olun. Edge Herkese Açık ve Private Cloud kullanıcıları
Sunucu bakımda Arka uç sunucusuna geçici olarak bakım yapılıyor olabilir. Edge Herkese Açık ve Private Cloud kullanıcıları

Neden: Bakım Altında Sunucu/Sunucu Aşırı Yüklü

Apigee Edge'de bir arka uç sunucusundan 503 Hizmet Kullanılamıyor Hatası döndürülebilir. koşullardan herhangi biri geçerliyse:

  • Bir arka uç sunucusu aşırı yüklü/meşgul ve yeni istekleri işleyemiyor.
  • Arka uç sunucusu bakım nedeniyle geçici bir süreliğine kullanılamıyor.

Teşhis

Hatayı teşhis etmek için aşağıdaki üç yöntemden herhangi birini kullanabilirsiniz:

  • İzleme aracı
  • NGINX erişim günlükleri
  • Arka uç sunucusuna doğrudan çağrı

Her yöntem hakkında bilgi edinmek için aşağıdaki sekmeleri tıklayın.

İzleme aracı

  1. İzleme oturumunu etkinleştirin. ve sorunu yeniden oluşturmak için API çağrısı yapın: 503 Hizmet Kullanılamıyor.
  2. Başarısız isteklerden birini seçin ve izini inceleyin.
  3. İzlemenin çeşitli aşamaları arasında gezinin ve hatanın nerede oluştuğunu bulun.
  4. 503 hatasının hedef sunucudan yanıt olarak döndürüldüğünü fark ederseniz 503 hatasının nedeni hedef sunucudur.

    "503 Hizmet Kullanılamıyor" yanıtının alındığını gösteren örnek iz ekran görüntüsünü aşağıda bulabilirsiniz kaldırın:

  5. Hedef sunucudan yanıt alındı aşamasını tıklayın ve Yanıt Başlıkları ve Yanıt İçeriği bölümlerini inceleyerek yararlı bilgiler olup olmadığına bakın:
    • Yanıt Üstbilgileri Sunucu üstbilgisini içerebilir. Bu üstbilgi, hata yanıtının gönderildiği kaynaktır.
    • Yanıt içeriğinde bunun nedenleriyle ilgili ek bilgi olabilir hedef sunucu, 503 yanıt kodunu göndermiştir.
    ziyaret edin.
  6. 503 hatasının hedef sunucudan geldiğini doğrulamak için AX'taki X-Apigee-fault-source ve X-Apigee-fault-code değerleri (Kayıtlı Analiz Verileri) Aşağıda verilen adımları kullanarak izleme aşamasındaki aşamayı tamamlayın:
    1. Aşağıdaki ekran görüntüsünde gösterildiği gibi AX (Analytics Data Recorded) Aşaması'nı tıklayın:
    2. Aşama Ayrıntıları bölümünde Yanıt Başlıkları bölümüne ilerleyin ve ilgili değerleri belirleyin X-Apigee-fault-code ve X-Apigee-fault-source aşağıdaki gibi kaldırın:
    3. X-Apigee-fault-source ve X-Apigee-fault-code değerlerinin değerleri eşleşiyorsa aşağıdaki tabloda gösterildiği gibi, 503 hatasının hedef sunucu:
      Yanıt Başlıkları Değer
      X-Apigee-fault-source hedef
      X-Apigee-fault-code messaging.adaptors.http.flow.ErrorResponseCode
  7. Proxy zinciri kullanıp kullanmadığınızı (yani hedef sunucu/hedef uç noktasının başka bir proxy çağırıyor. Bunu belirlemek için:
    1. İstek hedef sunucuya gönderildi aşamasına dönün ve Curl'ü Göster düğmesini tıklayarak hedef sunucu ana makine takma adını belirleyin.
    2. Hedef sunucu ana makine takma adı, bir sanal ana makine takma adını işaret ediyorsa proxy zincirini kurabilirsiniz. Bu durumda, zincir mağaza için yukarıdaki tüm adımları tekrarlamanız gerekir. proxy'sini kontrol edin. Bu durumlarda, 503 Hizmet Kullanılamıyor durumu, diğer ve hangi aşamalarda teşhis edilebilir? bu başucu kitabını inceleyin.
    3. Hedef sunucu ana makine takma adı arka uç sunucunuzu işaret ediyorsa Çözüm.

NGINX erişim günlükleri

503 durum kodunun gönderilip gönderilmediğini belirlemek için NGINX lccess günlüklerine de bakabilirsiniz. arka uç sunucusu tarafından oluşturulur. Bu, özellikle sorun geçmişte meydana geldiyse yararlıdır veya sorun aralıklı olarak değişiyorsa ve kullanıcı arayüzünde izini yakalayamıyorsanız. NGINX erişim günlüklerindeki bu bilgileri belirlemek için aşağıdaki adımları uygulayın:

  1. NGINX erişim günlüklerini kontrol edin.
    /opt/apigee/var/log/edge-router/nginx/<org>~<env>.<port#>_access_log
  2. Belirli bir süre içinde belirli API proxy'si için 503 hatası olup olmadığını kontrol edin (sorun geçmişte oluşmuşsa) veya 503 ile hâlâ başarısız olan istekler için.
  3. Herhangi bir 503 hatası varsa hatanın arka uç sunucusundan gelip gelmediğini kontrol edin. X-Apigee-fault-source ve X-Apigee-fault-code değerleri değerler gösteriliyor Aşağıdaki tabloda 503 hatası arka uç sunucusundan gelmektedir:
    Yanıt Başlıkları Değer
    X-Apigee-fault-source hedef
    X-Apigee-fault-code messaging.adaptors.http.flow.ErrorResponseCode

    Aşağıda, hedef sunucunun neden olduğu 503 hatasını gösteren örnek bir giriş verilmiştir:

  4. İlgili API Proxy'sini inceleyin ve proxy zincirleme eğer hedef sunucu/hedef uç noktası, Apigee'de başka bir proxy çağırmıyor. Şunu kullanıyorsanız: zincirli proxy için yukarıdaki adımların tümünü tekrarlamanız gerekir. 503 Hizmet Kullanılamıyor hatasına gerçekte neyin sebep olduğunu belirlersiniz. Böyle durumlarda 503 Hizmet Kullanılamıyor durumu, diğer aşamalarda diğer zincirli proxy'lerde de ortaya çıkabilir. bu başucu kitabını kullanarak bunları teşhis edebilirsiniz.
  5. Proxy zinciri kullanmadığınızı ve 503 hatasının arka uç sunucusuna gidin ve Çözüm'e gidin.

Arka Uç Sunucuya Çağrı

Arka uç sunucusuna doğrudan çağrı yapabilir ve Apigee Edge üzerinden istek yapıldığında alınan "Hizmet Kullanılamıyor" yanıtı.

  1. Gerekli tüm üstbilgilere, sorgu parametrelerine ve arka uç sunucusuna iletilmelidir.
  2. Arka uç hizmeti herkesin erişimine açıksa curl komutunu kullanabilirsiniz. Postman veya başka bir REST istemcisini kullanarak arka uç sunucu API'sini doğrudan çağırabilir.
  3. Arka uç sunucusuna yalnızca İleti İşleyenler tarafından erişilebiliyorsa curl komutu, Postman veya başka bir REST İstemcisi'ni kullanabilir ve doğrudan arka uç sunucu API'sini çağırabilir seçmeniz gerekir.
  4. Arka uç hizmetinin gerçekten "503 Hizmet Kullanılamıyor" hatası döndürdüğünü doğrulayın.

Çözünürlük

503 hatasının arka uç sunucusundan geldiğini tespit ederseniz aşağıdaki adımları uygulayın:

  • Sorun, arka uç sunucusunun bakım için kapalı olmasından kaynaklanıyorsa arka uç sunucusunu bakım döneminden sonra internete taşıyabilirsiniz.
  • Sorun, arka uç sunucusunun aşırı yüklenmesinden kaynaklanıyorsa arka uç sunucusuna erişiminiz varsa sorunu düzeltin. Aksi halde Sorunu düzeltmek için arka uç sunucu ekibinizle çalışmanız gerekebilir.

API Monitoring'i kullanarak sorunları teşhis etme

API Monitoring, Google Cloud'dan bağımsız sorunları, performans ve sorunları teşhis etmek için ve gecikme sorunları ile bunların kaynağını (ör. geliştirici uygulamaları, API proxy'leri, arka uç hedefleri) veya API platformu.

Örnekte adım adım ilerleyin API'lerinizle 5xx sorunlarının nasıl giderileceğini gösteren senaryo API Monitoring'i kullanabilirsiniz. Örneğin, telefon numarasından haberdar olmanız için bir uyarı mesajlaşma.adaptors.http.flow.ErrorResponseCode hatasının sayısı belirli bir eşiği aşıyor.

Teşhis bilgileri toplanmalıdır

Yukarıdaki talimatları uygulamanıza rağmen sorun devam ederse lütfen inceleyip sizinle iletişime geçin ve Apigee Desteği.

Herkese açık bulut kullanıcısıysanız aşağıdaki bilgileri sağlayın:

  • Kuruluş Adı
  • Ortam Adı
  • API Proxy Adı
  • 503 hatasını yeniden oluşturmak için curl komutunu tamamlayın
  • 503 Hizmet Kullanılamıyor hatasına sahip istekleri içeren izleme dosyası
  • Şu anda 503 hataları görünmüyorsa dönemi saat dilimiyle sağlayın 503 hataları oluştuğunda e-posta ile ilgili bilgileri kontrol edin.

Özel bulut kullanıcısıysanız aşağıdaki bilgileri sağlayın:

  • Başarısız istekler için gözlemlenen tam hata mesajı.
  • 503 hatalarını gözlemlediğiniz Kuruluş, Ortam Adı ve API Proxy Adı.
  • API Proxy Paketi.
  • 503 Hizmet Kullanılamıyor hatasına sahip istekleri içeren izleme dosyası.
  • NGINX erişim günlükleri.
    /opt/apigee/var/log/edge-router/nginx/<org>~<env>.<port#>_access_log
  • İleti işleyen günlükleri.
    /opt/apigee/var/log/edge-message-processor/logs/system.log
  • 503 hatalarının ortaya çıktığı saat dilimi bilgilerini içeren dönem.