Mesaj İşleyicilerde bağlantı zaman aşımını yapılandırma

Apigee Edge belgelerini görüntülüyorsunuz.
Apigee X belgelerine gidin.
bilgi

Bu belgede, Apigee Edge Message Processors için bağlantı zaman aşımının nasıl yapılandırılacağı açıklanmaktadır.

Bağlantı zaman aşımı, Mesaj İşlemcisinin hedef sunucuyla bağlantı kurmak için beklediği süreyi ifade eder. Mesaj İşleyici'deki bağlantı zaman aşımı özelliğinin varsayılan değeri 3 saniyedir. Bu zaman aşımı süresi, hedef uç nokta yapılandırmasında ve API proxy'nizin ServiceCallout politikasında yapılandırılan arka uç sunucular için geçerlidir.

Mesaj İşleyiciler için bağlantı zaman aşımı, ihtiyaçlarınıza bağlı olarak varsayılan 3 saniye değerinden artırılabilir veya azaltılabilir. Aşağıdaki şekillerde yapılandırılabilir:

  • API proxy'sinde
    • Hedef uç noktada
    • ServiceCallout politikası kapsamında
  • Mesaj İşleyici'de

Aşağıdaki özellikler, mesaj işlemcilerindeki bağlantı zaman aşımını kontrol eder:

Mülk adı Konum Açıklama
connect.timeout.millis API proxy'si:
  • Hedef uç nokta
  • ServiceCallout ile ilgili politika

Bu, Mesaj İşleyicisi'nin hedef sunucuya bağlanmak için beklediği maksimum süredir.

Bu özellik, varsayılan olarak Mesaj İşleyici'deki HTTPClient.connect.timeout.millis özelliği için ayarlanan değeri alır. Varsayılan değer 3 saniyedir.

Bu özellik, bir API proxy'siyle ilişkili hedef sunucu için yeni bir zaman aşımı değeriyle değiştirilirse yalnızca söz konusu hedef sunucunun bağlantı süresi etkilenir.

HTTPClient.connect.timeout.millis Mesaj İşleyici

Bu, Mesaj İşleyicisi'nin hedef sunucuya bağlanmak için beklediği maksimum süredir.

Bu özellik, bu Mesaj İşleyici'de çalışan tüm API proxy'leri için kullanılır.

Bu özelliğin varsayılan değeri 3 saniyedir.

Bu özelliği, aşağıdaki Mesaj işlemcilerinde bağlantı zaman aşımını yapılandırma bölümünde açıklandığı şekilde değiştirebilir veya connect.timeout.millis özelliğini API proxy düzeyinde ayarlayarak bu değerin üzerine yazabilirsiniz.

Başlamadan önce

Bu belgedeki adımları kullanmadan önce aşağıdaki konuları anladığınızdan emin olun:

API proxy'sinde bağlantı zaman aşımını yapılandırma

Bağlantı zaman aşımı, API proxy'sinde aşağıdaki yerlerde yapılandırılabilir:

  • Hedef uç nokta
  • ServiceCallout ile ilgili politika

API proxy'sinin hedef uç noktasında bağlantı zaman aşımını yapılandırma

