الگوی بد: باقی گذاشتن «پراکسی‌های میانای برنامه‌سازی کاربردی NodeJS» استفاده‌نشده که مستقر شده‌اند

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

یکی از ویژگی‌های منحصربه‌فرد و مفید Apigee Edge توانایی بسته‌بندی برنامه NodeJS در «پراکسی میانای برنامه‌سازی کاربردی» است. این ویژگی به توسعه‌دهندگان امکان می‌دهد بااستفاده از Edge برنامه‌های سمت سرور رویدادمحور بسازند.

الگوی بد

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

در مورد «پراکسی‌های میانای برنامه‌سازی کاربردی NodeJS»، پیامد دیگری نیز وجود دارد.

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

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

پراکسی‌های استفاده‌شده پراکسی‌های استفاده‌نشده
‫# پراکسی ‫# محیط مستقرشده ‫# برنامه گره راه‌اندازی شد ‫# پراکسی ‫# محیط مستقرشده ‫# برنامه Node راه‌اندازی شد
10 dev،‏ test،‏ prod (۳) ‫۱۰×۳=۳۰ 12 dev،‏ test،‏ prod (۳) ‫۱۲×۳=۳۶

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

تأثیر

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

روال مطلوب

  • لغو استقرار هرگونه «کارگزار میانای برنامه‌سازی کاربردی» استفاده‌نشده
  • از داشبورد «عملکرد پراکسی Analytics» برای تعیین اینکه کدام پراکسی‌ها ترافیک ارائه نمی‌دهند استفاده کنید؛ پراکسی‌هایی را که نیاز ندارید لغو استقرار کنید

مطالعه بیشتر