Apigee Edge چیست؟

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

Apigee Edge پلتفرمی برای توسعه و مدیریت APIها است. با قرار دادن سرویس‌ها در جلوی یک لایه پروکسی، Edge یک انتزاع یا نما برای APIهای سرویس backend شما فراهم می‌کند و امنیت، محدودیت سرعت، سهمیه‌بندی، تجزیه و تحلیل و موارد دیگر را فراهم می‌کند.

برای مثال، می‌توانید یک وبکست در مورد چگونگی استفاده Walgreens از APIها و Apigee Edge برای ارائه یک اکوسیستم غنی از برنامه‌ها در زمینه چاپ عکس، تجویز دارو و سایر خدماتی که ارائه می‌دهند، تماشا کنید .

اولین پروکسی خود را بسازید!

شتاب دیجیتال

این ویدیو به شما یک نمای کلی از چگونگی کمک Apigee به شما در تبدیل شدن به یک کسب و کار دیجیتال ارائه می‌دهد.

انتخاب بین مدیریت سرویس و مدیریت API

این ویدیو به شما کمک می‌کند تا تفاوت‌های مهم بین مدیریت خدمات و مدیریت API را درک کنید.

ارائه خدمات شما در فضای وب

امروزه شرکت‌ها می‌خواهند سرویس‌های backend خود را در وب در دسترس قرار دهند تا این سرویس‌ها بتوانند توسط برنامه‌هایی که روی دستگاه‌های تلفن همراه و دسکتاپ اجرا می‌شوند، مورد استفاده قرار گیرند. یک شرکت ممکن است بخواهد سرویس‌هایی را ارائه دهد که اطلاعات قیمت‌گذاری و موجودی محصول، خدمات فروش و سفارش، خدمات ردیابی سفارش و هرگونه خدمات دیگری را که توسط برنامه‌های مشتری مورد نیاز است، ارائه می‌دهند.

شرکت‌ها اغلب سرویس‌ها را به عنوان مجموعه‌ای از نقاط پایانی HTTP ارائه می‌دهند. سپس توسعه‌دهندگان برنامه‌های کلاینت درخواست‌های HTTP را به این نقاط پایانی ارسال می‌کنند. بسته به نقطه پایانی، سرویس ممکن است داده‌ها را که به صورت XML یا JSON فرمت شده‌اند، به برنامه کلاینت بازگرداند.

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

تصویر زیر این نوع مدل را نشان می‌دهد:

انواع مختلفی از برنامه‌ها مانند برنامه‌های تلفن همراه، برنامه‌های فروش، شرکا و برنامه‌های وب به سرویس‌های backend مانند ESB، SOA، سرورهای برنامه و پایگاه‌های داده متصل می‌شوند.

از آنجا که ارائه دهندگان خدمات خود را از طریق وب در دسترس قرار می‌دهند، باید اطمینان حاصل کنند که تمام اقدامات لازم را برای ایمن‌سازی و محافظت از خدمات خود در برابر دسترسی غیرمجاز انجام داده‌اند. به عنوان یک ارائه دهنده خدمات، موارد زیر را در نظر بگیرید:

  • امنیت: چگونه دسترسی به سرویس‌های خود را کنترل خواهید کرد تا از دسترسی غیرمجاز جلوگیری شود؟
  • سازگاری: آیا خدمات شما در پلتفرم‌ها و دستگاه‌های مختلف کار خواهد کرد؟
  • قابلیت اندازه‌گیری: چگونه می‌توانید خدمات خود را رصد کنید تا از در دسترس بودن آنها اطمینان حاصل کنید؟
  • کسب درآمد: چگونه می‌توانید مشتریان را برای دسترسی به خدمات خود پیگیری و صورتحساب صادر کنید؟
  • و بسیاری ملاحظات دیگر

پس از انتشار یک برنامه کلاینت که به هر سرویسی دسترسی دارد، ارائه‌دهنده خدمات موظف است با افزودن، تغییر یا حذف آن سرویس‌ها، از ادامه کار آن سرویس‌ها در طول زمان اطمینان حاصل کند. ارائه‌دهنده خدمات همچنین باید راهی برای آگاه نگه داشتن توسعه‌دهندگان برنامه از هرگونه تغییر در سرویس‌ها داشته باشد تا اطمینان حاصل شود که برنامه‌های کلاینت با آن سرویس‌ها همگام می‌مانند.