Bu bölümde, API proxy'nizin hedef uç noktasında bağlantı zaman aşımının nasıl yapılandırılacağı açıklanmaktadır. Bağlantı zaman aşımı, milisaniye cinsinden bağlantı zaman aşımı değerini temsil eden connect.timeout.millis özelliği aracılığıyla yapılandırılabilir.

  1. Edge kullanıcı arayüzünde, yeni bağlantı zaman aşımı değerini yapılandırmak istediğiniz API proxy'sini seçin.
  2. Değiştirmek istediğiniz hedef uç noktayı seçin.
  3. TargetEndpoint yapılandırmasındaki <HTTPTargetConnection> öğesinin altına uygun bir değerle connect.timeout.millis özelliğini ekleyin.

    Örneğin, bağlantı zaman aşımını 5 saniye olarak değiştirmek için aşağıdaki kod bloğunu ekleyin:

    <Properties>
      <Property name="connect.timeout.millis">5000</Property>
    </Properties>

    connect.timeout.millis özelliği milisaniye cinsinden olduğundan 5 saniyenin değeri 5000 olur.

    Aşağıdaki örneklerde, API proxy'nizin hedef uç nokta yapılandırmasında bağlantı zaman aşımının nasıl yapılandırılacağı gösterilmektedir:

    Arka uç sunucusu için URL'nin kullanıldığı örnek hedef uç nokta yapılandırması

    <TargetEndpoint name="default">
      <HTTPTargetConnection>
        <URL>https://mocktarget.apigee.net/json</URL>
        <Properties>
          <Property name="connect.timeout.millis">5000</Property>
        </Properties>
      </HTTPTargetConnection>
    </TargetEndpoint>

    Hedef sunucuyu kullanarak hedef uç nokta yapılandırması örneği

    <TargetEndpoint name="default">
      <HTTPTargetConnection>
        <LoadBalancer>
          <Server name="target1" />
          <Server name="target2" />
        </LoadBalancer>
        <Properties>
          <Property name="connect.timeout.millis">5000</Property>
        </Properties>
        <Path>/test</Path>
      </HTTPTargetConnection>
    </TargetEndpoint>
  4. API proxy'nizde yapılan değişiklikleri kaydedin.

API proxy'sinin ServiceCallout politikasında bağlantı zaman aşımını yapılandırma

Bu bölümde, API proxy'nizin ServiceCallout politikasında bağlantı zaman aşımının nasıl yapılandırılacağı açıklanmaktadır. Bağlantı zaman aşımı, milisaniye cinsinden bağlantı süresi değerini temsil eden connect.timeout.millis özelliği aracılığıyla yapılandırılabilir.

ServiceCallout politikasında bağlantı zaman aşımını connect.timeout.millis özelliğini kullanarak yapılandırmak için:

  1. Edge kullanıcı arayüzünde, ServiceCallout politikası için yeni bağlantı zaman aşımı değerini yapılandırmak istediğiniz API proxy'sini seçin.
  2. Değiştirmek istediğiniz ServiceCallout politikasını seçin.
  3. TargetEndpoint yapılandırmasındaki <HTTPTargetConnection> öğesinin altına uygun bir değerle connect.timeout.millis özelliğini ekleyin.

    Örneğin, bağlantı zaman aşımını 5 saniye olarak değiştirmek için aşağıdaki kod bloğunu ekleyin:

    <Properties>
      <Property name="connect.timeout.millis">5000</Property>
    </Properties>

    connect.timeout.millis özelliği milisaniye cinsinden olduğundan 5 saniyenin değeri 5000 olur.

    Aşağıdaki örneklerde, API proxy'nizin ServiceCallout politikasında bağlantı zaman aşımının nasıl yapılandırılacağı gösterilmektedir:

    Arka uç sunucusu için URL kullanan örnek ServiceCallout politikası yapılandırması

    <ServiceCallout name="Service-Callout-1">
      <DisplayName>Service Callout-1</DisplayName>
      <HTTPTargetConnection>
        <Properties>
          <Property name="connect.timeout.millis">5000</Property>
        </Properties>
        <URL>https://mocktarget.apigee.net/json</URL>
      </HTTPTargetConnection>
    </ServiceCallout>

    Hedef sunucuyu kullanan örnek ServiceCallout politikası yapılandırması

    <ServiceCallout enabled="true" name="Service-Callout-1">
      <DisplayName>Service Callout-1</DisplayName>
      <Response>calloutResponse</Response>
      <HTTPTargetConnection>
        <LoadBalancer>
          <Server name="target1" />
          <Server name="target2" />
        </LoadBalancer>
        <Properties>
          <Property name="connect.timeout.millis">5000</Property>
        </Properties>
      <Path>/test</Path>
      </HTTPTargetConnection>
    </ServiceCallout>
  4. API proxy'nizde yapılan değişiklikleri kaydedin.

Mesaj işlemcilerde bağlantı zaman aşımını yapılandırma

