Apigee Edge belgelerini görüntülüyorsunuz.
Apigee X belgelerine gidin. bilgi
Bu belgede, Apigee Edge Message Processors için G/Ç zaman aşımının nasıl yapılandırılacağı açıklanmaktadır.
Mesaj İşleyicisindeki G/Ç zaman aşımı, Mesaj İşleyicisinin zaman aşımına uğramadan önce arka uç sunucusundan yanıt almayı veya yuvayı arka uç sunucusuna istek yazmaya hazır olmasını beklediği süreyi ifade eder.
Mesaj İşleyici G/Ç zaman aşımı varsayılan değeri 55 seconds'dır. 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 G/Ç zaman aşımı, ihtiyaçlarınıza bağlı olarak varsayılan 55 seconds değerinden artırılabilir veya azaltılabilir. Aşağıdaki yerlerde yapılandırılabilir:
- API proxy'sinde
- Hedef uç nokta
- ServiceCallout politikası
- Mesaj İşleyici'de
Aşağıdaki özellikler, mesaj işlemcilerindeki G/Ç zaman aşımını kontrol eder:
| Mülk Adı | Konum | Açıklama |
|---|---|---|
io.timeout.millis
|
API proxy'si:
|
Bu, Mesaj İşleyici'nin aşağıdakileri yaptığı maksimum süredir:
Bu zaman aşımı süresi içinde arka uç sunucusundan yanıt gelmezse Mesaj İşleyici zaman aşımına uğrar.
Bu özellik, varsayılan olarak Mesaj İşleyici'deki Bu özellik belirli bir API proxy'si için yeni bir zaman aşımı değeriyle değiştirilirse yalnızca söz konusu API proxy'si etkilenir. |
HTTPTransport.io.timeout.millis
|
Mesaj İşleyici |
Bu, Mesaj İşleyici'nin aşağıdakileri yaptığı maksimum süredir:
Bu zaman aşımı süresi içinde arka uç sunucusundan yanıt gelmezse Mesaj İşleyici zaman aşımına uğrar. 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
Bu özelliği Configuring I/O timeout on Message Processors (Mesaj işlemcilerinde G/Ç zaman aşımını yapılandırma) bölümünde açıklandığı şekilde değiştirebilir veya API proxy düzeyinde |
Başlamadan önce
Bu belgedeki adımları kullanmadan önce aşağıdaki konuları anladığınızdan emin olun:
- G/Ç zaman aşımı hakkında bilginiz yoksa
TargetEndpoint Transport Property Specification'daki
io.timeout.millisözelliği açıklamasına bakın. - Edge for Private Cloud'da özellikleri yapılandırma konusunda bilginiz yoksa Edge'i yapılandırma başlıklı makaleyi inceleyin.
- G/Ç zaman aşımını yapılandırmayla ilgili en iyi uygulamalar bölümündeki önerileri uyguladığınızdan emin olun.
API proxy'sinde G/Ç zaman aşımını yapılandırma
G/Ç zaman aşımı aşağıdaki API proxy'si yerlerinde yapılandırılabilir:
- Hedef uç nokta
- ServiceCallout politikası
API proxy'sinin hedef uç noktasında G/Ç zaman aşımını yapılandırma
Bu bölümde, API proxy'nizin hedef uç noktasında G/Ç zaman aşımının nasıl yapılandırılacağı açıklanmaktadır.
G/Ç zaman aşımı, milisaniye cinsinden G/Ç zaman aşımı değerini temsil eden io.timeout.millis özelliği aracılığıyla yapılandırılabilir.
- Edge kullanıcı arayüzünde, yeni G/Ç zaman aşımı değerini yapılandırmak istediğiniz API proxy'sini seçin.
- Değiştirmek istediğiniz hedef uç noktayı seçin.
TargetEndpointyapılandırmasındaki<HTTPTargetConnection>öğesinin altına uygun bir değerleio.timeout.millisözelliğini ekleyin.- API proxy'nizde yapılan değişiklikleri kaydedin.
Örneğin, G/Ç zaman aşımını 120 saniyeye değiştirmek için aşağıdaki kod bloğunu ekleyin:
<Properties>
<Property name="io.timeout.millis">120000</Property>
</Properties>io.timeout.millis özelliği milisaniye cinsinden olduğundan 120 saniyelik değer 120000 olur.
Aşağıdaki örneklerde, API proxy'nizin hedef uç nokta yapılandırmasında G/Ç 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="io.timeout.millis">120000</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="io.timeout.millis">120000</Property>
</Properties>
<Path>/test</Path>
</HTTPTargetConnection>
</TargetEndpoint>API proxy'sinin ServiceCallout politikasında G/Ç zaman aşımını yapılandırma
Bu bölümde, API proxy'nizin ServiceCallout politikasında G/Ç zaman aşımının nasıl yapılandırılacağı açıklanmaktadır. G/Ç zaman aşımı, <Timeout> öğesi veya io.timeout.millis özelliği aracılığıyla yapılandırılabilir. Hem <Timeout> öğesi hem de io.timeout.millis özelliği, milisaniye cinsinden G/Ç zaman aşımı değerlerini temsil eder.
Aşağıdaki yöntemlerden birini kullanarak ServiceCallout politikasında G/Ç zaman aşımını yapılandırabilirsiniz:
<Timeout>öğesi.io.timeout.millismülk.
Zaman aşımı öğesi
<Timeout>
öğesini kullanarak ServiceCallout politikasında G/Ç zaman aşımını yapılandırmak için aşağıdakileri yapın:
- Edge kullanıcı arayüzünde, ServiceCallout politikası için yeni G/Ç zaman aşımı değerini yapılandırmak istediğiniz API proxy'sini seçin.
- Değiştirmek istediğiniz belirli ServiceCallout politikasını seçin.
-
<ServiceCallout>yapılandırması altına uygun bir değerle<Timeout>öğesini ekleyin.Örneğin, G/Ç zaman aşımını 120 saniyeye değiştirmek için aşağıdaki kod satırını ekleyin:
<Timeout>120000</Timeout>
<Timeout>öğesi milisaniye cinsinden olduğundan 120 saniyelik değer120000olur.Aşağıdaki örnekte,
<Timeout>öğesi kullanılarak ServiceCallout politikasında G/Ç 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>ServiceCallout-1</DisplayName> <Timeout>120000</Timeout> <HTTPTargetConnection> <Properties/> <URL>https://mocktarget.apigee.net/json</URL> </HTTPTargetConnection> </ServiceCallout> - API proxy'nizde yapılan değişiklikleri kaydedin.
io.timeout.millis özelliği
ServiceCallout politikasında G/Ç zaman aşımını io.timeout.millis özelliğini kullanarak yapılandırmak için aşağıdakileri yapın:
- Edge kullanıcı arayüzünde, ServiceCallout politikası için yeni G/Ç zaman aşımı değerini yapılandırmak istediğiniz API proxy'sini seçin.
- Değiştirmek istediğiniz belirli ServiceCallout politikasını seçin.
- Hedef uç nokta yapılandırmasındaki
<HTTPTargetConnection>öğesinin altına uygun bir değerleio.timeout.millisözelliğini ekleyin.Örneğin, G/Ç zaman aşımını 120 saniyeye değiştirmek için aşağıdaki kod bloğunu ekleyin:
<Properties> <Property name="io.timeout.millis">120000</Property> </Properties>io.timeout.millisözelliği milisaniye cinsinden olduğundan 120 saniyelik değer120000olur.Aşağıdaki örneklerde, API proxy'nizin hedef uç nokta yapılandırmasında G/Ç 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>ServiceCallout-1</DisplayName> <HTTPTargetConnection> <Properties> <Property name="io.timeout.millis">120000</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>ServiceCallout-1</DisplayName> <Response>calloutResponse</Response> <HTTPTargetConnection> <LoadBalancer> <Server name="target1" /> <Server name="target2" /> </LoadBalancer> <Properties> <Property name="io.timeout.millis">120000</Property> </Properties> <Path>/test</Path> </HTTPTargetConnection> </ServiceCallout> - API proxy'nizde yapılan değişiklikleri kaydedin.
Mesaj işlemcilerinde G/Ç zaman aşımını yapılandırma
Bu bölümde, ileti işlemcilerinde G/Ç zaman aşımının nasıl yapılandırılacağı açıklanmaktadır.
G/Ç zaman aşımı, HTTPTransport.io.timeout.millis özelliği aracılığıyla yapılandırılabilir. Bu özellik, Edge'i yapılandırma bölümünde açıklanan söz dizimine göre jeton kullanılarak Mesaj İşleyici bileşenindeki G/Ç zaman aşımı değerini milisaniye cinsinden ifade eder.
Edge'i yapılandırma.
İleti işlemcilerinde G/Ç zaman aşımını yapılandırmak için aşağıdakileri yapın:
- Mesaj İşleyici makinesinde aşağıdaki dosyayı bir düzenleyicide açın. Bu klasör yoksa oluşturun.
/opt/apigee/customer/application/message-processor.properties
Örneğin, dosyayı
vikullanarak açmak için aşağıdaki komutu girin:vi /opt/apigee/customer/application/message-processor.properties
- Özellikler dosyasına aşağıdaki biçimde bir satır ekleyin ve TIME_IN_MILLISECONDS yerine bir değer girin:
conf_http_HTTPTransport.io.timeout.millis=TIME_IN_MILLISECONDS
Örneğin, Mesaj İşleyici'deki G/Ç zaman aşımını 120 saniyeye değiştirmek için aşağıdaki satırı ekleyin:
conf_http_HTTPTransport.io.timeout.millis=120000
- Değişikliklerinizi kaydedin.
- Özellikler dosyasının, aşağıda gösterildiği gibi
apigeekullanıcısına ait olduğundan emin olun:chown apigee:apigee /opt/apigee/customer/application/message-processor.properties
- 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
- Birden fazla Mesaj İşleyiciniz varsa yukarıdaki adımları tüm Mesaj İşleyicilerde tekrarlayın.
Mesaj işlemcilerinde G/Ç zaman aşımını doğrulama
Bu bölümde, G/Ç zaman aşımının Mesaj İşleyiciler'de başarıyla değiştirilip değiştirilmediğini nasıl doğrulayacağınız açıklanmaktadır.
İleti işlemcisinde G/Ç zaman aşımını ayarlamak için conf_http_HTTPTransport.io.timeout.millis jetonunu kullansanız bile gerçek özelliğin HTTPTransport.io.timeout.millis yeni değerle ayarlanıp ayarlanmadığını doğrulamanız gerekir.
- Mesaj İşleyici makinesinde,
/opt/apigee/edge-message-processor/confdizinindeHTTPTransport.io.timeout.millisözelliğini arayın ve aşağıdaki gibi yeni değerle ayarlanıp ayarlanmadığını kontrol edin:grep -ri "HTTPTransport.io.timeout.millis" /opt/apigee/edge-message-processor/conf
- Yeni G/Ç zaman aşımı değeri Mesaj İşleyici'de başarıyla ayarlanırsa yukarıdaki komut,
http.propertiesdosyasında yeni değeri gösterir. - Mülk için hâlâ eski değeri görüyorsanız
HTTPTransport.io.timeout.millis, Mesaj işlemcilerinde G/Ç zaman aşımını yapılandırma başlıklı makalede açıklanan 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. - G/Ç zaman aşımını hâlâ değiştiremiyorsanız lütfen Apigee Edge Destek Ekibi ile iletişime geçin.
G/Ç zaman aşımını 120 saniye olarak yapılandırdıktan sonra yukarıdaki komutun örnek sonucu aşağıdaki gibidir:
/opt/apigee/edge-message-processor/conf/http.properties:HTTPTransport.io.timeout.millis=120000
Yukarıdaki örnek çıktıda, HTTPTransport.io.timeout.millis özelliğinin http.properties içinde yeni değer 120000 ile ayarlandığını unutmayın. Bu, G/Ç zaman aşımının, Mesaj İşleyici'de 120 saniye olarak başarıyla yapılandırıldığını gösterir.
Sırada ne var?
Aşağıdaki konular hakkında bilgi edinin: Yönlendiricilerde G/Ç zaman aşımını yapılandırma