Mesaj İşleyenler'de canlı tutma zaman aşımını yapılandırma

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

Bu belgede, Apigee Edge Mesaj İşleyicileri için canlı tutma zaman aşımının nasıl yapılandırılacağı açıklanmaktadır.

Mesaj İşleyici'deki koruma zaman aşımı, her istek/yanıt çifti için yeni bir bağlantı açmak yerine, tek bir TCP bağlantısının arka uç sunucusuna birden fazla HTTP isteği/yanıtı gönderip almasına olanak tanır.

Mesaj İşleyici'deki Keep alive zaman aşımı özelliğinin varsayılan değeri 60 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 İşleyicileri için canlı tutma zaman aşımı, ihtiyaçlarınıza göre varsayılan değer olan 60 saniyelik değerden artırılabilir veya azaltılabilir. Aşağıdaki şekillerde yapılandırılabilir:

  • API proxy'sinde
    • Hedef uç noktasında
    • ServiceCallout politikasında
  • Mesaj İşleyici Hakkında

Aşağıdaki özellikler, Mesaj İşleyicilerinde keep alive zaman aşımını kontrol eder:

Mülk adı Konum Açıklama
keepalive.timeout.millis API proxy'si:
  • Hedef uç nokta
  • ServiceCallout politikası

Bu, Mesaj İşleyicinin her istek/yanıt çifti için yeni bir bağlantı açmak yerine tek bir TCP bağlantısının birden fazla HTTP isteği/yanıtı gönderip almasına izin verdiği maksimum boşta kalma süresidir.

Varsayılan olarak bu özellik, Mesaj İşleyici'de HTTPClient.keepalive.timeout.millis özelliği için ayarlanan değeri alır. Burada varsayılan değer 60 saniyedir.

Bu özellik, hedef uç noktasında kullanılan hedef sunucu için yeni bir zaman aşımı değeriyle veya belirli API proxy'sindeki ServiceCallout politikasıyla değiştirilirse yalnızca söz konusu hedef sunucu için geçerlilik süresi etkilenir.

HTTPClient.keepalive.timeout.millis Mesaj İşleyici

Bu, Mesaj İşleyicinin her istek/yanıt çifti için yeni bir bağlantı açmak yerine tek bir TCP bağlantısının birden fazla HTTP isteği/yanıtı gönderip almasına izin verdiği maksimum boşta kalma süresidir.

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

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

Bu özelliği aşağıdaki Mesaj İşleyicilerde koruma zaman aşımını yapılandırma bölümünde açıklandığı gibi değiştirebilir veya keepalive.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 keep alive zaman aşımını yapılandırma

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

  • Hedef uç nokta
  • ServiceCallout politikası

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

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

  1. Edge kullanıcı arayüzünde, yeni "Canlı tut" zaman aşımı değerini yapılandırmak istediğiniz API proxy'sini seçin.
  2. Değiştirmek istediğiniz belirli hedef uç noktasını seçin.
  3. TargetEndpoint yapılandırmasındaki <HTTPTargetConnection> öğesi altında, uygun bir değerle keepalive.timeout.millis özelliğini ekleyin.

    Örneğin, canlı tutma zaman aşımını 30 saniye olarak değiştirmek için aşağıdaki kod bloğunu ekleyin:

    <Properties>
      <Property name="keepalive.timeout.millis">30000</Property>
    </Properties>
    

    keepalive.timeout.millis özelliği milisaniye cinsinden olduğundan 30 saniye değeri 30000 şeklindedir.

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

    Arka uç sunucu için URL kullanan örnek hedef uç nokta yapılandırması

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

    Hedef sunucu kullanılan örnek hedef uç nokta yapılandırması

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

API proxy'sinin ServiceCall politikasında keep alive zaman aşımını yapılandırma

Bu bölümde, API proxy'nizin ServiceCallout politikasında keep alive zaman aşımının nasıl yapılandırılacağı açıklanmaktadır. Canlı tutma zaman aşımı, milisaniye cinsinden koruma zaman aşımı değerini temsil eden the keepalive.timeout.millis özelliği aracılığıyla yapılandırılabilir.

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

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

    Örneğin, canlı tutma zaman aşımını 30 saniye olarak değiştirmek için aşağıdaki kod bloğunu ekleyin:

    <Properties>
      <Property name="keepalive.timeout.millis">30000</Property>
    </Properties>
    

    keepalive.timeout.millis özelliği milisaniye cinsinden olduğundan 30 saniye değeri 30000 şeklindedir.

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

    Arka uç sunucu için URL kullanan örnek ServiceCaption politika yapılandırması

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

    Hedef sunucu kullanan örnek ServiceCallout politika 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="keepalive.timeout.millis">30000</Property>
        </Properties>
        <Path>/test</Path>
      </HTTPTargetConnection>
    </ServiceCallout>
    
  4. API proxy'nizde yapılan değişiklikleri kaydedin.

Mesaj İşleyicilerinde Keep alive zaman aşımını yapılandırma

Bu bölümde, Mesaj İşleyicilerinde keep alive zaman aşımının nasıl yapılandırılacağı açıklanmaktadır. Keep alive zaman aşımı, Mesaj İşleyici bileşeninde milisaniye cinsinden koruma zaman aşımı değerini temsil eden HTTPClient.keepalive.timeout.millis özelliği aracılığıyla yapılandırılabilir. Bu özellik Mesaj İşleyici'ye yorumlandığından, Edge'yi yapılandırma bölümündeki Şu anda yorum eklenmiş olan bir jeton ayarlama bölümünde açıklanan şekilde conf/http.properties+HTTPClient.keepalive.timeout.millis özel söz dizimini kullanmanız gerekir.

İleti İşleyicilerinde keep alive zaman aşımını yapılandırmak için aşağıdakileri yapın:

  1. Message Processor makinesinde, aşağıdaki dosyayı bir düzenleyicide açın. Henüz yoksa 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 değeriyle değiştirin:
    conf/http.properties+HTTPClient.keepalive.timeout.millis=TIME_IN_MILLISECONDS
    

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

    conf/http.properties+HTTPClient.keepalive.timeout.millis=30000
    
  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 tüm Mesaj İşleyiciler için yukarıdaki adımları tekrarlayın.

Mesaj İşleyicilerinde canlı tutma zaman aşımını doğrulama

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

Mesaj işlemcisinde keep alive zaman aşımını ayarlamak için conf/http.properties+HTTPClient.keepalive.timeout.millis özel söz dizimini kullansanız da HTTPClient.keepalive.timeout.millis gerçek özelliğinin yeni değerle ayarlanıp ayarlanmadığını doğrulamanız gerekir.

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

    keep alive zaman aşımını 30 saniye olarak yapılandırdıktan sonra yukarıdaki komuttan alınan örnek sonuç aşağıdaki gibidir:

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

    Yukarıdaki örnek çıkışta, HTTPClient.keepalive.timeout.millis özelliğinin http.properties içindeki yeni 30000 değeriyle ayarlandığına dikkat edin. Bu, keep alive zaman aşımının Mesaj İşleyicide 30 saniye olarak başarıyla yapılandırıldığını gösterir.

  3. HTTPClient.keepalive.timeout.millis mülkünün eski değerini görmeye devam ediyorsanız Mesaj İşleyicilerde Keep alive zaman aşımını yapılandırma başlıklı makalede açıklanan tüm adımları doğru şekilde uyguladığınızdan emin olun. Herhangi bir adımı atladıysanız tüm adımları doğru bir şekilde tekrar edin.
  4. Koruma zaman aşımını hâlâ değiştiremiyorsanız Google Cloud Apigee Edge Desteği ile iletişime geçin.