توسعه‌دهندگان برنامه‌های کلاینت هنگام تلاش برای استفاده از خدمات ارائه‌دهندگان مختلف با چالش‌هایی روبرو هستند. امروزه فناوری‌های زیادی برای استفاده توسط یک ارائه‌دهنده خدمات جهت ارائه خدماتش در دسترس است. یک برنامه کلاینت ممکن است مجبور باشد از یک مکانیسم برای استفاده از یک سرویس از یک ارائه‌دهنده و از مکانیسم دیگری برای استفاده از سرویس از یک ارائه‌دهنده دیگر استفاده کند. توسعه‌دهندگان برنامه حتی ممکن است با شرایطی روبرو شوند که مجبور باشند از مکانیسم‌های مختلفی برای استفاده از خدمات یک ارائه‌دهنده استفاده کنند.

ارائه خدمات از طریق Apigee Edge

Apigee Edge شما را قادر می‌سازد تا با یک API خوش‌تعریف که در تمام سرویس‌های شما، صرف نظر از پیاده‌سازی سرویس، سازگار است، دسترسی امن به سرویس‌های خود را فراهم کنید. یک API سازگار:

  • استفاده از خدمات شما را برای توسعه‌دهندگان برنامه آسان می‌کند.
  • شما را قادر می‌سازد تا پیاده‌سازی سرویس backend را بدون تأثیر بر API عمومی تغییر دهید.
  • شما را قادر می‌سازد تا از تجزیه و تحلیل، کسب درآمد، پورتال توسعه‌دهندگان و سایر ویژگی‌های تعبیه‌شده در Edge بهره‌مند شوید.

تصویر زیر معماری‌ای را نشان می‌دهد که در آن Edge درخواست‌های برنامه‌های کلاینت به سرویس‌های backend شما را مدیریت می‌کند:

Apigee Edge بین برنامه‌های کلاینت و سرویس‌های backend قرار می‌گیرد.

به جای اینکه توسعه‌دهندگان برنامه مستقیماً از سرویس‌های شما استفاده کنند، به یک پروکسی API که در Edge ایجاد شده است، دسترسی پیدا می‌کنند. پروکسی API به عنوان نگاشتی از یک نقطه پایانی HTTP در دسترس عموم به سرویس backend شما عمل می‌کند. با ایجاد یک پروکسی API، به Edge اجازه می‌دهید وظایف امنیتی و مجوزدهی مورد نیاز برای محافظت از سرویس‌های شما و همچنین تجزیه و تحلیل، نظارت و کسب درآمد از این سرویس‌ها را انجام دهد.

از آنجا که توسعه‌دهندگان برنامه، درخواست‌های HTTP را به یک پروکسی API ارسال می‌کنند، نه مستقیماً به سرویس‌های شما، توسعه‌دهندگان نیازی به دانستن چیزی در مورد پیاده‌سازی سرویس‌های شما ندارند. تنها چیزی که توسعه‌دهنده باید بداند این است:

  • آدرس اینترنتی (URL) نقطه پایانی پروکسی API.
  • هرگونه پارامتر پرس‌وجو، هدر یا پارامترهای بدنه که در یک درخواست ارسال می‌شوند.
  • هرگونه اعتبارنامه احراز هویت و مجوز مورد نیاز.
  • قالب پاسخ، شامل قالب داده پاسخ، مانند XML یا JSON.

پروکسی API، توسعه‌دهنده برنامه را از سرویس backend شما جدا می‌کند. بنابراین، تا زمانی که API عمومی ثابت بماند، می‌توانید پیاده‌سازی سرویس را تغییر دهید. با حفظ یک API frontend ثابت، برنامه‌های کلاینت موجود صرف نظر از تغییرات در backend به کار خود ادامه خواهند داد.

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

برای اطلاعات بیشتر، به درک APIها و پروکسی‌های API مراجعه کنید.

یک محصول API ایجاد کنید

