مقدمه‌ای بر رایانش ابری

گردآوری و تالیف : ارسطو عباسی
تاریخ انتشار : 08 مهر 1397
دسته بندی ها : آموزشی

در این مطلب قصد داریم رایانش ابری و مزایای آن‌ها را معرفی کنیم. ابتدای کار بیایید با یک تعریف از رایانش ابری آشنا شویم.

رایانش ابری چیست؟

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

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

احتمال دارد حتی با وجود اینکه نمی‌دانید رایانش ابری چیست اما در حال حاضر از آن استفاده کنید. اگر از یک سرویس آنلاین ایمیل، سرویسی برای ویرایش تصاویر و سندها به صورت آنلاین، استریم ویدیو و... استفاده می‌کنید، باید بگویم که رایانش ابری شما را قابل به انجام چنین کارهایی می‌کند. 

یک مثال می‌تواند نتفلیکس باشد. نتفلیکس از رایانش ابری برای سرویس استریمینگ ویدیو خود استفاده می‌کند، شرکت‌های بسیار دیگری نیز وجود دارند که از این قابلیت بهره می‌برند.

هدف رایانش ابری این است که با به اشتراک گذاری منابع، همه چیز را منسجم کند و وضعیت اقتصادی را نیز در تعادل قرار دهد. پس یکی از مزیت‌های رایانش ابری می‌تواند از نظر اقتصادی باشد. شما تنها پول چیزی را خواهید داد که از آن استفاده می‌کنید، بروزرسانی‌ و مقایس‌پذیری در این محیط به صورت خودکار انجام می‌شود. مدلی که رایانش ابری برای شما فراهم می‌سازد مدل pay-as-you-go است. 

در حال حاضر سازمان‌ها سعی دارند تا از مصرف منابع برای زیرساخت‌های کامپیوتری و نگه‌داری‌شان به صورت منحصر به فرد خودداری کنند. حال آن‌ها تمرکزشان را روی سرویس‌های ابری third-part –شخص‌ثالث؛ سرویس‌هایی که شرکت‌های دیگری ارائه می‌کنند- گذاشته‌اند.

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

در حال حاضر اپلیکیشن‌های مختلف بسیاری را از طریق ابر اجرا می‌کنند، مواردی مانند CRM، HR، حسابداری و... .

رایانش ابری چگونه کار می‌کند

سرویس‌های رایانش ابری براساس آنکه فراهم کننده‌های مختلفی دارد، ممکن است با همدیگر نیز کمی تفاوت داشته باشند. این فراهم‌ کننده‌های سرویس به شرکت‌ها یک داشبورد یا محیط مدیریت را ارائه می‌دهند. این کار باعث می‌شود که تیم آی‌تی یک شرکت تواند بهتر حساب‌ها را مدیریت کند و منابع لازم را درخواست نماید. همچنین برخی از این سیستم‌ها قابلیت‌هایی مانند REST API و CLI را در اختیار توسعه‌دهندگان قرار می‌دهند تا بتوانند قادر به توسعه در محیط ابری باشند.

رایانش ابری به کلمه ابر اشاره دارد، مکانی که منابع در حال محاسبه را براساس تقاضا در اختیار کاربران قرار می‌دهد. در حقیقت هر چیزی که کاربر برای آن پول داده باشد در اختیار وی قرار می‌گیرد. 

  • منابع منعطف – مقیاس‌پذیری سریع حجم داده‌ها براساس تقاضا.
  • سرویس‌ها تنها براساس چیزی که کاربر می‌خواهد حساب می‌شود.
  • دسترسی خودی – تمام منابع مربوط به آي‌تی قابلیت دسترسی به صورت کامل را خواهند داشت.

سه نوع از سرویس‌های ابری

سه دسته مهم از سرویس‌‌های ابری شامل موارد زیر می‌شوند:

  • PaaS - platform as a service
  • SaaS - software as a service
  • IaaS - infrastructure as a service

هر سه این موارد براساس یکدیگر ساخته می‌شوند، بنابراین گاهی اوقات این موارد را Cloud Computing Stack می‌نامند. 

PaaS

 platform as a serviceاشاره به سرویس رایانش ابری دارد که یک محیط مبتنی بر ابر را برای توسعه، تست، تحویل و مدیریت اپلیکیشن‌های مختلف ارائه می‌کند. PaaS طراحی شده تا کار توسعه‌دهندگان برای توسعه اپلیکیشن‌های وب و موبایل را بسیار سریع‌تر و راحت‌تر بکند. بنابراین توسعه‌دهندگان دیگر نیازی به نگرانی راجع به هزینه‌های مدیریت و پیاده‌سازی زیرساخت‌های کامپیوتری و سخت‌افزاری، شبکه و بانک اطلاعاتی ندارند.

فواید PaaS

  • توسعه و تحویل سریع‌تر اپلیکیشن‌ها
  • توسعه وب اپلیکیشن جدید در یک دقیقه
  • کم کردن پیچیدگی با استفاده از middleware به عنوان یک سرویس

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

