درحال مشاهده اسناد Apigee Edge هستید.
به
اسناد Apigee X بروید. اطلاعات
این سند توضیح میدهد که چگونه زمان اتمام مهلت فعال نگه داشتن را برای «پردازشگرهای پیام» Apigee Edge پیکربندی کنید.
مهلت زمانی فعال نگه داشتن در «پردازشگر پیام» به یک اتصال TCP اجازه میدهد بهجای باز کردن اتصال جدید برای هر جفت درخواست/پاسخ، چندین درخواست/پاسخ HTTP را از/به سرور پشتیبان ارسال و دریافت کند.
مقدار پیشفرض دارایی مهلت زمانی فعال نگه داشتن در «پردازشگر پیام»
60 ثانیه است. این دوره زماندار برای سرورهای زیرینه پیکربندیشده در پیکربندی نقطه پایان هدف و در خطمشی ServiceCallout کارگزار نیابتی API شما اعمال میشود.
مهلت زمانی فعال نگه داشتن «پردازشگرهای پیام» را میتوانید براساس نیازهایتان از مقدار پیشفرض 60 ثانیه افزایش یا کاهش دهید. میتواند به روشهای زیر پیکربندی شود:
- در پراکسی API
- در نقطه پایان هدف
- در خطمشی
ServiceCallout
- در «پردازشگر پیام»
خصوصیات زیر مهلت زمانی زنده نگه داشتن را در «پردازشگرهای پیام» کنترل میکنند:
| نام دارایی | مکان | شرح |
|---|---|---|
keepalive.timeout.millis |
کارگزار میانای برنامهسازی کاربردی:
|
این حداکثر زمان بیکاری است که «پردازشگر پیام» به اتصال TCP واحدی اجازه میدهد چندین درخواست/پاسخ HTTP را ارسال و دریافت کند، بهجای اینکه برای هر جفت درخواست/پاسخ اتصال جدیدی باز کند. بهطور پیشفرض، این دارایی مقدار تنظیمشده برای دارایی
اگر این دارایی با مقدار مهلت زمانی جدیدی برای سرور هدف مورداستفاده در
نقطه پایانی هدف یا خطمشی |
HTTPClient.keepalive.timeout.millis |
پردازشگر پیام |
این حداکثر زمان بیکاری است که «پردازشگر پیام» به یک اتصال TCP اجازه میدهد چندین درخواست/پاسخ HTTP را ارسال و دریافت کند، بهجای اینکه برای هر جفت درخواست/پاسخ اتصال جدیدی باز کند. این دارایی برای همه پراکسیهای API که در این «پردازشگر پیام» اجرا میشوند استفاده میشود. مقدار پیشفرض این دارایی میتوانید این دارایی را همانطور که در
پیکربندی مهلت زمانی فعال نگه داشتن در «پردازشگرهای پیام»
در زیر توضیح داده شده است اصلاح کنید، یا میتوانید این مقدار را با تنظیم دارایی |
قبلاز شروع
قبلاز استفاده از مراحل این سند، مطمئن شوید که موضوعات زیر را درک میکنید:
- اگر با مهلت زمانی فعال نگه داشتن آشنا نیستید، شرح دارایی
keepalive.timeout.millisرا در مشخصات دارایی انتقال «نقطه پایانی هدف» ببینید. - اگر با پیکربندی داراییها برای Edge در «ابر خصوصی» آشنا نیستید، نحوه پیکربندی Edge را بخوانید.
پیکربندی کردن مهلت زمانی فعال نگه داشتن در پراکسی میانای برنامهسازی کاربردی
مهلت زمانی فعال نگه داشتن را میتوانید در کارگزار نیابتی API در مکانهای زیر پیکربندی کنید:
- نقطه پایانی هدف
- خطمشی
ServiceCallout
پیکربندی مهلت زمانی فعال نگه داشتن در نقطه پایان هدف میانای برنامهسازی کاربردی پراکسی
این بخش توضیح میدهد که چگونه مهلت زمانی فعال نگه داشتن را در نقطه پایانی هدف
کارگزار پراکسی API پیکربندی کنید. مهلت زمانی فعال نگه داشتن را میتوان ازطریق دارایی
keepalive.timeout.millis پیکربندی کرد که نشاندهنده مقدار مهلت زمانی فعال نگه داشتن به میلیثانیه است.
- در «میانای کاربر Edge»، پراکسی API خاصی را که میخواهید مقدار جدید مهلت زمانی فعال نگه داشتن را در آن پیکربندی کنید انتخاب کنید.
- نقطه پایانی هدف خاصی را که میخواهید اصلاح کنید انتخاب کنید.
-
دارایی
keepalive.timeout.millisرا با مقدار مناسب در عنصر<HTTPTargetConnection>در پیکربندیTargetEndpointاضافه کنید.برای مثال، برای تغییر «مهلت زمانبندی» فعال نگه داشتن به
30ثانیه، بلوک کد زیر را اضافه کنید:<Properties> <Property name="keepalive.timeout.millis">30000</Property> </Properties>
ازآنجاییکه دارایی
keepalive.timeout.millisبرحسب میلیثانیه است، مقدار30ثانیه برابر با30000است.مثالهای زیر نحوه پیکربندی مهلت زمانی فعال نگه داشتن در پیکربندی نقطه پایانی هدف میانای برنامهسازی کاربردی شما را نشان میدهد:
نمونه پیکربندی نقطه پایان هدف بااستفاده از نشانی وب برای سرور زیرینه
<TargetEndpoint name="default"> <HTTPTargetConnection> <URL>https://mocktarget.apigee.net/json</URL> <Properties> <Property name="keepalive.timeout.millis">30000</Property> </Properties> </HTTPTargetConnection> </TargetEndpoint>نمونه پیکربندی نقطه پایانی هدف بااستفاده از سرور هدف
<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> - تغییرات ایجادشده در پراکسی API را ذخیره کنید.
درحال پیکربندی مهلت زمانی فعال نگه داشتن در خطمشی ServiceCallout میانای برنامهسازی کاربردی
این بخش توضیح میدهد که چگونه مهلت زمانی فعال نگه داشتن را در خطمشی
ServiceCallout کارگزار نیابتی API خود پیکربندی کنید. درنگ زنده نگه داشتن را میتوان ازطریق
دارایی the keepalive.timeout.millis پیکربندی کرد که نشاندهنده
مقدار درنگ زنده نگه داشتن به میلیثانیه است.
برای پیکربندی کردن مهلت زمانی فعال نگه داشتن در خطمشی ServiceCallout بااستفاده از
دارایی keepalive.timeout.millis:
- در «میانای کاربر Edge»، پراکسی API خاصی را که میخواهید مقدار
مهلت زمانی فعال نگه داشتن جدید را برای خطمشی
ServiceCalloutپیکربندی کنید انتخاب کنید. - خطمشی
ServiceCalloutخاصی را که میخواهید اصلاح کنید انتخاب کنید. - دارایی
keepalive.timeout.millisرا با مقدار مناسب در عنصر<HTTPTargetConnection>در پیکربندیTargetEndpointاضافه کنید.برای مثال، برای تغییر دادن مهلت زمانی فعال نگه داشتن به
30ثانیه، بلوک کد زیر را اضافه کنید:<Properties> <Property name="keepalive.timeout.millis">30000</Property> </Properties>
ازآنجاییکه دارایی
keepalive.timeout.millisبرحسب میلیثانیه است، مقدار30ثانیه برابر با30000است.مثالهای زیر نحوه پیکربندی مهلت زمانی فعال نگه داشتن را در خطمشی
ServiceCalloutپراکسی API نشان میدهد:پیکربندی خطمشی «برنمای تماس با سرویس» نمونه بااستفاده از نشانی وب برای سرور زیرینه
<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>پیکربندی خطمشی «خدمات تماس» نمونه بااستفاده از سرور هدف
<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> - تغییرات ایجادشده در پراکسی API را ذخیره کنید.
پیکربندی کردن مهلت زمانی فعال نگه داشتن در «پردازشگرهای پیام»
این بخش توضیح میدهد که چگونه مهلت زمانی «فعال نگه داشتن» را در «پردازشگرهای پیام» پیکربندی کنید. درنگ
«فعال نگه داشتن» را میتوان ازطریق دارایی
HTTPClient.keepalive.timeout.millis پیکربندی کرد که مقدار درنگ
«فعال نگه داشتن» را در میلیثانیه در عنصر «پردازشگر پیام» نشان میدهد. ازآنجاییکه این دارایی در
«پردازشگر پیام» شرح داده شده است، باید از نحو ویژه
conf/http.properties+HTTPClient.keepalive.timeout.millis که در بخش
تنظیم نشانهای که درحالحاضر در
نحوه پیکربندی Edge شرح داده شده است استفاده کنید.
برای پیکربندی کردن مهلت زمانی فعال نگه داشتن در «پردازشگرهای پیام»، این کارها را انجام دهید:
- در دستگاه «پردازشگر پیام»، فایل زیر را در ویرایشگر باز کنید. اگر ازقبل وجود ندارد، آن را ایجاد کنید.
/opt/apigee/customer/application/message-processor.properties
برای مثال، برای باز کردن فایل بااستفاده از
vi، موارد زیر را وارد کنید:vi /opt/apigee/customer/application/message-processor.properties
- خطی با قالب زیر به فایل داراییها اضافه کنید و مقدار
TIME_IN_MILLISECONDS را جایگزین کنید:
conf/http.properties+HTTPClient.keepalive.timeout.millis=TIME_IN_MILLISECONDS
برای مثال، برای تغییر مهلت زمانی فعال نگه داشتن در «پردازشگر پیام» به
30ثانیه، خط زیر را اضافه کنید:conf/http.properties+HTTPClient.keepalive.timeout.millis=30000
- تغییرات را ذخیره کنید.
- مطمئن شوید فایل دارایی متعلق به کاربر
apigeeباشد، همانطور که در زیر نشان داده شده است:chown apigee:apigee /opt/apigee/customer/application/message-processor.properties
- «پردازشگر پیام» را همانطور که در زیر نشان داده شده است بازراهاندازی کنید:
/opt/apigee/apigee-service/bin/apigee-service edge-message-processor restart
- اگر بیشاز یک «پردازشگر پیام» دارید، مراحل بالا را در همه «پردازشگرهای پیام» تکرار کنید.
درحال درستیسنجی مهلت زمانی فعال نگه داشتن در «پردازشگرهای پیام»
این بخش توضیح میدهد که چگونه تأیید کنید که مهلت زمانی فعال نگه داشتن باموفقیت در «پردازشگرهای پیام» اصلاح شده است.
حتی اگر از نحو ویژه
conf/http.properties+HTTPClient.keepalive.timeout.millis برای تنظیم مهلت زمانی
فعال نگه داشتن در «پردازشگر پیام» استفاده میکنید، باید بررسی کنید که آیا دارایی واقعی
HTTPClient.keepalive.timeout.millis با مقدار جدید تنظیم شده است یا نه.
- در ماشین «پردازشگر پیام»، دارایی
HTTPClient.keepalive.timeout.millisرا در/opt/apigee/edge-message-processor/confدایرکتوری جستجو کنید و بررسی کنید که آیا با مقدار جدید تنظیم شده است یا نه، همانطور که در زیر نشان داده شده است:grep -ri "HTTPClient.keepalive.timeout.millis" /opt/apigee/edge-message-processor/conf
-
اگر مقدار جدید مهلت زمانی فعال نگه داشتن باموفقیت در «پردازشگر پیام» تنظیم شود، فرمان بالا مقدار جدید را در فایل
http.propertiesنشان میدهد.نتیجه نمونه از فرمان بالا پساز پیکربندی زمان اتمام «فعال نگه داشتن» به
30ثانیه بهصورت زیر است:/opt/apigee/edge-message-processor/conf/http.properties:HTTPClient.keepalive.timeout.millis=30000
در برونداد مثال بالا، توجه کنید که دارایی
HTTPClient.keepalive.timeout.millisبا مقدار جدید30000درhttp.propertiesتنظیم شده است. این نشان میدهد که مهلت زمانی «فعال نگه داشتن» باموفقیت روی30ثانیه در «پردازشگر پیام» پیکربندی شده است. - اگر هنوز مقدار قدیمی دارایی
HTTPClient.keepalive.timeout.millisرا میبینید، مطمئن شوید که همه مراحل ذکرشده در پیکربندی مهلت زمان زنده نگه داشتن در «پردازشگرهای پیام» را بهدرستی دنبال کردهاید. اگر مرحلهای را ازدست دادهاید، همه مراحل را دوباره بهدرستی تکرار کنید. - اگر همچنان نمیتوانید مهلت زمانی فعال نگه داشتن را تغییر دهید، با Google Cloud پشتیبانی Apigee Edge تماس بگیرید.