یک پروکسی API، نقطه پایانی HTTP در Apigee Edge است که توسعه‌دهندگان برای دسترسی به سرویس‌های backend شما از آن استفاده می‌کنند. اگرچه این امکان وجود دارد، اما معمولاً پروکسی‌های API را به صورت جداگانه در دسترس قرار نمی‌دهید. در عوض، یک یا چند پروکسی API را در یک محصول API گروه‌بندی می‌کنید.

یک محصول API مجموعه‌ای از پروکسی‌های API است که با یک طرح سرویس ترکیب شده است. این طرح سرویس می‌تواند محدودیت‌های دسترسی را برای پروکسی‌های API تعیین کند، امنیت را فراهم کند، امکان نظارت و تجزیه و تحلیل را فراهم کند و ویژگی‌های اضافی ارائه دهد. محصولات API همچنین مکانیسم اصلی هستند که Edge برای مجوز و کنترل دسترسی به API های شما استفاده می‌کند.

شما هنگام ایجاد محصولات API انعطاف‌پذیری زیادی دارید. به عنوان مثال، چندین محصول API می‌توانند از یک پروکسی API مشترک استفاده کنند. شکل زیر سه محصول API را نشان می‌دهد. توجه داشته باشید که همه محصولات اجازه دسترسی به پروکسی API 3 را می‌دهند، اما فقط محصول A اجازه دسترسی به پروکسی API 1 را می‌دهد.

محصول A به پروکسی ۱ و ۳ دسترسی دارد. محصول B به پروکسی ۳ دسترسی دارد. محصول C به پروکسی ۲، ۳ و ۴ دسترسی دارد.

شما می‌توانید ویژگی‌های مختلفی را برای هر محصول API تنظیم کنید. به عنوان مثال، ممکن است یک محصول API را با محدودیت دسترسی پایین، مانند ۱۰۰۰ درخواست در روز، با قیمت مناسب در دسترس قرار دهید. سپس یک محصول API دیگر را منتشر کنید که دسترسی به همان پروکسی API را فراهم می‌کند، اما با محدودیت دسترسی بسیار بالاتر، با قیمت بالاتر. یا، ممکن است یک محصول API رایگان ایجاد کنید که امکان دسترسی فقط خواندنی به خدمات شما را فراهم می‌کند، و سپس یک محصول API را به همان پروکسی‌های API که امکان دسترسی خواندن/نوشتن را فراهم می‌کنند، بفروشید.

برای اطلاعات بیشتر، به مدیریت محصولات API مراجعه کنید.

به یک برنامه سمت کلاینت اجازه دهید به محصول API شما دسترسی داشته باشد

وقتی توسعه‌دهندگان اپلیکیشن تصمیم می‌گیرند که به خدمات شما دسترسی داشته باشند، ابتدا باید اپلیکیشن کلاینت خود را در محصول API شما ثبت کنند.

یک برنامه‌ی کلاینت برای فراخوانی یک API مرتبط با یک محصول API به یک کلید نیاز دارد.

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

در هر زمانی، می‌توانید کلید را لغو کنید تا برنامه‌ی کلاینت دیگر به سرویس‌های شما دسترسی نداشته باشد. یا می‌توانید یک محدودیت زمانی برای یک کلید تعریف کنید تا توسعه‌دهنده پس از مدت زمان مشخصی، کلید را به‌روزرسانی کند.

شما تصمیم می‌گیرید که چگونه درخواست‌های ثبت نام از توسعه‌دهندگان برای دسترسی به محصولات API خود را مدیریت کنید. با استفاده از خدمات توسعه‌دهندگان Apigee Edge، می‌توانید فرآیند ثبت نام را خودکار کنید؛ یا می‌توانید از یک فرآیند دستی برای کنترل دسترسی استفاده کنید.

ایجاد محصولات API و در دسترس قرار دادن آنها برای توسعه‌دهندگان

  1. یک یا چند پروکسی API ایجاد کنید که URL های عمومی موجود را به سرویس‌های backend شما نگاشت کند.
  2. یک محصول API ایجاد کنید که پروکسی‌های API شما را در یک بسته قرار دهد.
  3. پراکسی‌های API و محصول API خود را مستقر کنید.
  4. به توسعه‌دهندگان خود اطلاع دهید که محصول API در دسترس است.

