10 כלי ניהול API הטובים ביותר

עולם העסקים המודרני מופעל על ידי תוכנה ומונע על ידי API. כל יישום, בין אם ציבורי ופרטי, זקוק לממשקי API חזקים ונוחים כדי להיות שימושי באמת. בנייה ותחזוקת ממשקי API זו עבודה קשה, ולכן אין זה פלא שצמחו תוכנות שלמות של תוכנה סביב ניהול API.

מרבית מוצרי ניהול ה- API מספקים מצמד נפוץ של תכונות: ניתוב ושרת proxy, הפיכת נתונים וכתובות URL, לוחות מחוונים וניתוח, מדיניות והגבלות וכלי מפתח כמו מחוללי תיעוד. כאן נבחן 10 כלי ניהול API פופולריים - פרויקטים של קוד פתוח, מוצרים מסחריים, שירותי ענן ותערובות של אותם - המציעים הכל החל מחבילת שירות מלא עבור ממשקי API וכלים ממוקדים לתרחישים ספציפיים.

3 קנה מידה

במקור מוצר מקור סגור, 3scale נרכשה על ידי רד האט ונפתחה לאחר כשנתיים של עבודה. ניתן להשתמש בפרויקט הקוד הפתוח באופן חופשי ברישיון אפאצ'י, בעוד ש- Red Hat מציע יישום SaaS הנתמך באופן מסחרי.

התכונות של 3scale תואמות את ההיצע האחר בסבב זה. תוכלו למצוא גרסאות API, בקרת גישה והגבלת קצב, בקרות אבטחה וניתוח. 3scale מציעה גם תכונות ידידותיות למפתחים כגון פורטל מפתח ו- CMS ליצירת תיעוד עבור ממשקי ה- API של אחד. 3scale מציעה גם כלים מקוריים למונטיזציה של ממשקי API, כגון חשבונית ושילוב עם שירותי תשלומים.

אם בכוונתך להתקין את 3Scale בעצמך לייצור, תזדקק למסד הנתונים של Oracle ו- OpenShift. בהתחשב בכך שאפילו התקנה מינימלית של 3 סולם לבדיקה דורשת Minishift, אשכול OpenShift בצמתים בודדים, יתכן שתהיה לך הכי טוב להשתמש בגירסת הניסיון בחינם של 90 ימים ל- 3scale אם ברצונך להתחיל במהירות האפשרית.

גרסת ה- Pro מתחילה ב- $ 750 לחודש עבור 5,000 חשבונות מפתח, 500,000 שיחות API מדי יום, ועד שלושה ממשקי API. הגרסה הארגונית (מחיר זמין על פי בקשה) מסירה את רוב המגבלות הללו.

שַׁגְרִיר

Ambassador היא מערכת ניהול קוד פתוח של API שנבנתה לעבוד עם Kubernetes. השגריר מיושם על-ידי ה- proxy של שליח, המטפל בהפשטת רשת למיקרו-שירותים, כך שרוב ההרמה הכבדה נעשית על ידי שליח וקוברנטס.

מערך הפיצ'רים של Ambassador תואם לרוב כלי הניהול האחרים של ה- API הקיימים: שכתוב כתובות אתרים וניתוב בקשות, סינון, אימות ובקרת גישה, הגבלת קצב ופסקי זמן, ושילוב עם רישום, פתרון בעיות ונראות.

עם זאת, רוב המאפיינים של השגריר סובבים סביב ניהול זמן ריצה ושילוב עם קוברנטס וכלים אחרים של קוברנטס (למשל פרומתאוס). שגריר משאיר את התכנון והתצורה ההצהרתית של ממשקי API לחלוטין למשתמש. תכונות כמו גרסת API אינן נתמכות באופן מקורי; אתה צריך להתמודד עם דברים כאלה בעצמך. זה הופך את Ambassador למתאים ביותר לעבודה עם ממשקי API כחלק מפריסת Kubernetes, ולא כפתרון כללי לניהול API.

אפימן