Bu bölümde, ileti işlemcilerinde bağlantı zaman aşımının nasıl yapılandırılacağı açıklanmaktadır. Bağlantı zaman aşımı, Edge'i yapılandırma bölümünde açıklanan söz dizimine göre jeton kullanılarak, Message Processor bileşenindeki bağlantı zaman aşımı değerini milisaniye cinsinden temsil eden conf_http_HTTPClient.connect.timeout.millis özelliği aracılığıyla yapılandırılabilir.

İleti işlemcilerinde bağlantı zaman aşımını yapılandırmak için aşağıdakileri yapın:

  1. Mesaj İşleyici makinesinde aşağıdaki dosyayı bir düzenleyicide açın. Mevcut değilse oluşturun.
    /opt/apigee/customer/application/message-processor.properties

    Örneğin, dosyayı vi kullanarak açmak için: şunu girin:

    vi /opt/apigee/customer/application/message-processor.properties
    
  2. Özellikler dosyasına aşağıdaki biçimde bir satır ekleyin ve TIME_IN_MILLISECONDS yerine bir değer girin:
    conf_http_HTTPClient.connect.timeout.millis=TIME_IN_MILLISECONDS

    Örneğin, Mesaj İşleyici'deki bağlantı zaman aşımını 5 saniye olarak değiştirmek için aşağıdaki satırı ekleyin:

    conf_http_HTTPClient.connect.timeout.millis=5000
  3. Değişikliklerinizi kaydedin.
  4. Özellikler dosyasının, aşağıda gösterildiği gibi apigee kullanıcısına ait olduğundan emin olun:
    chown apigee:apigee /opt/apigee/customer/application/message-processor.properties
    
  5. Mesaj İşleyici'yi aşağıda gösterildiği gibi yeniden başlatın:
    /opt/apigee/apigee-service/bin/apigee-service edge-message-processor restart
    
  6. Birden fazla Mesaj İşleyiciniz varsa yukarıdaki adımları tüm Mesaj İşleyicilerde tekrarlayın.

İleti işlemcilerinde bağlantı zaman aşımını doğrulama

Bu bölümde, bağlantı zaman aşımının Mesaj İşleyiciler'de başarıyla değiştirildiğini nasıl doğrulayacağınız açıklanmaktadır.

Bağlantı zaman aşımını Mesaj İşleyici'de ayarlamak için conf_http_HTTPClient.connect.timeout.millis jetonunu kullanıyor olsanız bile gerçek özelliğin HTTPClient.connect.timeout.millis yeni değerle ayarlanıp ayarlanmadığını doğrulamanız gerekir.

  1. Mesaj İşleyici makinesinde, /opt/apigee/edge-message-processor/conf dizininde HTTPTransport.connect.timeout.millis özelliğini arayın ve aşağıdaki gibi yeni değerle ayarlanıp ayarlanmadığını kontrol edin:
    grep -ri "HTTPClient.connect.timeout.millis" /opt/apigee/edge-message-processor/conf
    
  2. Yeni bağlantı zaman aşımı değeri, Mesaj İşleyici'de başarıyla ayarlanırsa yukarıdaki komut, http.properties dosyasında yeni değeri gösterir.

    Bağlantı zaman aşımını 5 saniye olarak yapılandırdıktan sonra yukarıdaki komuttan elde edilen örnek sonuç aşağıdaki gibidir:

    /opt/apigee/edge-message-processor/conf/http.properties:HTTPClient.connect.timeout.millis=5000

    Yukarıdaki örnek çıktıda, HTTPClient.connect.timeout.millis özelliğinin http.properties içinde yeni değer 5000 ile ayarlandığını unutmayın. Bu, bağlantı zaman aşımının Mesaj İşleyici'de 5 saniye olarak başarıyla yapılandırıldığını gösterir.

  3. Mülk için hâlâ eski değeri görüyorsanız HTTPClient.connect.timeout.millis, Mesaj işlemcilerinde bağlantı zaman aşımını yapılandırma bölümünde belirtilen tüm adımları doğru şekilde uyguladığınızı doğrulayın. Herhangi bir adımı atladıysanız tüm adımları tekrar doğru şekilde uygulayın.
  4. Bağlantı zaman aşımını hâlâ değiştiremiyorsanız Google Cloud Apigee Edge Destek Ekibi ile iletişime geçin.