به محض اینکه توسعه‌دهندگان اپلیکیشن از در دسترس بودن محصول API شما مطلع شوند، آنها:

  1. برنامه‌های کلاینت خود را با محصول API شما ثبت کنند.
  2. یک کلید API برای محصول API دریافت کنید.
  3. از طریق پروکسی‌های API (که در محصول API موجود هستند) به سرویس‌های خود درخواست دهید و کلید API را با هر درخواست ارسال کنید.

اجزای Apigee Edge

Apigee Edge شامل سرویس‌های زمان اجرای API، مانیتورینگ و تجزیه و تحلیل و توسعه‌دهندگان است که در کنار هم زیرساخت جامعی را برای ایجاد، امنیت، مدیریت و عملیات API فراهم می‌کنند.

شکل زیر سرویس‌های Edge را نشان می‌دهد:

توسعه‌دهندگان به اکوسیستم توسعه‌دهندگان دسترسی دارند که شامل SmartDocs، پورتال قابل تنظیم، مدیریت کلید سلف سرویس و SDKها می‌شود. برنامه‌ها و سرویس‌ها به API runtime دسترسی دارند که شامل دروازه، رابط‌ها، کد سفارشی، امنیت و APIهای مدیریتی می‌شود. مهندسان عملیات به نظارت و تجزیه و تحلیل دسترسی دارند که شامل گزارش‌های تجاری، نظارت بر عملکرد، گزارش‌های سفارشی و ردیابی می‌شود.

زمان اجرای API لبه

سرویس‌های API Apigee Edge تماماً در مورد ایجاد و استفاده از APIها هستند، چه شما به عنوان ارائه‌دهنده خدمات، در حال ساخت پروکسی‌های API باشید و چه به عنوان یک توسعه‌دهنده برنامه، از APIها، SDKها و سایر سرویس‌های رفاهی استفاده کنید.

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

اگر شما یک توسعه‌دهنده Node.js هستید، می‌توانید ماژول‌های Node.js خود را به طور یکپارچه به Edge اضافه کنید تا APIها و ترکیب‌های API ایجاد کنید، در عین حال از مزایایی که Edge ارائه می‌دهد، از تبدیل پیام گرفته تا امنیت و تجزیه و تحلیل، بهره ببرید.

نظارت و تجزیه و تحلیل لبه

Apigee Edge API Analytics ابزارهای قدرتمندی برای مشاهده روندهای استفاده کوتاه‌مدت و بلندمدت از APIهای شما ارائه می‌دهد. می‌توانید مخاطبان خود را بر اساس توسعه‌دهندگان و برنامه‌های برتر دسته‌بندی کنید، میزان استفاده را با روش API درک کنید تا بدانید کجا سرمایه‌گذاری کنید و گزارش‌های سفارشی در مورد اطلاعات سطح تجاری یا عملیاتی ایجاد کنید.

همزمان با عبور داده‌ها از Edge، چندین نوع اطلاعات پیش‌فرض از جمله URL، IP، شناسه کاربر برای اطلاعات فراخوانی API، تأخیر، داده‌های خطا و غیره جمع‌آوری می‌شوند. می‌توانید سیاست‌هایی برای اضافه کردن اطلاعات دیگر، مانند هدرها، پارامترهای پرس‌وجو و بخش‌هایی از درخواست یا پاسخ استخراج‌شده از XML یا JSON ایجاد کنید. این اطلاعات به صورت ناهمزمان از جریان درخواست/پاسخ واقعی جمع‌آوری می‌شوند و بنابراین هیچ تأثیری بر عملکرد API ندارند.

رابط کاربری مدیریت به شما امکان می‌دهد چندین معیار و بُعد را در یک مرورگر مشاهده کنید، همانطور که در شکل زیر نشان داده شده است:

یک داشبورد تحلیلی که تعداد خطاهای سیاستی را به صورت نمودار و جدول نشان می‌دهد.

