شما در حال مشاهده مستندات Apigee Edge هستید.
به مستندات Apigee X مراجعه کنید . اطلاعات
این سند نحوه پیکربندی زمان انتظار برای Keep Alive را برای پردازندههای پیامرسان Apigee Edge توضیح میدهد.
زمان انتظار keep alive در پردازشگر پیام، به یک اتصال TCP اجازه میدهد تا چندین درخواست/پاسخ HTTP را از/به سرور backend ارسال و دریافت کند، به جای اینکه برای هر جفت درخواست/پاسخ، یک اتصال جدید باز شود.
مقدار پیشفرض ویژگی زمانبندی keep alive در پردازشگر پیام، 60 ثانیه است. این دوره زمانبندی برای سرورهای backend پیکربندیشده در پیکربندی نقطه پایانی هدف و در سیاست ServiceCallout پروکسی API شما اعمال میشود.
مدت زمان Keep Alive برای Message Processors را میتوان بر اساس نیاز شما از مقدار پیشفرض 60 ثانیه افزایش یا کاهش داد. این زمان را میتوان به روشهای زیر پیکربندی کرد:
- در پروکسی API
- در نقطه پایانی هدف
- در سیاست
ServiceCallout
- در پردازشگر پیام
ویژگیهای زیر، مدت زمان keep-alive را در پردازندههای پیام کنترل میکنند:
| نام ملک | مکان | توضیحات |
|---|---|---|
keepalive.timeout.millis | پروکسی API:
| این حداکثر زمان بیکاری است که پردازنده پیام به یک اتصال TCP واحد اجازه میدهد تا چندین درخواست/پاسخ HTTP را ارسال و دریافت کند، به جای اینکه برای هر جفت درخواست/پاسخ، یک اتصال جدید باز کند. به طور پیشفرض، این ویژگی مقدار تعیینشده برای ویژگی اگر این ویژگی با یک مقدار زمان انتظار جدید برای سرور هدف مورد استفاده در نقطه پایانی هدف یا سیاست |
HTTPClient.keepalive.timeout.millis | پردازشگر پیام | این حداکثر زمان بیکاری است که پردازنده پیام به یک اتصال TCP واحد اجازه میدهد تا چندین درخواست/پاسخ HTTP را ارسال و دریافت کند، به جای اینکه برای هر جفت درخواست/پاسخ، یک اتصال جدید باز کند. این ویژگی برای همه پروکسیهای API که روی این پردازشگر پیام اجرا میشوند، استفاده میشود. مقدار پیشفرض این ویژگی شما میتوانید این ویژگی را همانطور که در پیکربندی keep-alive timeout در پردازندههای پیام در زیر توضیح داده شده است، تغییر دهید، یا میتوانید با تنظیم ویژگی |
قبل از اینکه شروع کنی
قبل از استفاده از مراحل این سند، مطمئن شوید که مباحث زیر را درک کردهاید:
- اگر با keep-alive timeout آشنا نیستید، به توضیحات ویژگی
keepalive.timeout.millisدر TargetEndpoint Transport Property Specification مراجعه کنید. - اگر با پیکربندی ویژگیهای Edge در Private Cloud آشنا نیستید، نحوه پیکربندی Edge را مطالعه کنید.
پیکربندی زمان انتظار keep-alive در پروکسی API
زمان انتظار برای keep-alive را میتوان در پروکسی API در مکانهای زیر پیکربندی کرد:
- نقطه پایانی هدف
- سیاست
ServiceCallout
پیکربندی زمان انتظار keep-alive در نقطه پایانی هدف پروکسی API
این بخش نحوه پیکربندی زمان انتظار keep alive را در نقطه پایانی هدف پروکسی API شما توضیح میدهد. زمان انتظار keep alive را میتوان از طریق ویژگی keepalive.timeout.millis پیکربندی کرد که نشان دهنده مقدار زمان انتظار keep alive بر حسب میلی ثانیه است.
- در رابط کاربری Edge، پروکسی API خاصی را که میخواهید مقدار جدید زمانبندی keep-alive را در آن پیکربندی کنید، انتخاب کنید.
- نقطه پایانی هدف خاصی را که میخواهید تغییر دهید، انتخاب کنید.
ویژگی
keepalive.timeout.millisبا مقدار مناسب زیر عنصر<HTTPTargetConnection>در پیکربندیTargetEndpointاضافه کنید.برای مثال، برای تغییر زمان انتظار keep alive به
30ثانیه، قطعه کد زیر را اضافه کنید:<Properties> <Property name="keepalive.timeout.millis">30000</Property> </Properties>
از آنجایی که ویژگی
keepalive.timeout.millisبر حسب میلیثانیه است، مقدار برای30ثانیه30000است.مثالهای زیر نحوه پیکربندی زمان انتظار keep alive را در پیکربندی نقطه پایانی هدف پروکسی API شما نشان میدهند:
مثال پیکربندی نقطه پایانی هدف با استفاده از URL برای سرور backend
<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 خود را ذخیره کنید.
پیکربندی keep-alive timeout در سیاست ServiceCallout مربوط به پروکسی API
این بخش نحوه پیکربندی مهلت زمانی keep alive را در سیاست ServiceCallout پروکسی API شما توضیح میدهد. مهلت زمانی keep alive را میتوان از طریق ویژگی the keepalive.timeout.millis پیکربندی کرد، که مقدار مهلت زمانی keep alive را بر حسب میلیثانیه نشان میدهد.
برای پیکربندی زمان انتظار keep-alive در سیاست ServiceCallout با استفاده از ویژگی keepalive.timeout.millis :
- در رابط کاربری Edge، پروکسی API خاصی را که میخواهید مقدار جدید keep alive timeout را برای سیاست
ServiceCalloutپیکربندی کنید، انتخاب کنید. - سیاست
ServiceCalloutخاصی را که میخواهید تغییر دهید، انتخاب کنید. - ویژگی
keepalive.timeout.millisبا مقدار مناسب زیر عنصر<HTTPTargetConnection>در پیکربندیTargetEndpointاضافه کنید.برای مثال، برای تغییر زمان انتظار keep alive به
30ثانیه، قطعه کد زیر را اضافه کنید:<Properties> <Property name="keepalive.timeout.millis">30000</Property> </Properties>
از آنجایی که ویژگی
keepalive.timeout.millisبر حسب میلیثانیه است، مقدار برای30ثانیه30000است.مثالهای زیر نحوه پیکربندی زمان انتظار keep alive را در سیاست
ServiceCalloutپروکسی API شما نشان میدهند:مثال پیکربندی سیاست ServiceCallout با استفاده از URL برای سرور backend
<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 با استفاده از سرور هدف
<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 خود را ذخیره کنید.
پیکربندی مهلت زمانی keep-alive در پردازندههای پیام
این بخش نحوه پیکربندی مهلت زمانی keep-alive در پردازندههای پیام (Message Processors) را توضیح میدهد. مهلت زمانی keep-alive را میتوان از طریق ویژگی HTTPClient.keepalive.timeout.millis پیکربندی کرد که نشان دهنده مقدار مهلت زمانی keep-alive بر حسب میلی ثانیه در کامپوننت Message Processor است. از آنجایی که این ویژگی در Message Processor به صورت کامنت (توضیح داده شده) است، باید از سینتکس ویژه 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
- تغییرات خود را ذخیره کنید.
- مطمئن شوید که فایل properties متعلق به کاربر
apigeeاست، همانطور که در زیر نشان داده شده است:chown apigee:apigee /opt/apigee/customer/application/message-processor.properties
- پردازشگر پیام را مطابق شکل زیر مجدداً راهاندازی کنید:
/opt/apigee/apigee-service/bin/apigee-service edge-message-processor restart
- اگر بیش از یک پردازشگر پیام دارید، مراحل بالا را روی همه پردازشگرهای پیام تکرار کنید.
تأیید مهلت زمانی keep-alive در پردازندههای پیام
این بخش توضیح میدهد که چگونه میتوان تأیید کرد که مهلت زمانی keep alive در پردازندههای پیام با موفقیت تغییر داده شده است.
حتی اگر از سینتکس ویژه conf/http.properties+HTTPClient.keepalive.timeout.millis برای تنظیم زمان انتظار keep alive در پردازشگر پیام استفاده کنید، باید بررسی کنید که آیا ویژگی واقعی 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
اگر مقدار جدید keep-alive timeout با موفقیت در Message Processor تنظیم شود، دستور بالا مقدار جدید را در فایل
http.propertiesنمایش میدهد.نتیجه نمونه از دستور بالا پس از تنظیم زمان انتظار keep alive به
30ثانیه به شرح زیر است:/opt/apigee/edge-message-processor/conf/http.properties:HTTPClient.keepalive.timeout.millis=30000
در خروجی مثال بالا، توجه کنید که ویژگی
HTTPClient.keepalive.timeout.millisبا مقدار جدید30000درhttp.propertiesتنظیم شده است. این نشان میدهد که زمان انتظار keep alive با موفقیت در پردازنده پیام روی30ثانیه پیکربندی شده است.- اگر هنوز مقدار قدیمی ویژگی
HTTPClient.keepalive.timeout.millisرا میبینید، تأیید کنید که تمام مراحل ذکر شده در پیکربندی keep alive timeout در Message Processors را به درستی دنبال کردهاید. اگر هر مرحلهای را از دست دادهاید، تمام مراحل را دوباره به درستی تکرار کنید. - اگر هنوز قادر به تغییر زمان انتظار Keep Alive نیستید، با پشتیبانی Google Cloud Apigee Edge تماس بگیرید.