پیکربندی روتر برای اتصال مجدد به یک پردازشگر پیام

Edge for Private Cloud نسخه 4.17.05

پیکربندی پاسخ روتر هنگامی که یک پردازشگر پیام در طول بررسی سلامت در دسترس نیست

روتر هر پنج ثانیه یک بار یک بررسی سلامتی را برای پردازشگر پیام انجام می دهد تا مشخص کند که آیا پردازشگر پیام قادر به انجام درخواست ها است یا خیر. اگر یک پردازشگر پیام از کار بیفتد، روتر به طور خودکار درخواست ها را به یک پردازشگر پیام دیگر ارسال می کند.

با تنظیم ویژگی conf_load_balancing_load.balancing.driver.nginx.server.retry در روتر، می‌توانید نحوه واکنش روتر هنگام از کار افتادن پردازشگر پیام را پیکربندی کنید. این ویژگی مجموعه ای از مقادیر محدود شده با فضا را می گیرد که می تواند شامل موارد زیر باشد:

  • خاموش : سعی مجدد را غیرفعال کنید، روتر در صورت درخواست، کد خرابی را برمی‌گرداند.
  • http_599 : (پیش‌فرض) اگر روتر پاسخ HTTP 599 را از پردازشگر پیام دریافت کند، روتر درخواست را به پردازشگر پیام بعدی ارسال می‌کند.

    HTTP 599 یک کد پاسخ ویژه است که هنگام خاموش شدن توسط یک پردازشگر پیام تولید می شود. پردازشگر پیام سعی می‌کند تمام درخواست‌های موجود را تکمیل کند، اما برای هر درخواست جدید با HTTP 599 پاسخ می‌دهد تا به روتر سیگنال دهد تا درخواست را در پردازشگر پیام بعدی دوباره امتحان کند.
  • خطا : اگر هنگام برقراری ارتباط با پردازشگر پیام، ارسال درخواست به آن یا خواندن سرصفحه پاسخ از آن خطایی رخ دهد، روتر درخواست را به پردازشگر پیام بعدی ارسال می کند.
  • تایم اوت : اگر هنگام برقراری ارتباط با پردازشگر پیام، ارسال درخواست به آن، یا خواندن سرصفحه پاسخ از آن، مهلت زمانی رخ دهد، روتر درخواست را به پردازشگر پیام بعدی ارسال می کند.
  • invalid_header : اگر پردازشگر پیام یک پاسخ خالی یا نامعتبر برگرداند، روتر درخواست را به پردازشگر پیام بعدی ارسال می کند.
  • http_XXX : اگر پردازشگر پیام پاسخی را با کد HTTP XXX برگرداند، روتر درخواست را به پردازشگر پیام بعدی ارسال می کند.

برای پیکربندی روتر:

  1. فایل /opt/apigee/customer/application/router.properties را ویرایش کنید (اگر فایل وجود ندارد، آن را ایجاد کنید).
  2. مطابق شکل زیر، ویژگی conf_load_balancing_load.balancing.driver.nginx.server.retry را اضافه کنید:
    خطا conf_load_balancing_load.balancing.driver.nginx.server.retry=http_599
  3. مطمئن شوید که فایل خواص متعلق به کاربر 'apigee' است:
    > chown apigee:apigee /opt/apigee/customer/application/router.properties
  4. راه اندازی مجدد روتر:
    > /opt/apigee/apigee-service/bin/apigee-service edge-router راه اندازی مجدد

پیکربندی مهلت زمانی روتر هنگام دسترسی به پردازشگرهای پیام به عنوان بخشی از درخواست پروکسی API

مسیریاب Edge در هنگام تلاش برای دسترسی به یک پردازشگر پیام به عنوان بخشی از رسیدگی به درخواست از طریق یک پروکسی API، وقفه زمانی از پیش تعیین شده 57 ثانیه دارد. هنگامی که این زمان منقضی می شود، روتر تلاش می کند تا به یک پردازشگر پیام دیگر متصل شود، در صورت وجود. در غیر این صورت یک خطا برمی گرداند.

برای کنترل این زمان می توانید از دو ویژگی استفاده کنید:

  • conf_load_balancing_load.balancing.driver.proxy.read.timeout زمان انتظار را بر حسب ثانیه برای یک پردازشگر پیام مشخص می کند. مقدار پیش فرض 57 ثانیه است.
  • conf_load_balancing_load.balancing.driver.nginx.upstream_next_timeout کل زمان انتظار برای همه پردازشگرهای پیام را بر حسب ثانیه مشخص می کند، زمانی که نصب Edge شما دارای چندین پردازشگر پیام باشد. مقدار پیش‌فرض مقدار فعلی conf_load_balancing_load.balancing.driver.proxy.read.timeout یا 57 ثانیه است.

برای پیکربندی روتر:

  1. فایل /opt/apigee/customer/application/router.properties را ویرایش کنید (اگر فایل وجود ندارد، آن را ایجاد کنید).
  2. خواص را مطابق شکل زیر تنظیم کنید:
    conf_load_balancing_load.balancing.driver.proxy.read.timeout=120
    conf_load_balancing_load.balancing.driver.nginx.upstream_next_timeout=240
  3. مطمئن شوید که فایل خواص متعلق به کاربر 'apigee' است:
    > chown apigee:apigee /opt/apigee/customer/application/router.properties
  4. راه اندازی مجدد روتر:
    > /opt/apigee/apigee-service/bin/apigee-service edge-router راه اندازی مجدد