আপনি Apigee Edge-এর ডকুমেন্টেশন দেখছেন।
Apigee X ডকুমেন্টেশন .info- তে যান।
এই ডকুমেন্টটিতে Apigee Edge Message Processors-এর জন্য keep alive timeout কীভাবে কনফিগার করতে হয়, তা ব্যাখ্যা করা হয়েছে।
মেসেজ প্রসেসরের কিপ অ্যালাইভ টাইমআউট প্রতিটি অনুরোধ/প্রতিক্রিয়া জোড়ার জন্য একটি নতুন সংযোগ খোলার পরিবর্তে, একটি একক TCP সংযোগকে ব্যাকএন্ড সার্ভার থেকে/পর্যন্ত একাধিক HTTP অনুরোধ/প্রতিক্রিয়া পাঠাতে এবং গ্রহণ করতে সক্ষম করে।
মেসেজ প্রসেসরের 'keep alive timeout' প্রপার্টির ডিফল্ট মান হলো 60 সেকেন্ড। এই টাইমআউট সময়কালটি টার্গেট এন্ডপয়েন্ট কনফিগারেশনে এবং আপনার এপিআই প্রক্সির ' ServiceCallout ' পলিসিতে কনফিগার করা ব্যাকএন্ড সার্ভারগুলোর জন্য প্রযোজ্য।
আপনার প্রয়োজন অনুযায়ী মেসেজ প্রসেসরগুলির কিপ অ্যালাইভ টাইমআউট ডিফল্ট মান 60 সেকেন্ড থেকে বাড়ানো বা কমানো যেতে পারে। এটি নিম্নলিখিত উপায়ে কনফিগার করা যায়:
- এপিআই প্রক্সিতে
- লক্ষ্য প্রান্তবিন্দুতে
-
ServiceCalloutনীতিতে
- মেসেজ প্রসেসরে
নিম্নলিখিত প্রোপার্টিগুলো মেসেজ প্রসেসরগুলোর কিপ অ্যালাইভ টাইমআউট নিয়ন্ত্রণ করে:
| সম্পত্তির নাম | অবস্থান | বর্ণনা |
|---|---|---|
keepalive.timeout.millis | এপিআই প্রক্সি:
| এটি হলো সর্বোচ্চ নিষ্ক্রিয় সময়, যার জন্য মেসেজ প্রসেসর প্রতিটি অনুরোধ/প্রতিক্রিয়া জোড়ার জন্য একটি নতুন সংযোগ না খুলে, একটিমাত্র TCP সংযোগকে একাধিক HTTP অনুরোধ/প্রতিক্রিয়া পাঠাতে ও গ্রহণ করতে অনুমতি দেয়। ডিফল্টরূপে, এই প্রপার্টিটি মেসেজ প্রসেসরের যদি টার্গেট এন্ডপয়েন্টে ব্যবহৃত টার্গেট সার্ভার অথবা নির্দিষ্ট এপিআই প্রক্সির |
HTTPClient.keepalive.timeout.millis | বার্তা প্রসেসর | এটি হলো সর্বোচ্চ নিষ্ক্রিয় সময়, যার জন্য মেসেজ প্রসেসর প্রতিটি অনুরোধ/প্রতিক্রিয়া জোড়ার জন্য একটি নতুন সংযোগ না খুলে, একটিমাত্র TCP সংযোগকে একাধিক HTTP অনুরোধ/প্রতিক্রিয়া পাঠাতে ও গ্রহণ করতে অনুমতি দেয়। এই মেসেজ প্রসেসরে চলমান সমস্ত এপিআই প্রক্সির জন্য এই প্রপার্টিটি ব্যবহৃত হয়। এই প্রপার্টির ডিফল্ট মান হলো আপনি নিচে "মেসেজ প্রসেসরে কিপ অ্যালাইভ টাইমআউট কনফিগার করা" অংশে ব্যাখ্যা করা পদ্ধতি অনুযায়ী এই প্রপার্টিটি পরিবর্তন করতে পারেন, অথবা এপিআই প্রক্সি লেভেলে |
শুরু করার আগে
এই নথিতে বর্ণিত ধাপগুলো ব্যবহার করার আগে, নিম্নলিখিত বিষয়গুলো আপনি ভালোভাবে বুঝেছেন কিনা তা নিশ্চিত করুন:
- আপনি যদি কিপ অ্যালাইভ টাইমআউট সম্পর্কে পরিচিত না হন, তাহলে টার্গেটএন্ডপয়েন্ট ট্রান্সপোর্ট প্রপার্টি স্পেসিফিকেশন -এ থাকা
keepalive.timeout.millisপ্রপার্টির বিবরণটি দেখুন। - আপনি যদি প্রাইভেট ক্লাউডে Edge-এর প্রোপার্টি কনফিগার করার বিষয়ে পরিচিত না হন, তাহলে “How to configure Edge” পড়ুন।
এপিআই প্রক্সিতে কিপ অ্যালাইভ টাইমআউট কনফিগার করা
এপিআই প্রক্সিতে নিম্নলিখিত স্থানগুলিতে কিপ অ্যালাইভ টাইমআউট কনফিগার করা যেতে পারে:
- লক্ষ্য শেষবিন্দু
-
ServiceCalloutনীতি
এপিআই প্রক্সির টার্গেট এন্ডপয়েন্টে কিপ অ্যালাইভ টাইমআউট কনফিগার করা
এই বিভাগে আপনার এপিআই প্রক্সির টার্গেট এন্ডপয়েন্টে কিপ অ্যালাইভ টাইমআউট কীভাবে কনফিগার করতে হয় তা ব্যাখ্যা করা হয়েছে। কিপ অ্যালাইভ টাইমআউটটি keepalive.timeout.millis প্রপার্টির মাধ্যমে কনফিগার করা যায়, যা মিলিসেকেন্ডে কিপ অ্যালাইভ টাইমআউটের মান নির্দেশ করে।
- Edge UI-তে, সেই নির্দিষ্ট API প্রক্সিটি নির্বাচন করুন যেখানে আপনি নতুন keep alive timeout মানটি কনফিগার করতে চান।
- যে নির্দিষ্ট টার্গেট এন্ডপয়েন্টটি আপনি পরিবর্তন করতে চান, সেটি নির্বাচন করুন।
TargetEndpointকনফিগারেশনে<HTTPTargetConnection>এলিমেন্টের অধীনেkeepalive.timeout.millisপ্রপার্টিটি একটি উপযুক্ত মান দিয়ে যোগ করুন।উদাহরণস্বরূপ, 'keep alive Timeout'
30সেকেন্ডে পরিবর্তন করতে, নিম্নলিখিত কোড ব্লকটি যোগ করুন:<Properties> <Property name="keepalive.timeout.millis">30000</Property> </Properties>
যেহেতু
keepalive.timeout.millisপ্রপার্টিটি মিলিসেকেন্ডে পরিমাপ করা হয়, তাই30সেকেন্ডের জন্য এর মান হলো30000।নিম্নলিখিত উদাহরণগুলিতে দেখানো হয়েছে কিভাবে আপনার এপিআই প্রক্সির টার্গেট এন্ডপয়েন্ট কনফিগারেশনে কিপ অ্যালাইভ টাইমআউট সেট করতে হয়:
ব্যাকএন্ড সার্ভারের জন্য URL ব্যবহার করে টার্গেট এন্ডপয়েন্ট কনফিগারেশনের উদাহরণ
<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>- আপনার এপিআই প্রক্সিতে করা পরিবর্তনগুলো সংরক্ষণ করুন।
এপিআই প্রক্সির সার্ভিসকলআউট পলিসিতে কিপ অ্যালাইভ টাইমআউট কনফিগার করা
এই বিভাগে আপনার এপিআই প্রক্সির ServiceCallout পলিসিতে কিপ অ্যালাইভ টাইমআউট কীভাবে কনফিগার করতে হয় তা ব্যাখ্যা করা হয়েছে। কিপ অ্যালাইভ টাইমআউটটি the keepalive.timeout.millis প্রপার্টির মাধ্যমে কনফিগার করা যায়, যা মিলিসেকেন্ডে কিপ অ্যালাইভ টাইমআউটের মান নির্দেশ করে।
keepalive.timeout.millis প্রপার্টি ব্যবহার করে ServiceCallout পলিসিতে কিপ অ্যালাইভ টাইমআউট কনফিগার করতে:
- Edge UI-তে, সেই নির্দিষ্ট API প্রক্সিটি নির্বাচন করুন যেখানে আপনি
ServiceCalloutপলিসির জন্য নতুন keep alive timeout মানটি কনফিগার করতে চান। - যে নির্দিষ্ট
ServiceCalloutপলিসিটি আপনি পরিবর্তন করতে চান, সেটি নির্বাচন করুন। -
TargetEndpointকনফিগারেশনে<HTTPTargetConnection>এলিমেন্টের অধীনেkeepalive.timeout.millisপ্রপার্টিটি একটি উপযুক্ত মান দিয়ে যোগ করুন।উদাহরণস্বরূপ, কিপ অ্যালাইভ টাইমআউট
30সেকেন্ডে পরিবর্তন করতে, নিম্নলিখিত কোড ব্লকটি যোগ করুন:<Properties> <Property name="keepalive.timeout.millis">30000</Property> </Properties>
যেহেতু
keepalive.timeout.millisপ্রপার্টিটি মিলিসেকেন্ডে পরিমাপ করা হয়, তাই30সেকেন্ডের জন্য এর মান হলো30000।নিম্নলিখিত উদাহরণগুলিতে দেখানো হয়েছে কিভাবে আপনার এপিআই প্রক্সির
ServiceCalloutপলিসিতে কিপ অ্যালাইভ টাইমআউট কনফিগার করতে হয়:ব্যাকএন্ড সার্ভারের জন্য URL ব্যবহার করে ServiceCallout পলিসি কনফিগারেশনের উদাহরণ
<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> - আপনার এপিআই প্রক্সিতে করা পরিবর্তনগুলো সংরক্ষণ করুন।
মেসেজ প্রসেসরগুলিতে কিপ অ্যালাইভ টাইমআউট কনফিগার করা
এই বিভাগে মেসেজ প্রসেসরগুলিতে কিপ অ্যালাইভ টাইমআউট কীভাবে কনফিগার করতে হয় তা ব্যাখ্যা করা হয়েছে। কিপ অ্যালাইভ টাইমআউটটি HTTPClient.keepalive.timeout.millis প্রপার্টির মাধ্যমে কনফিগার করা যায়, যা মেসেজ প্রসেসর কম্পোনেন্টে মিলিসেকেন্ডে কিপ অ্যালাইভ টাইমআউটের মান নির্দেশ করে। যেহেতু এই প্রপার্টিটি মেসেজ প্রসেসরে কমেন্ট করা থাকে, তাই আপনাকে conf/http.properties+HTTPClient.keepalive.timeout.millis এই বিশেষ সিনট্যাক্সটি ব্যবহার করতে হবে, যেমনটি "How to configure Edge" -এর "Set a token that is currently commented out" বিভাগে বর্ণনা করা হয়েছে।
মেসেজ প্রসেসরগুলিতে কিপ অ্যালাইভ টাইমআউট কনফিগার করতে, নিম্নলিখিতগুলি করুন:
- মেসেজ প্রসেসর মেশিনে, নিম্নলিখিত ফাইলটি একটি এডিটরে খুলুন। যদি এটি আগে থেকে বিদ্যমান না থাকে, তবে এটি তৈরি করুন।
/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 প্রপার্টিটি নতুন মান দিয়ে সেট করা হয়েছে কিনা।
- মেসেজ প্রসেসর মেশিনে,
/opt/apigee/edge-message-processor/confডিরেক্টরিতেHTTPClient.keepalive.timeout.millisপ্রপার্টিটি খুঁজুন এবং নিচে দেখানো নতুন মান দিয়ে এটি সেট করা হয়েছে কিনা তা পরীক্ষা করুন: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
উপরের উদাহরণ আউটপুটে লক্ষ্য করুন যে,
http.propertiesফাইলেHTTPClient.keepalive.timeout.millisপ্রপার্টিটির মান নতুন ভ্যালু30000দিয়ে সেট করা হয়েছে। এটি নির্দেশ করে যে, মেসেজ প্রসেসরে কিপ অ্যালাইভ টাইমআউট সফলভাবে30সেকেন্ডে কনফিগার করা হয়েছে।- আপনি যদি এখনও
HTTPClient.keepalive.timeout.millisপ্রপার্টির জন্য পুরোনো মান দেখতে পান, তাহলে যাচাই করুন যে আপনি "মেসেজ প্রসেসরে কিপ অ্যালাইভ টাইমআউট কনফিগার করা" অংশে বর্ণিত সমস্ত ধাপ সঠিকভাবে অনুসরণ করেছেন কিনা। যদি কোনো ধাপ বাদ পড়ে থাকে, তাহলে সমস্ত ধাপ আবার সঠিকভাবে পুনরাবৃত্তি করুন। - আপনি যদি এখনও কিপ অ্যালাইভ টাইমআউট পরিবর্তন করতে না পারেন, তাহলে গুগল ক্লাউড এপিজি এজ সাপোর্টের সাথে যোগাযোগ করুন।