Apigee Edge belgelerini görüntülüyorsunuz.
.
Git:
Apigee X belgeleri. bilgi
Bu konuda neler öğreneceksiniz?
Bu konuyu okuduktan sonra, şunları öğrenmiş olacaksınız:
- Apigee Edge'de istek ve yanıt akışı nedir?
- İstek ve yanıt akışı ne zaman kullanılır?
- İstek ve yanıt akışını etkinleştirme
İstek ve yanıt akışı nedir?
Varsayılan olarak HTTP akışı devre dışıdır ve HTTP isteği ile yanıt yükleri bir API proxy ardışık düzeni tarafından işlenmeden önce arabelleğe alınır. Bu ayarı değiştirebilirsiniz. daha fazla kontrol sahibi olabilir. Akış etkinleştirildiğinde, istek ve yanıt yükleri istemci uygulamasında (yanıtlar için) ve hedef uç noktasında (yanıtlar için) istekleri) arasında yer alır.
Yayını ne zaman etkinleştirmeliyim?
API proxy'niz çok büyük istekleri ve/veya yanıtları işliyorsa (boyut sınırları için Akış hakkında bilmeniz gereken diğer noktalar aşağıdan), akışı etkinleştirmeyi düşünebilirsiniz.
Akış hakkında diğer bilmem gerekenler neler?
Mesaj yük boyutu Edge Cloud'da 10 MB ile sınırlıdır ve
Akış etkin olsa bile Private Cloud. Akışsız istek ve yanıtlarda,
bu boyut protocol.http.TooBigBody
hatasına neden olur.
Özel Bulut dağıtımları için Edge'de, akışta olmayan istek/yanıt boyutunu değiştirebilirsiniz limit. Değişikliği üretime dağıtmadan önce test ettiğinizden emin olun.
- 4.16.01'den önceki Edge for Private Cloud sürümleri için:
Tüm İleti İşleyicilerdehttp.properties
dosyasını düzenleyerek limitini belirleyin ve ardından yeniden başlatınHTTPResponse.body.buffer.limit
Mesaj İşleyen. -
Edge for Private Cloud'un 4.16.01 ve sonraki sürümleri için:
-
/<inst_root>/apigee/customer/application/message-processor.properties dosyasını düzenleyin. Dosya yoksa dosyayı oluşturun.
-
conf_http_HTTPResponse.body.buffer.limit değerini ayarlayın. özelliğini message-processor.properties içinde kullanın. Örneğin, örnek:
conf_http_HTTPResponse.body.buffer.limit=5m -
Mesaj İşleyici'yi yeniden başlatın:
> /<inst_root>/ ekip/Apigee-service/bin/gelir-hizmeti Edge-message-processor yeniden başlat -
Tüm mesaj işleyenler için bu işlemi tekrarlayın.
-
İstek ve yanıt akışını etkinleştirme
İstek akışını etkinleştirmek için request.streaming.enabled
eklemeniz gerekir
özelliğini proxy paketindeki ProxyEndpoint ve TargetEndpoint tanımlarına ekleyip
true
. Benzer şekilde, yanıt akışını etkinleştirmek için response.streaming.enabled
özelliğini ayarlayın.
Bu yapılandırma dosyalarını;
temsil eder. Yerel olarak geliştirme yapıyorsanız bu tanım dosyaları apiproxy/proxies
konumundadır
ve apiproxy/targets
.
Bu örnekte, TargetEndpoint'te hem istek hem de yanıt akışının nasıl etkinleştirileceği gösterilmektedir belirler.
<TargetEndpoint name="default"> <HTTPTargetConnection> <URL>http://mocktarget.apigee.net</URL> <Properties> <Property name="response.streaming.enabled">true</Property> <Property name="request.streaming.enabled">true</Property> <Property name="supports.http10">true</Property> <Property name="request.retain.headers">User-Agent,Referer,Accept-Language</Property> <Property name="retain.queryparams">apikey</Property> </Properties> </HTTPTargetConnection> </TargetEndpoint>
Bu örnekte, ProxyEndpoint'te yanıt ve istek akışının nasıl etkinleştirileceği gösterilmektedir tanım:
<ProxyEndpoint name="default"> <HTTPProxyConnection> <BasePath>/v1/weather</BasePath> <Properties> <Property name="allow.http10">true</Property> <Property name="response.streaming.enabled">true</Property> <Property name="request.streaming.enabled">true</Property> </Properties> </HTTPProxyConnection> </ProxyEndpoint>
Uç nokta tanımlarını yapılandırma hakkında daha fazla bilgi edinmek için Uç nokta özellikleri referansı başlıklı makaleyi inceleyin.
İlgili kod örnekler
GitHub'daki API proxy örneklerini indirmek ve kullanmak kolaydır. Daha fazla bilgi için Örnek API proxy'lerini kullanma bölümüne bakın. örnekleri indirin ve kullanın.
Akış özelliği sunan örnek proxy'ler şunlardır:
- akış: HTTP akışı için yapılandırılmış bir API proxy'sini gösterir.
- Uç Bilgilendirme: İmzalanmış URL Oluşturucu - İmzalanmış bir Büyük dosyalara istek veya yanıtta aktarmaya çalışmak yerine bunlara erişmek için kullanılacak URL.