Apigee Edge belgelerini görüntülüyorsunuz.
Apigee X belgelerine gidin. bilgi
Bu belgede, Apigee Edge'in Yönlendiricilerinde G/Ç zaman aşımının nasıl yapılandırılacağı açıklanmaktadır.
Yönlendiricideki G/Ç zaman aşımı, bağlantıyı kurduktan ve isteği Mesaj İşleyiciye gönderdikten sonra Yönlendiricinin Mesaj İşleyici'den yanıt almak için bekleyeceği süreyi temsil eder. Yönlendiricideki G/Ç zaman aşımının varsayılan değeri 57 saniyedir.
Yönlendiriciler için G/Ç zaman aşımı, ihtiyaçlarınıza göre varsayılan değer olan 57 saniyelik değerden artırılabilir veya azaltılabilir. Aşağıdaki şekillerde yapılandırılabilir:
- Sanal ana makinede
- Yönlendiricide
Aşağıdaki özellikler, Yönlendiricilerde G/Ç zaman aşımını kontrol eder:
Mülk Adı | Konum | Açıklama |
---|---|---|
proxy_read_timeout
|
Sanal ana makine |
Bağlantı kurulduktan ve isteği Mesaj İşleyiciye gönderdikten sonra Yönlendiricinin, Mesaj İşleyici'den yanıt almak için bekleyeceği maksimum süreyi belirtir. Bu zaman aşımı süresi içinde Mesaj İşleyici'den yanıt alamazsanız Yönlendirici zaman aşımına uğrar. Varsayılan olarak bu özellik, Yönlendiricide Bu özellik, belirli bir sanal ana makine için yeni bir zaman aşımı değeriyle değiştirilirse yalnızca söz konusu sanal ana makineyi kullanan API proxy'leri etkilenir. |
conf_load_balancing_load.balancing.driver.proxy.read.timeout
|
Yönlendirici |
Bağlantı kurulduktan ve isteği Mesaj İşleyiciye gönderdikten sonra Yönlendiricinin, Mesaj İşleyici'den yanıt almak için bekleyeceği maksimum süreyi belirtir. Bu zaman aşımı süresi içinde Mesaj İşleyici'den yanıt alamazsanız Yönlendirici zaman aşımına uğrar. Bu özellik, bu Yönlendirici üzerindeki tüm sanal ana makineler için kullanılır. Bu özelliğin varsayılan değeri 57 saniyedir. Bu özelliği aşağıdaki Yönlendiricilerde G/Ç zaman aşımını yapılandırma bölümünde açıklandığı şekilde değiştirebilir veya sanal ana makine düzeyinde Aşağıdaki gösterimi kullanarak bu özelliğin zaman aralığını saniyeden farklı bir değer olarak ayarlayabilirsiniz: ms: milliseconds s: seconds (default) m: minutes h: hours d: days w: weeks M: months (length of 30 days) y: years (length of 365 days) |
conf_load_balancing_load.balancing.driver.nginx.upstream_next_timeout
|
Yönlendirici |
Bağlantı kurulduktan ve isteği her Mesaj İşleyiciye gönderdikten sonra Yönlendirici'nin tüm Mesaj İşleyicilerinden yanıt almak için bekleyeceği toplam süreyi belirtir. Bu durum, Edge yüklemenizde birden fazla Mesaj İşleyicisi varsa ve hata oluştuğunda yeniden deneme etkinleştirildiğinde geçerlidir. Aşağıdakilerden biri değerine sahiptir:
|
Başlamadan önce
Bu belgedeki adımları kullanmadan önce aşağıdaki konuları anladığınızdan emin olun:
- Sanal ana makine özellikleri hakkında bilginiz yoksa Sanal ana makine mülkü referansı başlıklı makaleyi okuyun.
- Private Cloud'da Edge özelliklerini yapılandırma hakkında bilginiz yoksa Edge'yi yapılandırma bölümünü okuyun.
- G/Ç zaman aşımını yapılandırmayla ilgili en iyi uygulamalar önerilerini uyguladığınızdan emin olun.
Sanal ana makinede G/Ç zaman aşımını yapılandırma
Bu bölümde, bir kuruluş ve ortamla ilişkili sanal ana makinede G/Ç zaman aşımının nasıl yapılandırılacağı açıklanmaktadır. G/Ç zaman aşımı, sanal ana makinede proxy_read_timeout
özelliği aracılığıyla yapılandırılabilir. Bu özellik, G/Ç zaman aşımı değerini saniye cinsinden temsil eder.
Sanal ana bilgisayarı aşağıdaki yöntemlerden birini kullanarak yapılandırabilirsiniz:
- Edge kullanıcı arayüzü
- Edge API'sı
Edge kullanıcı arayüzü
Uç kullanıcı arayüzünü kullanarak sanal ana bilgisayarı yapılandırmak için aşağıdakileri yapın:
- Edge UI'ya giriş yapın.
- Admin > Virtual Hosts'a (Yönetici > Sanal Ana Makineler) gidin.
- Bu değişikliği yapmak istediğiniz belirli bir Ortam seçin.
- Yeni G/Ç zaman aşımı değerini yapılandırmak istediğiniz sanal ana makineyi seçin.
- Özellikler'in altında Proxy Okuma Zaman Aşımı değerini saniye cinsinden güncelleyin.
Örneğin, zaman aşımını 120 saniye olarak değiştirmek istiyorsanız aşağıdaki şekilde gösterildiği gibi 120 yazın:
- Değişikliği kaydedin.
Edge API'sı
Edge API'yi kullanarak sanal ana bilgisayarı yapılandırmak için aşağıdakileri yapın:
-
Get sanal ana makine API'sini kullanarak aşağıda gösterildiği gibi geçerli sanal ana makine yapılandırmasını alın:
Herkese açık bulut kullanıcısı
curl -v -X GET https//api.enterprise.apigee.com/v1/organizations/{organization-name}/environments/{environment-name}/virtualhosts/{virtualhost-name} -u <username>
Private Cloud kullanıcısı
curl -v -X GET http://<management-host>:<port #>/v1/organizations/{organization-name}/environments/{environment-name}/virtualhosts/{virtualhost-name} -u <username>
Burada:
{organization-name}, kuruluşun adıdır
{environment-name} ortamın adıdır.
{virtualhost-name}, sanal ana makinenin adıdır
Örnek sanal ana makine yapılandırması
{ "hostAliases": [ "api.myCompany,com" ], "interfaces": [], "listenOptions": [], "name": "secure", "port": "443", "retryOptions": [], "sSLInfo": { "ciphers": [], "clientAuthEnabled": "false", "enabled": "true", "ignoreValidationErrors": false, "keyAlias": "myCompanyKeyAlias", "keyStore": "ref://myCompanyKeystoreref", "protocols": [] }, "useBuiltInFreeTrialCert": false }
proxy_read_timeout
özelliğini, saniye cinsinden değerle birlikteproperties
altındaki mevcut sanal ana makine yapılandırması JSON yüküne ekleyin.Örneğin, G/Ç zaman aşımını 120 saniye olarak değiştirmek için
properties
kod bloğunu aşağıda gösterildiği gibi ekleyin:Güncellenmiş sanal ana makine yapılandırması örneği
{ "hostAliases": [ "api.myCompany,com", ], "interfaces": [], "listenOptions": [], "name": "secure", "port": "443", "retryOptions": [], "properties": { "property": [ { "name": "proxy_read_timeout", "value": "120" } ] }, "sSLInfo": { "ciphers": [], "clientAuthEnabled": "false", "enabled": "true", "ignoreValidationErrors": false, "keyAlias": "myCompanyKeyAlias", "keyStore": "ref://myCompanyKeystoreref", "protocols": [] }, "useBuiltInFreeTrialCert": false }
- Güncellenen sanal ana makine yapılandırmasını bir dosyaya kaydedin. Örneğin,
virtualhost-payload.json
. -
Bir sanal ana makineyi güncelle API'sini kullanarak, değişiklikle
virtualhost
yapılandırmasını aşağıdaki gibi güncelleyin:Herkese açık bulut kullanıcısı
curl -v -X POST Content-Type: application/json https://api.enterprise.apigee.com/v1/organizations/{organization-name}/environments/{environment-name}/virtualhosts/{virtualhost-name} -d @virtualhost-payload.json -u <username>
Private Cloud kullanıcısı
curl -v -X POST Content-Type: application/json http://<management-host>:<port #>/v1/organizations/{organization-name}/environments/{environment-name}/virtualhosts/{virtualhost-name} -d @virtualhost-payload.json -u <username>
Burada:
{organization-name}, kuruluşun adıdır
{environment-name} ortamın adıdır.
{virtualhost-name}, sanal ana makinenin adıdır
Sanal ana makinelerde G/Ç zaman aşımını doğrulama
Bu bölümde, G/Ç zaman aşımının Edge API kullanılarak sanal ana makinede başarıyla değiştirildiğini nasıl doğrulayacağınız açıklanmaktadır.
virtualhost
yapılandırmasını almak için aşağıda gösterildiği gibi Get virtual sunucu API'sini yürütün:Herkese açık bulut kullanıcısı
curl -v -X GET https://api.enterprise.apigee.com/v1/organizations/{organization-name}/environments/{environment-name}/virtualhosts/{virtualhost-name} -u <username>
Private Cloud kullanıcısı
curl -v -X GET http://<management server-host>:<port #>/v1/organizations/{organization-name}/environments/{environment-name}/virtualhosts/{virtualhost-name} -u <username>
Burada:
{organization-name}, kuruluşun adıdır
{environment-name} ortamın adıdır.
{virtualhost-name}, sanal ana makinenin adıdır
proxy_read_timeout
özelliğinin yeni değere ayarlandığını doğrulayın.Güncellenmiş sanal ana makine yapılandırması örneği
{ "hostAliases": [ "api.myCompany,com", ], "interfaces": [], "listenOptions": [], "name": "secure", "port": "443", "retryOptions": [], "properties": { "property": [ { "name": "proxy_read_timeout", "value": "120" } ] }, "sSLInfo": { "ciphers": [], "clientAuthEnabled": "false", "enabled": "true", "ignoreValidationErrors": false, "keyAlias": "myCompanyKeyAlias", "keyStore": "ref://myCompanyKeystoreref", "protocols": [] }, "useBuiltInFreeTrialCert": false }
Yukarıdaki örnekte,
proxy_read_timeout
değerinin 120 saniye olan yeni değerle ayarlandığını unutmayın.proxy_read_timeout,
öğesinin eski değerini görmeye devam ediyorsanız Sanal ana makinede G/Ç zaman aşımını yapılandırma bölümünde açıklanan tüm adımları uyguladığınızdan emin olun. Herhangi bir adımı atladıysanız tüm adımları doğru bir şekilde tekrar edin.- G/Ç zaman aşımını hâlâ değiştiremiyorsanız Apigee Edge Desteği ile iletişime geçin.
Yönlendiricilerde G/Ç zaman aşımını yapılandırma
Bu bölümde, Yönlendiricilerde G/Ç zaman aşımının nasıl yapılandırılacağı açıklanmaktadır. G/Ç zaman aşımı, G/Ç zaman aşımı değerini saniye cinsinden temsil eden conf_load_balancing_load.balancing.driver.proxy.read.timeout
Yönlendirici özelliği aracılığıyla yapılandırılabilir.
Yönlendiricilerde G/Ç zaman aşımını yapılandırmak için aşağıdakileri yapın:
- Yönlendirici makinesinde aşağıdaki dosyayı bir düzenleyicide açın. Henüz yoksa oluşturun.
/opt/apigee/customer/application/router.properties
Örneğin, dosyayı
vi
ile açmak için aşağıdaki komutu girin:vi /opt/apigee/customer/application/router.properties
properties
dosyasına,time_in_seconds
yerine aşağıdaki biçimde bir satır ekleyin:- Değişikliklerinizi kaydedin.
- Aşağıda gösterildiği gibi, bu mülkler dosyasının
apigee
kullanıcısına ait olduğundan emin olun:chown apigee:apigee /opt/apigee/customer/application/router.properties
- Yönlendiriciyi aşağıda gösterildiği gibi yeniden başlatın:
/opt/apigee/apigee-service/bin/apigee-service edge-router restart
- Birden fazla Yönlendiriciniz varsa yukarıdaki adımları tüm Yönlendiricilerde tekrarlayın.
conf_load_balancing_load.balancing.driver.proxy.read.timeout=time_in_seconds
Örneğin, Yönlendirici'deki G/Ç zaman aşımını 120 saniye olarak değiştirmek için aşağıdaki satırı ekleyin:
conf_load_balancing_load.balancing.driver.proxy.read.timeout=120
Ayrıca, G/Ç zaman aşımını dakika cinsinden değiştirebilirsiniz. Örneğin, zaman aşımını iki dakika olarak değiştirmek için aşağıdaki satırı ekleyin:
conf_load_balancing_load.balancing.driver.proxy.read.timeout=2m
Yönlendiricilerde G/Ç zaman aşımını doğrulama
Bu bölümde, G/Ç zaman aşımının yönlendiricilerde başarıyla değiştirildiğini nasıl doğrulayacağınız açıklanmaktadır.
Yönlendiricide G/Ç zaman aşımını ayarlamak için conf_load_balancing_load.balancing.driver.proxy.read.timeout
jetonunu kullansanız bile proxy_read_timeout
gerçek özelliğinin yeni değerle ayarlanıp ayarlanmadığını doğrulamanız gerekir.
/opt/nginx/conf.d
dizinindeproxy_read_timeout
özelliğini arayın ve aşağıdaki şekilde yeni değerle ayarlanıp ayarlanmadığını kontrol edin:grep -ri "proxy_read_timeout" /opt/nginx/conf.d
- Yeni G/Ç zaman aşımı değeri yönlendiricide başarıyla ayarlanmışsa yukarıdaki komut tüm sanal ana makine yapılandırma dosyalarında yeni değeri gösterir.
Aşağıda, G/Ç zaman aşımı 120 saniye olduğunda yukarıdaki
grep
komutundan alınan örnek sonuç verilmiştir:/opt/nginx/conf.d/0-default.conf:proxy_read_timeout 120; /opt/nginx/conf.d/0-edge-health.conf:proxy_read_timeout 1s;
Yukarıdaki örnek çıkışta, varsayılan sanal ana makinenin yapılandırma dosyası olan
0-default.conf
öğesindeproxy_read_timeout
özelliğinin yeni 120 değeriyle ayarlandığına dikkat edin. Bu, G/Ç zaman aşımının Yönlendiricide 120 saniye olacak şekilde başarıyla yapılandırıldığını belirtir. proxy_read_timeout
mülkünün eski değerini görmeye devam ediyorsanız Yönlendiricilerde G/Ç zaman aşımını yapılandırma bölümünde 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.- G/Ç zaman aşımını hâlâ değiştiremiyorsanız Apigee Edge Desteği ile iletişime geçin.
Sırada ne var?
İleti İşleyicide G/Ç Zaman Aşımını Yapılandırma hakkında bilgi edinin