Apiman - לשעבר "JBoss Apiman" - הוא פרויקט קוד פתוח של Red Hat שנבנה בג'אווה. למרות שהיא עדיין מתוחזקת על ידי רד האט, נראה שרוב הפיתוח הפעיל של רד האט בניהול API עבר למוצר 3Scale שלה.

Apiman מתרכז ביסודות - פרסום וניהול ממשקי API, מתן גישה מבוססת תפקידים לפונקציות אלה, הגדרת מדיניות סביב השימוש ב- API, איסוף מדדי זמן ריצה וחיוב ויצירת מבנים ארגוניים מלמעלה למטה עבור כל אותם אלמנטים.

Apiman יכול לקבוע מדיניות עבור ממשקי API סביב אבטחה, משאבים (למשל, הגבלת קצב), טרנספורמציות של נתונים, אחסון במטמון ורישום. מדיניות מוגדרת באמצעות JSON, כך שאפשר לקרוא ולערוך אותן על ידי בני אדם ומכונות. ניתן ליישם את מדיניות האבטחה לפי זהות משתמש או תפקיד, וניתן לשלוט על ממשקי API באופן רופף או הדוק. אתה יכול לפרסם ממשקי API עם מזהה הגרסאות בכתובת האתר וללא חוזה שקשור לשימוש בהם; או שאתה יכול לדרוש מפתח API ולנהל מקרוב את אופן גירסתם.

כל מה שמעבר ליסודות הוא באחריותך. לדוגמא, בעוד שמספר תוספים עבור Apiman זמינים, הם בדרך כלל מהווים הרחבות קטנות לפונקציונליות של Apiman, המסופקות על ידי מנהלי פרויקטים מרכזיים.

DreamFactory

פלטפורמת הניהול של DreamFactory API בנויה במסגרת Laravel ב- PHP. DreamFactory זמין כמבצע קוד פתוח בחינם, או ברמות שונות של תמיכה מסחרית (תמחור לא נחשף). זוהי בחירה טבעית עבור מפתחים שכבר השקיעו ב- PHP ורוצים לחפור ביישום הקוד הפתוח. DreamFactory מציעה גם שילוב סקריפטים בצד השרת עם Node.js ו- Python.

התכונה "Datamesh" של DreamFactory, הזמינה מחוץ לקופסה על כל גלגוליה, מאפשרת לשלב תוצאות ממספר שיחות מסדי נתונים הטרוגניים - כולל למוצרי בסיס נתונים שונים - ולהחזיר את התוצאות כשיחת API אחת. כמו כן, ניתן לשלב עדכוני טבלאות במספר מסדי נתונים לשיחת API אחת.

בתיעוד DreamFactory אין רשימה אחת, קנונית, הניתנת לחיפוש של כל השירותים הזמינים. המידע מאורגן לפי קטגוריות, לכן עליך לבצע קידוחים ידניים כדי לברר מה זמין. מהפך, המסמכים כוללים סרטוני הדרכה רבים למקרי שימוש ספציפיים, כמו הגדרת יישום פשוט או חיבור למקורות נתונים שונים.

קונג

קונג הוא אחד מכלי הניהול API המוכרים ביותר, שנוצר במקור על ידי Mashape (ששמו שונה לקונג) בכדי להפעיל מוצר משוק ה- API שלו. קונג זמין במהדורת קוד פתוח או במבצע מסחרי ברמה ארגונית (תמחור לא נמסר) עם תכונות ניהול, ניטור ומפתחים נוספים. המהדורה הארגונית יכולה לפעול באופן מקוון או בשירות ענן לפי בחירה. תיעוד הן למוצרי קוד פתוח והן למוצרים ארגוניים הוא רב ומפורט.

קונג מספק בקר Ingress לשילוב Kubernetes ורשת שירות המאפשרת "להזריק" את הפונקציונליות של קונג לפריסת שירותים קיימת. המהדורה הארגונית מציעה פורטל מפתחים שמטרתו להקל על יצירת ממשקי API חדשים ולהכיר מפתחים חדשים את בסיס קוד ה- API שלך.

קונג משתמש בדרך כלל במסד נתונים, אך יכול לפעול גם במצב ללא בסיס נתונים, באמצעות קובץ תצורה JSON / YAML ואחסון בזיכרון. זה הכי טוב אם אתה מפעיל רק צומת יחיד מינימלי אך רוצה ביצועים מקסימליים.