PaaSها را می‌توان به دو دسته متن باز و متن بسته تقسیم کرد. همچنین مواردی نیز وجود دارند که سازگاری بیشتری با موبایل دارند که به عنوان mPaaS شناخته می‌شوند.

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

چند نمونه از فراهم ‌کننده‌های سرویس PaaS عبارتند از: Amazon Web Services Elastic Beanstalk، Google App Engine و Salesforce.

SaaS

Software-as-a-service روشی برای تحویل نرم افزار از طریق اینترنت براساس عضویت است. 

فراهم کننده‌های این سرویس، گزینه‌های مورد نیاز برای داشتن یک تجربه خوب در جهت استفاده از نرم افزار فراهم می‌کنند. مواردی مانند نگه‌داری، بروزرسانی، پچ‌های امنیتی و همچنین مدیریت زیرساخت‌ها و مواردی از این دست. 

کاربران می‌توانند از طریق کامپیوتر، تبلت و یا دستگاه‌های موبایل‌شان که دسترسی به اینترنت دارد، از اپلیکیشن‌ها استفاده کنند.

فواید استفاده از SaaS

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

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

یک مثال بسیار معروف از سرویس SaaS ابزار Microsoft Office 365 است.

IaaS

Infrastructure-as-a-Service پایه و اساس سرویس‌های رایانش ابری است. با استفاده از این سرویس شما به موارد پایه‌ای یک سرویس رایانشی مانند سرورها، ماشین‌های مجازی، شبکه، ذخیره‌سازی و سیستم عامل دسترسی خواهید داشت.

فواید IaaS

  • نیازی به سرمایه‌گذاری روی سخت‌افزار‌های خود ندارید.
  • زیرساخت‌ها می‌توانند براساس نیاز شما بزرگ یا کوچک شوند.
  • سرویس‌های نوآورانه و منعطف براساس تقاضا.

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

سه شیوه برای استقرار ابر: عمومی، خصوصی و هیبرید

ابر عمومی

ابرهای عمومی توسط فراهم کننده‌های سرویس ابری شخص ثالث مدیریت می‌شوند. این فراهم کننده‌ها به شما قابلیت دسترسی به منابع پردازشی مانند سرور‌ها و ذخیره‌سازی را می‌دهند. وقتی که از یک فضای ابری عمومی استفاده می‌کنید سخت ‌افزار‌ها و نرم افزارها را نمی‌توانید مدیریت کنید. اما استفاده کردن از آن‌ها از طریق حساب کاری خودتان ممکن خواهد بود.

ابر خصوصی

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

ابر هیبرید

ابرهای هیبریدی یا ترکیبی در واقع ترکیبی از ابرهای خصوصی و استراتژی ادغام‌سازی و استفاده از سرویس‌های ابری عمومی است. 

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

فواید پردازش ابری

هزینه: پردازش ابری تاثیر بسیار زیادی روی کم کردن هزینه‌ها خواهد داشت. تصورش را بکنید، شما دیگر نیازی به خرید سخت‌افزار، سیستم عامل، نرم افزار‌ها، بروزرسانی‌ها و... ندارید. همچنین نیازی به فضای بزرگی برای نگه‌داری از سخت‌افزارها، خنک کردن و هزینه برق ندارید.

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

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

مقیاس‌پذیری: با در نظر گرفتن اینکه همه چیز در بستر اینترنت انجام می‌شود، بنابراین بسیار مهم است که بدانید تمام کارها از طریق دستگاه‌های مختلف انجام شدنی است. همچنین براساس نیازهای مختلف شما گزینه‌های مختلفی برای کار کردن خواهید داشت.

در پایان

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

برای استارتاپ‌هایی که می‌خواهند کارشان را شروع بکنند انتخاب و استفاده از رایانش ابری بسیار ساده خواهد بود. اما برای شرکت‌هایی که داده‌ها و اپلیکیشن‌هایی دارند کار کمی پیچیده‌تر می‌شود. آن‌ها باید بتوانند که سیستم رایانش ابری که برای‌شان مناسب است را پیدا کنند و سپس زیرساخت‌های‌شان را به آن انتقال دهند.

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

منبع

مقالات پیشنهادی

بهترین زبان‌های برنامه‌نویسی برای رایانش ابری

وقتی که قصد دارید تا اولین اپلیکیشن کامپیوتری خودتان را توسعه دهید، معمولا اولین زبان‌های برنامه‌نویسی که به ذهن‌تان می‌آید C، C++، Java و یا حتی Pyth...

نقش پردازش ابری در دنیای توسعه وب

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

مقدمه‌ای بر تست پروژه لاراولی بوسیله Laravel Dusk

یکی از بزرگترین مشکلاتی که در PHPUnit وجود داشت این بود که تست نرم‌افزارهای برپایه JavaScript غیرممکن بود. با Dusk میتونید براحتی ویژگی‌های Client-sid...

مقدمه‌ای بر استفاده از Vue.js در لاراول

در این مقاله میخوایم یک پروژه تستی بسازیم و در اون بتونیم یکسری اطلاعات رو به دیتابیس بفرستیم یا از دیتابیس حذف کنیم. این کار معمولی هست اما ما میخوای...