برای مدیریت و پیگیری APIها ابزارهای مختلفی در اختیار توسعهدهندگان قرار میگیرد که از جملهی آنها میتوان به پلتفرمهای مدیریت، دایرکتوریها، درگاهها و بازارچههای API اشاره کرد. در این پست قصد داریم دو ابزار مهم این حوزه یعنی بازارچه API و درگاه API را مورد بررسی قرار داده و تفاوتهایشان را با یکدیگر توضیح دهیم.
پیشنهاد میشود بخوانید: APIها را بیشتر بشناسید.
بازارچهی API چیست؟
در پلتفرمهای فروشگاه آنلاین شما میتوانید محصولات و سرویسهای خود را به دیگران معرفی کرده و ارائه دهید. از طرفی دیگر میتوانید محصولات و سرویسهایی که سایرین در این سایت ارائه میدهند را انتخاب کرده و مورد استفاده قرار دهید.
احتمالا با بازارچههای APIی معروف و شناختهشدهای مثل آمازون و فیسبوک آشنا باشید. این بازارچهها نیز همانند پلتفرمهای فروش آنلاین عمل میکنند. اگر ارائهدهندهی APIهای مختلف هستید، میتوانید سرویسهایتان را در بازارچه لیست کرده و در اختیار سایرین قرار دهید و اگر توسعهدهنده هستید نیز میتوانید، APIهای ارائه شده در بازارچه را مورد بررسی قرار داده، انتخاب کرده و مورد استفاده قرار دهید.
مانند انواع دیگر فروشگاههای اینترنتی، یک بازارچهی API نیز از کامپوننتهای مختلفی از جمله پورتالی مخصوص توسعهدهندگا و پورتالی مخصوص ارائهدهندگان دارد.
بازارچه Rapid API چگونه عمل میکند؟
برای مثال بازارچهی RapidAPI یک داشبورد مدیریتی برای برای توسعهدهندگان در نظر گرفته تا بتوانند از طریق آن APIهایی که دریافت کردهاند را تحت نظر قرار دهند و میزان استفاده، هزینه و … را بررسی کنند.
همچنین یک داشبورد مدیریتی در اختیار ارائهدهندگان قرار دادهاست تا با استفاده از آن بتوانند Endpointهای مرتبط با APIهایشان را تعریف قیمت آنها را مشخص کرده، مصرفکنندگان را ردیابی کنند و از درآمدشان اطلاعات مختلفی را به دست آورند.
یک بازارچه API چه امکاناتی را در اختیار کاربرانش قرار میدهد؟
- به آنها امکان جستجو بدهد.
- مستندات استاندارد و کاملی برای استفاده از APIها داشته باشد.
- امکان آزمایش و تست، بحث و بررسی را در اختیار کاربران قرار دهد.
- از سرویسها و خدماتی که ارائه میدهد پشتیبانی کند.
به طور کلی یک بازارچهی API باید یافتن و اتصال به APIها را برای توسعهدهندگان بسیار آسان کند.
همچنین باید این امکان را در اختیار ارائهدهندگان قرار دهد که APIهای خود را ارائه دهند، از آنها درآمد کسب کرده و بر عملکردشان نظارت و کنترل داشته باشند.
درگاه API چیست؟
درگاه API، یک کامپونتت معماری است که جلوی سرور قرار میگیرد و وظیفهاش آمادهسازی نیازمندیهایی است که برای ارائه APIها برای استفاده در دنیای واقعی توسط توسعهدهندگان نیاز است.
هر API با هدف مخصوصی ساخته شده که با سایر APIها متفاوت است؛ اما تمامی آنها دارای تعدادی نیازمندی یکسان برای ارائه هستند. از جمله:
- محدود کردن نرخ
- مسیریابی و مدیریت ترافیک
- هویتسنجی و بررسی اعتبار کلیدهای دسترسی به API
- ورود به سیستم و تجزیه و تحلیل عملکرد
- سازماندهی و تبدیل نقاط پایانی اساسی
- حفظ امنیت دسترسی به API
- و غیره…
تیمهای برنامهنویسی و توسعهی APIها میتوانند به جای پیادهسازی این ویژگیهای برای تک تک APIها، در یک کامپوننت جداگانه به نام درگاه تمامی این امکانات را پیادهسازی کنند و به عنوان یک درگاه ورودی جلوی مجموعهای از APIها قرار دهند.
از جمله درگاههای معروفی که وجود دارد، میتوان به Apigee، MuleSoft و Mashery اشاره کرد.
همچنین پلتفرمهای متنباز مثل Kong و Tyk و راهحلهای مبتنی بر ابری مانند سیستم مدیریت API شرکت Azure و درگاه API مربوط به کمپانی AWS نیز مثالهایی در این حوزه هستند.
بررسی تفاوت اهداف در بازارچه API با درگاه API
با وجود شباهتهایی که ممکن است میان درگاه و بازارچه وجود داشته باشد، این دو به طور اساسی با اهداف متفاوتی به وجود آمدهاند.
هدف اصلی یک بازارچه API این است که برای توسعهدهندگان امکان کشف و اتصال به APIهای مختلفی که توسط ارائهدهندگان مختلف ایجاد و منتشر شدهاست را فراهم کند.
همچنین یک پلتفرم ایجاد کند تا ارائهدهندگان بتوانند APIهای خود را منتشر کرده و از آن درآمد کسب کنند.
در مقابل، هدف یک درگاه این است که نحوه پردازش درخواستهایی که برای استفاده از APIهای مختلف رسیده است را مدیریت کرده و هماهنگ نماید.
تفاوت بازارچه API و درگاه API در برابر ارائهدهندگان و کاربران نهایی چگونه است؟
یک بازارچه میتواتد برای مدیریت و ارائهی APIهای مرتبط با چندین ارائهدهندهی مختلف مورد استفاده قرار بگیرد اما درگاه تنها برای کنترل و مدیریت APIهای مربوط به یک ارائهدهنده مورد استفاده قرار میگیرد.
مسئلهی دیگری که در زمینهی تفاوت بازارچه با درگاه API میتوان بررسی کرد، از منظر کاربر نهایی است.
بازرچههای API مورد استفادهی هر دو نوع کاربر یعنی توسعهدهنده و ارائهدهنده قرار میگیرد.
همانطور که گفتیم، ارائهدهندگان میتوانند در بازارچهها APIهای خود را در معرض دید و فروش قرار دهند و توسعهدهندگان نیز میتوانند به جستجو و اتصال به APIهای مورد نیازشان بپردازند. این در حالی است که درگاه API بیشتر در سمت ایجاد کنندهی API یعنی همان ارائهدهندهها قرار دارد.
آیا میتوان از درگاه و بازارچهی API باهم استفاده کرد؟
کاملا!
یک شرکت توسعه و انتشار APIهای عمومی را در نظر بگیرید.
این شرکت ممکن است یک درگاه برای یکپارچهسازی و مدیریت میکروسرویسهای مرتبط با اتصال و ارائهی APIهایش پیادهسازی کند.
بعد از اینکه یک API با استفاده از درگاه ساخته شد، آن شرکت میتواند از یک بازارچه برای انتشار، تبلیغات، مدیریت و کسب درآمد از آن API استفاده کند.
نتیجهگیری
بازارچه و درگاه API، هر دو، ابزارهای مهمی در برنامهنویسی هستند.
این که این دو را به خوبی بشناسید و تفاوتهایشان را درک کنید بسیار مفید خواهد بود. در جدول جمعبندی زیر این دو ابزار مهم را به طور خلاصه با یکدیگر مورد مقایسه قرار دادهیم.
API Marketplace | API Gateway | |
هدف | به توسعه دهندگان کمک میکند تا API ها را پیدا کرده و به آنها و متصل شوند. | به ارائهدهندگان کمک میکند تا میکروسرویسهای خود را از طریق یک API واحد ارائه دهند. |
قابلیت های کلیدی | جستجو، مستندسازی، تستAPI، code snippets، تائید اعتبار کاربر، تجزیهوتحلیل API،، پشتیبانی از API | Rate limiting، احراز هویت کاربر، ورود به سیستم، usage tiers, injection prevention، ،orchestration |
کاربر نهایی | مصرف کنندگان و ارائهدهندگانAPI | ارائهدهندگان API |
مثالها | RapidAPI | MuleSoft |
پادیوم به عنوان پلتفرم ارائه خدمات، این امکان را به کسبوکارها میدهد که خدمات خودشان را با نام و برند خودشان و به سهولت در معرض استفاده سایرین قراردهند و گستره مشتریان خود را افزایش دهند.
سوالات متداول
یک بازارچه میتواتد برای مدیریت و ارائهی APIهای مرتبط با چندین ارائهدهندهی مختلف مورد استفاده قرار بگیرد اما درگاه تنها برای کنترل و مدیریت APIهای مربوط به یک ارائهدهنده مورد استفاده قرار میگیرد. مسئلهی دیگری که در زمینهی تفاوت بازارچه با درگاه API میتوان بررسی کرد، از منظر کاربر نهایی است.
بازرچههای API مورد استفادهی هر دو نوع کاربر یعنی توسعهدهنده و ارائهدهنده قرار میگیرد. همانطور که گفتیم، ارائهدهندگان میتوانند در بازارچهها APIهای خود را در معرض دید و فروش قرار دهند و توسعهدهندگان نیز میتوانند به جستجو و اتصال به APIهای مورد نیازشان بپردازند. این در حالی است که درگاه API بیشتر در سمت ایجاد کنندهی API یعنی همان ارائهدهندهها قرار دارد.
کاملا! یک شرکت توسعه و انتشار APIهای عمومی را در نظر بگیرید. این شرکت ممکن است یک درگاه برای یکپارچهسازی و مدیریت میکروسرویسهای مرتبط با اتصال و ارائهی APIهایش پیادهسازی کند. بعد از اینکه یک API با استفاده از درگاه ساخته شد، آن شرکت میتواند از یک بازارچه برای انتشار، تبلیغات، مدیریت و کسب درآمد از آن API استفاده کند.