Antipattern: پراکسی های NodeJS API را بدون استفاده رها کنید

شما در حال مشاهده مستندات Apigee Edge هستید.
به مستندات Apigee X مراجعه کنید .
اطلاعات

یکی از ویژگی‌های منحصر به فرد و مفید Apigee Edge، قابلیت قرار دادن یک برنامه NodeJS در یک API Proxy است. این قابلیت به توسعه‌دهندگان اجازه می‌دهد تا با استفاده از Edge، برنامه‌های سمت سرور رویدادمحور ایجاد کنند.

ضدالگو

استقرار API Proxies فرآیندی است که طی آن، آنها را برای ارائه خدمات به درخواست‌های API در دسترس قرار می‌دهیم. هر یک از API Proxiesهای مستقر شده در حافظه زمان اجرای Message Processor بارگذاری می‌شوند تا بتوانند به درخواست‌های API مربوط به API Proxy خاص پاسخ دهند. بنابراین، با افزایش تعداد API Proxies مستقر شده، میزان استفاده از حافظه زمان اجرا افزایش می‌یابد. رها کردن هرگونه API Proxies بلااستفاده مستقر شده می‌تواند باعث استفاده غیرضروری از حافظه زمان اجرا شود.

در مورد پروکسی‌های API نودجی‌اس، مفهوم دیگری هم وجود دارد.

این پلتفرم برای هر NodeJS API Proxy مستقر، یک «برنامه Node» راه‌اندازی می‌کند. یک برنامه Node مشابه یک نمونه سرور Node مستقل در فرآیند JVM پردازنده پیام است.

در واقع، برای هر NodeJS API Proxy مستقر، Edge برای هر کدام یک سرور گره راه‌اندازی می‌کند تا درخواست‌های مربوط به پروکسی‌های مربوطه را پردازش کند. اگر NodeJS API Proxy یکسانی در چندین محیط مستقر شود، برای هر محیط یک برنامه گره مربوطه راه‌اندازی می‌شود. در شرایطی که تعداد زیادی NodeJS API Proxy مستقر اما بلااستفاده وجود داشته باشد، چندین برنامه گره راه‌اندازی می‌شوند. پروکسی‌های NodeJS استفاده نشده به برنامه‌های گره بیکار تبدیل می‌شوند که حافظه را مصرف می‌کنند و بر زمان راه‌اندازی فرآیند برنامه تأثیر می‌گذارند.

پروکسی‌های استفاده شده پروکسی‌های استفاده نشده
# پروکسی‌ها # محیط‌های مستقر # nodeapps راه‌اندازی شد # پروکسی‌ها # محیط‌های مستقر # برنامه‌های گره راه‌اندازی شدند
۱۰ توسعه، آزمایش، تولید (3) ۱۰x۳=۳۰ ۱۲ توسعه، آزمایش، تولید (3) ۱۲x۳=۳۶

در تصویر بالا، ۳۶ برنامه‌ی گره‌ای بلااستفاده اجرا می‌شوند که حافظه‌ی سیستم را اشغال می‌کنند و تأثیر نامطلوبی بر زمان راه‌اندازی فرآیند دارند.

تأثیر

  • استفاده زیاد از حافظه و تأثیر آبشاری بر توانایی برنامه در پردازش درخواست‌های بیشتر
  • تأثیر احتمالی بر عملکرد پروکسی‌های API که در واقع ترافیک را ارائه می‌دهند

بهترین شیوه

  • هرگونه پروکسی API استفاده نشده را غیرفعال کنید
  • از داشبورد عملکرد پروکسی آنالیتیکس برای تعیین اینکه کدام پروکسی‌ها ترافیک ارائه نمی‌دهند استفاده کنید؛ آن‌هایی را که نیاز ندارید غیرفعال کنید.

مطالعه بیشتر