אתם צופים במסמכי העזרה של Apigee Edge.
כניסה למסמכי העזרה של Apigee X. info
אחת מהתכונות הייחודיות והשימושיות של Apigee Edge היא היכולת לעטוף אפליקציית NodeJS בשרת proxy ל-API. כך המפתחים יכולים ליצור אפליקציות מבוססות-אירועים בצד השרת באמצעות Edge.
דפוס שלילי
פריסת שרתי proxy ל-API היא התהליך שבו הם הופכים לזמינים כדי לשרת בקשות API. כל אחד משרתי ה-proxy ל-API שנפרסו נטען בזיכרון של Message Processor במהלך זמן הריצה, כדי שאפשר יהיה להגיש את בקשות ה-API של שרת ה-proxy ל-API הספציפי. לכן, השימוש בזיכרון בסביבת זמן הריצה גדל ככל שמספר שרתי ה-API Proxy שנפרסים גדל. פריסה של שרתים proxy ל-API שלא בשימוש עלולה לגרום לשימוש מיותר בזיכרון בסביבת זמן הריצה.
במקרה של שרתים proxy של NodeJS API, יש לכך השלכה נוספת.
הפלטפורמה מפעילה 'אפליקציית Node' לכל שרת proxy של NodeJS API שנפרס. אפליקציית Node דומה למכונה עצמאית של שרת צומת בתהליך JVM של Message Processor.
בפועל, לכל שרת proxy של NodeJS API שנפרס, Edge מפעיל שרת node כדי לעבד בקשות לשרתים הווירטואליים התואמים. אם אותו שרת proxy של NodeJS API נפרס בכמה סביבות, אפליקציית צומת תושק לכל סביבה. במצבים שבהם יש הרבה שרתים proxy של NodeJS API שנפרסו אבל לא בשימוש, מופעלות כמה אפליקציות Node. שרתים proxy של NodeJS שלא בשימוש הופכים לאפליקציות Node במצב חוסר פעילות, שצורכות זיכרון ומשפיעות על זמני ההפעלה של תהליך האפליקציה.
שרתי proxy בשימוש | שרתי proxy שלא בשימוש | ||||
---|---|---|---|---|---|
# Proxies | # Deployed Environments | # nodeapps Launched | # Proxies | # Deployed Environments | # אפליקציות Node הושקו |
10 | dev, test, prod (3) | 10x3=30 | 12 | dev, test, prod (3) | 12x3=36 |
באיור שלמעלה, 36 אפליקציות צמתים לא בשימוש מופעלות, מה שגורם לשימוש בזיכרון המערכת ומשפיע לרעה על זמני ההפעלה של התהליך.
השפעה
- שימוש גבוה בזיכרון והשפעה מדורגת על היכולת של האפליקציה לעבד בקשות נוספות
- ההשפעה הצפויה על הביצועים של שרתי ה-proxy ל-API שמספקים שירות לתנועה בפועל
שיטה מומלצת
- ביטול הפריסה של שרתי proxy ל-API שלא בשימוש
- להשתמש בלוח הבקרה של ביצועי שרת ה-proxy ב-Analytics כדי לקבוע אילו שרתי proxy לא משרתים תנועה, ולפרוק את אלה שאתם לא צריכים