KrakenD

KrakenD, שנכתב ב- Go, מספק רק את החיוני החשוף אך מציג ביצועים גבוהים כתכונה מרכזית. KrakenD מועבר כבינאר יחיד, עצמאי, כפי שקורה ברוב היישומים המובנים ב- Go. לחלופין, ניתן לאסוף אותו מהמקור, או להשתמש בו כספריית Go אם ברצונך לבנות יישום משלך סביבו.

KrakenD משתמש בקובץ תצורה, אותו ניתן לגלגל ביד או ליצור מכונה. הגבלת קצב, מניפולציה בתגובות, העברה, איתור באגים בנקודות קצה, אמצעי אבטחה של פרוטוקולים (למשל, הגנה מפני לחיצה על קליקים), שרת proxy, תעלול ושמירת זיכרון בתגובה בזיכרון - כולם נתמכים מהקופסה.

ניתן לקבץ מקרים של KrakenD בזמינות גבוהה. אין צורך בתוכנה נוספת בכדי לעשות זאת, אלא רק KrakenD עצמו. אתה יכול גם לפרוס KrakenD על פני אשכול Kubernetes ללא הרבה עבודה נוספת. ניתן להשיג מבחר של תוכנות ביניים של צד שלישי ממאגר KrakenD GitHub.

תמיכה ארגונית, כולל ייעוץ והדרכה, זמינה מיוצרי KrakenD, אם כי התמחור אינו נחשף.

MuleSoft Anypoint פלטפורמה

פלטפורמת ה- Anypoint של MuleSoft אמורה להיות היצע שלם - היא מכסה תכנון API, בנייה, אירוח, ניהול, אינטגרציה ותמיכה במפתחים במוצר מסחרי יחיד. 