با این حال، شما می‌توانید از طریق رابط خط فرمان یا از طریق APIهای RESTful به سرویس Analytics دسترسی داشته باشید و آن را کنترل کنید. برای اطلاعات بیشتر به مرور کلی API Analytics مراجعه کنید.

اکوسیستم توسعه‌دهندگان لبه

Apigee Edge خدمات توسعه‌دهنده‌ای ارائه می‌دهد که شما را قادر می‌سازد:

  • مدیریت جامعه توسعه‌دهندگان اپلیکیشن که از خدمات شما استفاده می‌کنند.
  • با توسعه‌دهندگان داخلی و خارجی کار کنید و روابط را با مدل‌های مالی رسمی کنید.
  • توسعه‌دهندگان را استخدام کنید و یک پورتال توسعه‌دهندگان ایجاد کنید. توسعه‌دهندگان اپلیکیشن به پورتال شما متصل می‌شوند تا به مستندات API دسترسی پیدا کنند، درباره محصولات API عمومی شما اطلاعات بیشتری کسب کنند و کلیدهای API را مدیریت کنند.

هر مشتری Edge می‌تواند پورتال توسعه‌دهنده خود را، چه در فضای ابری و چه در محل با Apigee Edge برای فضای ابری خصوصی، ایجاد کند.

Apigee Edge شما را قادر می‌سازد دو نوع پورتال ایجاد کنید:

کسب درآمد

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

طرح‌ها شامل طرح‌های پیش‌پرداخت، طرح‌های پس‌پرداخت، طرح‌های با هزینه ثابت، طرح‌های با نرخ متغیر، طرح‌های «فری‌میوم»، طرح‌های متناسب با توسعه‌دهندگان خاص، طرح‌های پوشش‌دهنده گروه‌های توسعه‌دهندگان و موارد دیگر می‌شوند. علاوه بر این، کسب درآمد شامل امکانات گزارش‌دهی و صدور صورتحساب نیز می‌شود.

برای اطلاعات بیشتر، به نمای کلی کسب درآمد مراجعه کنید.

طعم‌های لبه

Apigee Edge در طعم‌های زیر موجود است:

  • ابر عمومی: یک نسخه میزبانی‌شده SAAS که در آن Apigee محیط را نگهداری می‌کند و به شما امکان می‌دهد تا بر ساخت سرویس‌های خود و تعریف APIها برای آن سرویس‌ها تمرکز کنید.
  • ابر خصوصی: یک نصب در محل که در آن شما محیط سخت‌افزار را کنترل می‌کنید و مسئول نصب، ارتقا، نگهداری و سایر فرآیندهای اداری هستید.

اگر به نسخه هیبریدی Apigee ما علاقه‌مند هستید، به مباحث Apigee X زیر مراجعه کنید:

از نظر عملکردی، نسخه‌های Public Cloud و Private Cloud بسیار شبیه به هم هستند. با این حال، نسخه Private Cloud از تمام ویژگی‌های نسخه Public Cloud پشتیبانی نمی‌کند . ویژگی‌هایی که Private Cloud پشتیبانی نمی‌کند عبارتند از:

  • اهداف میزبانی شده
  • افزونه‌ها
  • پورتال‌های توسعه‌دهنده یکپارچه ( توجه : پورتال‌های توسعه‌دهنده مبتنی بر دروپال پشتیبانی می‌شوند)
  • نظارت بر API
  • حس

برای مشاهده‌ی فهرستی از تفاوت‌های بین طعم‌ها، به مقایسه‌ی محصولات Apigee مراجعه کنید.

همچنین تفاوت‌های جزئی بین APIها وجود دارد، همانطور که در تفاوت‌های بین API لبه برای ابر عمومی و API ابر خصوصی توضیح داده شده است.

ابر عمومی از حساب‌های رایگان و پولی پشتیبانی می‌کند. ابر خصوصی نیاز به حساب‌های پولی دارد.

برای پشتیبانی کامل از نصب در محل، نسخه Private Cloud شامل اجزایی مانند سرور مدیریت Apigee، یک پایگاه داده Apache Cassandra NoSQL، یک سرور OpenLDAP، یک مسیریاب پیام و یک پردازشگر پیام است.