همانطور که در مقالهی رایانش ابری چیست؟ مطالعه کردید PaaS مخفف (Platform as a Service) است، توسعه دهندگان اساساً تمام چیزی را که برای ساخت یک برنامه نیاز دارند اعم از ابزارهای توسعه، زیرساخت و سیستم عاملها را اجاره میکنند. این مدل یکی از سه مدل رایانش ابری است. PaaS به طور گسترده توسعه اپلیکیشنهای وب را آسان میکند. از دیدگاه توسعه دهنده تمام مدیریت Backend در پشت صحنه رخ میدهد. اگرچه PaaS شباهتهایی به serverless computing دارد اما این دو مدل تفاوتهای بسیاری با هم دارند.
سه مدل خدماتی که رایانش ابری ارائه میدهد عبارتند از (SaaS (Software-as-a-Service) ، IaaS (Infrastructure-as-a-Service و PaaS. مدل LaaS به زیرساخت رایانش ابری اشاره میکند (سرورها، فضای ذخیره سازی و…) که توسط فروشنده ابر مدیریت میشود. در حالی که SaaS به برنامههای کاملی اشاره میکند که در ابر میزبانی میشوند و نگهداری آنها با فروشنده SaaS است. در نهایت سرویس PaaS، اگر یک مشتری SaaS مثل کسی است که خانه ای را اجاره کرده است، آنگاه مشتری PaaS مانند کسی است که تمام ابزارآلات سنگین برای ساخت سریع یک خانه را اجاره کرده است.
PaaS توسط هر اتصال اینترنتی قابل دسترسی است که امکان ساخت کامل یک اپلیکیشن را در مرورگر وب فراهم میکند. چون محیط توسعه به صورت محلی میزبانی نمیشود، توسعه دهندگان میتوانند از هر نقطهای از جهان بر روی اپلیکیشن کار کنند. این موضوع باعث میشود تا تیمهایی که از لحاظ موقعیت جغرافیایی از هم دور هستند بتوانند بر روی یک پروژه مشارکت داشته باشند بدون اینکه درگیر مسائل زیرساختی شوند.
پیشنهادهای اصلی که فروشندگان PaaS ارائه میدهند موارد زیر را شامل میشود:
اینها موارد اصلی هستند که بیشتر فروشندگان PaaS ارائه میدهند اما فروشندگان مختلف میتوانند خدمات دیگری نیز علاوه بر موارد ذکر شده داشته باشند.
فروشندگان PaaS مجموعهای از ابزارهای ضروری برای توسعه نرم افزار شامل ویرایشگر سورس کد، دیباگر، کامپایلر و سایر ابزارهای ضروری را ارائه میدهند. این ابزارها میتوانند در قالب یک فریمورک(Framework) ارائه شوند. ابزارهایی که فروشندگان مختلف ارائه میدهند متفاوت است اما به طور کلی PaaS باید شامل ابزارهایی باشد که به توسعه دهنده امکان توسعه کامل یک اپلیکیشن را در بستر وب بدهد.
PaaSها معمولا شامل میان افزارها میشوند بهطوری که دیگر نیاز نباشد تا توسعه دهندگان این کار را انجام دهند. میان افزار نرم افزاری است که بین اپلیکیشنهای سمت کاربر و سیستم عامل سرور قرار میگیرد. به عنوان مثال، میان افزار چیزی است که به نرم افزار اجازه دسترسی به ورودی کیبورد و موس را میدهد. میان افزار برای اجرای یک برنامه ضروری است اما کاربران نهایی با آن در ارتباط نیستند.
یک فروشنده PaaS سیستم عاملی که توسعه دهندگان بر روی آن کار میکنند و نرم افزار روی آن اجرا میشود را فراهم میکند.
PaaS پایگاه دادههای مدیریتی و نگهداری را ارائه میدهد. آنها معمولا یک سیستم مدیریت پایگاه داده را نیز به کاربر ارائه میدهند.
?
همانط.ر که میبینید Paas بالای IaaS در مدل خدمات رایانش ابری است. این بدین معناست که هرچیزی که در IaaS است در PaaS نیز وجود دارد. ارائه دهنده PaaS یا مدیریت سرورها، منابع و دادههای فیزیکی را بر عهده دارد و یا این خدمات را از ارائه دهنده IaaS تهیه میکند که در ابر زس هر دو محصول ارائه میشود.
با استفاده از PaaS توسعه دهندگان دیگر دغدغه مسائلی از قبیل ساخت، پیکربندی، تهیه پلتفرم و زیرساختهای Backend را ندارند و بنابراین نرم افزارها در PaaS بسیار سریع ساخته میشوند.
با PaaS تمام کاری که توسعه دهندگان انجام میدهند فقط نوشتن کد و تست نرم افزار است و فروشنده PaaS بقیه موارد را برای توسعه دهندگان فراهم میکند.
PaaS این امکان را به توسعه دهندگان میدهد تا همه کارهای ساخت، آزمون، پیاده سازی، میزبانی و بروزرسانی نرم افزارهایشان را در محیط یکسانی انجام دهند. این موضوع باعث میشود که توسعه دهندگان مطمئن باشند یک وب اپلیکیشن همانطور که قبل از انتشار عمل میکند در زمان انتشار نیز همانگونه عمل خواهد کرد.
در واقع محیط توسعه همان محیط ارائه نرم افزار است و در هنگام ارائه نرم افزار، تفاوت محیط تست و ارائه باعث اشکال در برنامه نمیشود.
استفاده از PaaS در بسیاری از موارد هزینه کمتری نسبت به LaaS برای کاربر دارد. از آن جایی که مشتریان PaaS مجبور به مدیریت و تهیه ماشینهای مجازی نیستند، هزینه کاهش پیدا میکند. به علاوه، بعضی از ارائه دهندگان دارای یک ساختار pay-as-you-go-pricing(به اندازه مصرف پرداخت کن) هستند که در آنها فروشنده تنها هزینه منابع استفاده شده توسط نرم افزار را از کاربر میگیرد که معمولا باعث کاهش چشمگیر هزینه کاربر میشود. هر چند، هر فروشنده دارای ساختار قیمتی کمی متفاوت نسبت به سایرین است و بعضی از فروشندگان هزینه را به صورت ماهانه دریافت میکنند.
در سرویسهای دیتاسنتر و سرور ابری زس می توانید با توجه به نیاز خود، هر کدام از دو روش پرداخت فوق را انتخاب کنید.
ارائه دهندگان PaaS تمام موارد مجوزگیری مربوط به سیستم عاملها، ابزارهای توسعه و هرچیز دیگری که در پلتفرمشان وجود دارد را انجام میدهند و دیگری نیازی نیست که شما با این موارد درگیر شوید.