באמצעות Anypoint תוכלו לפתח ממשקי API מאפס, או להשתמש מחדש במחברים ובאינטגרציות קיימות שנוצרו על ידי לקוחות MuleSoft אחרים ומשותפים ב- Anypoint Exchange. מחברים זמינים לפרוטוקולים גנריים (גישה לקבצים, HTTP, דוא"ל), מודולי שפה לשינוי נתונים (Java, JavaScript), שירותי ענן (Amazon AWS), יישומים מסחריים (Salesforce, SAP) ויישומי קוד פתוח (MongoDB).

לאלו שיוצרים ממשקי API שייצרכו על ידי שותפים או הציבור, Anypoint מספק את מנהל הקהילה של API ליצור ממשקי ממשק אינטרנט - מה ש- MuleSoft מכנה "פורטלים" - עבור אותם ממשקי API. כל התיעוד האינטראקטיבי, ההתאמה האישית (כולל תכונות כמו התאמת פלט בהתבסס על המיקום הגיאוגרפי של המשתמש) וניתוח השימוש ב- API כלולים.

Anypoint מציעה שלוש תוכניות תמחור, זהב, פלטינה וטיטניום, המשתנות בהתאם לרמת תמיכת הלקוחות ותכונות הארגון. כל שלוש התוכניות כוללות ממשקי API ללא הגבלה ותמורת תשלום נוסף עבור מחברי "פרימיום" (למשל, מחבר הראשי של IBM AS / 400).

נטפליקס צוול

Zuul, פרויקט קוד פתוח שיצר המהנדסים בנטפליקס, נבנה כדי לטפל בבקשות ניתוב לשירותי הזרמת הווידיאו של נטפליקס. אין הצעה מסחרית של Zuul - לפחות, לא מנטפליקס - אז תצטרך לסובב את Zuul ולנהל אותה לגמרי לבד.

Zuul כתוב בג'אווה, והוא משתמש בכלי ג'אווה נפוצים - Gradle, Ivy, Maven - כדי להפעיל. Zuul מציע מערך תכונות מינימלי יחסית בהשוואה למערכות ניהול API אחרות, תוך התמקדות בסינון ושיגור בקשות נכנסות בין שירותים. Zuul אמנם מספק תכונות גילוי שירותים, איזון עומסים, איגום חיבורים וניקוי באגים ("דרכון הבקשה"), אך חסרים פונקציות מתוחכמות יותר כגון עלייה למפתחים ותיעוד אוטומטי.

Zuul הוא פרויקט פעיל עם תכונות חדשות רבות המתוכננות לגרסאות עתידיות. למשל, ה"מסנן החום "הקרוב, ישבית תכונות מסוימות כדי לפנות את המעבד בתקופות של פעילות גבוהה.

טייק

Tyk כולל כברירת מחדל הרבה מאוד: שער ה- API, כלי הניתוח, פורטל dev, ולוח מחוונים לניהול. הוא כולל גם פונקציונליות עבור ממשקי API ללעג לפני שהם פורסמו רשמית, אחסון במטמון בקשות מובנה (שיכול להיכלל ישירות בהגדרת API), ותבניות תגובה לקודי שגיאת HTTP שונים.

Tyk זמין בארבע מהדורות, כל אחת למקרי שימוש שונים. המהדורה הקהילתית, מהדורת הקוד הפתוח של Tyk, כוללת רק את השער, המטפל ב- proxying, בקרת גישה, טרנספורמציות ורישום. באפשרותך לגלגל את הפונקציונליות שלך ישירות, או על ידי הקשה על המערכת האקולוגית התוספת של Tyk, עם תמיכה במספר שפות.

המהדורה המקומית מאפשרת לך להשתמש במוצר המסחרי בעל התכונות המלאות שמאחורי חומת האש שלך. רישיונות שער יחיד - מהדורות מפתחים, למעשה - זמינים בחינם, ללא מגבלות של שיחות API, אם כי לא ניתן להשתמש בממשקי ה- API בהגדרות מסחריות. רישיונות לשימוש מסחרי מתחילים ב -3000 דולר לשנה.

מהדורות הענן ורב העננים, הזמינות למגוון שירותי ענן פופולריים, מספקות את Tyk כשירות מתארח. גרסה בסיסית של ענן יחיד התומכת ב -1,000 שיחות API ליום זמינה בחינם (מלבד מה שספק שירותי הענן שלך גובה); תוכניות ברמה מקצועית מתחילות ב -450 דולר לחודש.

מנהל ה- API של WSO2

מנהל ה- API של WSO2 הוא בבסיסו קוד פתוח, בנוי עם Java. המוצר זמין לפריסה מקומית או מתארחת בענן עם תמיכה מסחרית, או כשירות מנוהל בענן.

אפשרויות הפריסה השונות מאפשרות מספר תרחישי ניהול שונים. לדוגמה, פריסת WSO2 מקומית יכולה לאכוף את המדיניות ואת התצורה האחרת באמצעות פורטל מפתח המתארח בענן, כאשר השינויים מסונכרנים בין ענן למתחם, או נדחקים מעת לעת מהענן (לסביבות שצריך להיות נעול).

ל- WSO2 כ 200 מחברים שניתן להשתמש בהם כדי לחבר בין שירותים חיצוניים. רבים הם מצרכים מפתחים נפוצים: Slack, Splunk, Kafka, Redis, Amazon S3, וכן הלאה.

תכונה נוספת של WSO2, "מיקרו-גייטוויי API", מבטיחה כי סוגים מסוימים של שיחות זוכים לאבטחה נוספת ולחביון נמוך יותר. לדוגמה, ניתן לטפל בדרך זו בשיחות המשמשות לניהול השער, או בשיחות המנותבות בין מיקרו-שירותים.

תוספת חדשה ל- WSO2 מוסיפה אינטגרציה עם רשת השירות Istio עבור Kubernetes. Istio אינו מנהל את ממשקי ה- API שנחשפים על ידי שירותי המיקרו שהיא מנהלת, ולכן WSO2 משתלב עם ה- proxy של Envoy המשמש את Istio לשם כך.

תמחור ההצעות המסחריות של WSO2 מתחיל בניסיון חינם של שבועיים עם עד מיליון שיחות API, ממשיך ב -550 דולר לחודש למשך 20 מיליון שיחות, ומוגדל משם לתצורות מותאמות אישית.