প্রাইভেট ক্লাউডের জন্য Edge v. 4.17.09
হেলথ চেক চলাকালীন মেসেজ প্রসেসর উপলভ্য না থাকলে রাউটার উত্তর কনফিগার করা
মেসেজ প্রসেসর অনুরোধ পরিষেবা দিতে পারছে কিনা তা নির্ধারণ করতে রাউটার প্রতি পাঁচ সেকেন্ডে মেসেজ প্রসেসরের হেলথ চেক করে। কোনও মেসেজ প্রসেসর কাজ না করলে, রাউটার অটোমেটিক অন্য মেসেজ প্রসেসরে অনুরোধ ফরওয়ার্ড করে দেয়।
মেসেজ প্রসেসর বন্ধ হয়ে গেলে রাউটার কীভাবে প্রতিক্রিয়া জানাবে তা আপনি রাউটারে conf_load_balancing_load.balancing.driver.nginx.server.retry প্রপার্টি সেট করে কনফিগার করতে পারবেন। এই প্রপার্টিতে স্পেস-ডিলিমিটেড ভ্যালুর একটি সেট থাকে যার মধ্যে এগুলি অন্তর্ভুক্ত থাকতে পারে:
- বন্ধ: আবার চেষ্টা করার সুবিধা বন্ধ করুন, এর ফলে অনুরোধ করা হলে রাউটার একটি ব্যর্থতার কোড রিটার্ন করে।
- http_599: (ডিফল্ট) মেসেজ প্রসেসর থেকে রাউটার HTTP 599
রেসপন্স পেলে, রাউটার পরবর্তী মেসেজ প্রসেসরের কাছে
অনুরোধ ফরওয়ার্ড করে।
HTTP 599 হল একটি বিশেষ উত্তর কোড যা মেসেজ প্রসেসর বন্ধ করার সময় তৈরি হয়। মেসেজ প্রসেসর আগেকার সব অনুরোধ সম্পূর্ণ করার চেষ্টা করে, কিন্তু নতুন কোনও অনুরোধের ক্ষেত্রে, এটি HTTP 599-এর মাধ্যমে উত্তর দেয় এবং রাউটারকে সিগন্যাল দেয় যাতে সেটি পরবর্তী মেসেজ প্রসেসরে অনুরোধটি আবার চেষ্টা করে। - সমস্যা: মেসেজ প্রসেসরের সাথে কানেকশন স্থাপন, সেটিতে অনুরোধ পাঠানো অথবা সেটির থেকে প্রতিক্রিয়া হেডার পড়ার সময় কোনও সমস্যা হলে, রাউটার অনুরোধটি পরবর্তী মেসেজ প্রসেসরের কাছে ফরওয়ার্ড করে দেয়।
- টাইম-আউট: মেসেজ প্রসেসরের সাথে কানেকশন স্থাপন করার সময়, সেটিতে কোনও অনুরোধ পাস করার সময় অথবা সেখান থেকে পাওয়া উত্তরের হেডার পড়ার সময় টাইম-আউট হলে, রাউটার পরবর্তী মেসেজ প্রসেসরের কাছে অনুরোধটি ফরওয়ার্ড করে দেয়।
- invalid_header: মেসেজ প্রসেসর কোনও খালি বা ভুল উত্তর দিলে, রাউটার পরবর্তী মেসেজ প্রসেসরের কাছে অনুরোধটি ফরওয়ার্ড করে দেয়।
- http_XXX: Message Processor, HTTP কোড XXX সহ উত্তর দিলে, Router পরবর্তী Message Processor-কে অনুরোধ ফরওয়ার্ড করে।
রাউটার কনফিগার করতে:
- /opt/apigee/customer/application/router.properties ফাইল এডিট করুন (ফাইলটি না থাকলে, এটি তৈরি করুন)।
- নিচে দেখানো conf_load_balancing_load.balancing.driver.nginx.server.retry
প্রপার্টি যোগ করুন:
conf_load_balancing_load.balancing.driver.nginx.server.retry=http_599 error - 'apigee' ব্যবহারকারীর মালিকানাধীন প্রপার্টি ফাইল আছে কিনা তা নিশ্চিত করুন:
> chown apigee:apigee /opt/apigee/customer/application/router.properties - রাউটার রিস্টার্ট করুন:
> /opt/apigee/apigee-service/bin/apigee-service edge-router restart
API প্রক্সি অনুরোধের অংশ হিসেবে মেসেজ প্রসেসর অ্যাক্সেস করার সময় রাউটার টাইম-আউট কনফিগার করা
API প্রক্সির মাধ্যমে অনুরোধ হ্যান্ডেল করার অংশ হিসেবে Message Processor অ্যাক্সেস করার চেষ্টা করার সময় Edge রাউটারের একটি প্রিসেট টাইমআউট ৫৯ সেকেন্ড থাকে। টাইম-আউট শেষ হয়ে গেলে, রাউটার অন্য কোনও মেসেজ প্রসেসরের সাথে কানেক্ট করার চেষ্টা করবে, যদি কোনও মেসেজ প্রসেসর উপলভ্য থাকে। অন্যথায়, এটি সমস্যা দেখাবে।
এই টাইম-আউট কন্ট্রোল করতে আপনি দুটি প্রপার্টি ব্যবহার করতে পারবেন:
- conf_load_balancing_load.balancing.driver.proxy.read.timeout নির্দিষ্ট করে একটি মেসেজ প্রসেসরের জন্য অপেক্ষা করার সময়, সেকেন্ডে। ডিফল্ট ভ্যালু হল ৫৭ সেকেন্ড।
- conf_load_balancing_load.balancing.driver.nginx.upstream_next_timeout নির্দিষ্ট করে যে আপনার Edge ইনস্টলেশনে একাধিক মেসেজ প্রসেসর থাকলে, সব মেসেজ প্রসেসরের জন্য মোট অপেক্ষা করার সময়, সেকেন্ডে হিসেবে। এটির ডিফল্ট ভ্যালু হল conf_load_balancing_load.balancing.driver.proxy.read.timeout-এর বর্তমান ভ্যালু, অথবা ৫৭ সেকেন্ড।
রাউটার কনফিগার করতে:
- /opt/apigee/customer/application/router.properties ফাইল এডিট করুন (ফাইলটি না থাকলে, এটি তৈরি করুন)।
- নিচে দেখানো প্রপার্টি সেট করুন:
conf_load_balancing_load.balancing.driver.proxy.read.timeout=120
conf_load_balancing_load.balancing.driver.nginx.upstream_next_timeout=240 - 'apigee' ব্যবহারকারীর মালিকানাধীন প্রপার্টি ফাইল আছে কিনা তা নিশ্চিত করুন:
> chown apigee:apigee /opt/apigee/customer/application/router.properties - রাউটার রিস্টার্ট করুন:
> /opt/apigee/apigee-service/bin/apigee-service edge-router restart