پشتیبانی سرویس ابری گوگل از زبان Ruby

Google Cloud اخیراً پیش نمایش عمومی Ruby on Cloud Functions را اعلام کرده است. چارچوب عملکردهای منبع باز برای Ruby از توابع HTTP و توابع CloudEvent پشتیبانی می کند.

Cloud Functions یک محیط اجرایی بدون سرور برای ساخت و اتصال سرویس های ابری است که توسط گوگل در سال 2017 معرفی شده است. توابع در زمانهای خاص زبان اجرا می شوند و می توانند در Node.js ، Python ، Go ، Java ، .NET و اکنون Ruby نوشته شوند. محیط اجرا شامل زمان اجرا ، سیستم عامل و کتابخانه ای است که عملکرد را فراخوانی می کند. برای Ruby ، ​​مدت زمان پشتیبانی در پیش نمایش Ruby 2.6 و Ruby 2.7 است. دانیل آزوما ، مهندس ارشد روابط توسعه دهنده در Google ، توضیح می دهد که توسعه دهندگان چگونه می توانند از آنها استفاده کنند:

شما می توانید توابع HTTP را برای پاسخگویی به رویدادهای HTTP و توابع CloudEvent را برای پردازش رویدادهایی که از سرویس های مختلف Cloud و Google Cloud از جمله Pub / Sub ، Cloud Storage و Firestore تهیه شده اند ، پردازش کنید.

وی در مقاله ای جداگانه ، “طراحی یک Ruby Serverless Runtime” ، برخی از گزینه های طراحی پشت محصول و رویکرد به پنج م differentلفه مختلف: نحو عملکرد ، همزمانی و چرخه عمر ، آزمایش ، وابستگی ها و استانداردها را به اشتراک می گذارد. وی نتیجه گیری می کند:

بدون سرور یک تفکر اساساً متفاوت در مورد منابع محاسبه است ، و ما به عنوان یک صنعت هنوز خیلی زود در درک مفاهیم هستیم. در حالی که تیم من زمان اجرای Ruby را برای Google Cloud Functions طراحی کرده است ، ما در مورد راه های ارتباط پارادایم بدون سرور با روشهای معمول Ruby خود مراقب بودیم. در بعضی موارد ، مانند آزمایش ، ما را تشویق می کند تا قسمتهای خوب فرهنگ یاقوت را دو برابر کنیم. در دیگران ، همانند نحوه بیان و یادداشت عملکردی به زبانی که دقیقاً آنها را نداشته باشد ، این ایده های ما درباره نحوه ارائه کد و برقراری ارتباط با هدف آن را به چالش می کشد.

چارچوب عملکردهای منبع باز برای Ruby در GitHub موجود است. علاوه بر Cloud Functions ، از Cloud Run ، هر محیط مبتنی بر Knative و ماشین های توسعه محلی پشتیبانی می کند.

JK Gunnink ، مشاور ارشد مکانیک راک ، یک راهنما برای آزمایش خودکار و استقرار توابع روبی در Google Cloud نوشت. Google اولین ارائه دهنده ابری نیست که از زبان در یک چارچوب بدون سرور پشتیبانی می کند. Ricardo Siqueira de Oliveira Leite ، مهندس نرم افزار VTEX ، دو سال پیش در توئیتی نوشت:

ما FaaS (عملکرد به عنوان سرویس) را برای روبی می خواهیم! این یک دادخواست آنلاین است که نشان می دهد جامعه Ruby آماده است بدون Server Server شود و عملکرد را به عنوان یک ارائه دهنده خدمات نشان دهد.

طوماری که توسط بیش از 1600 توسعه دهنده امضا شده است و اکنون تالار گفتگوی علاقه مندان به روبی است. دو سال بعد ، با پشتیبانی از AWS Lambda از سال 2018 و اکنون در Google Cloud ، جامعه به هدف رسیده است. کن کالینز ، قهرمان بدون سرور AWS و مهندس اصلی در Custom Ink ، اوایل امسال Lambda Containers with Rails را راه اندازی کرد. Azure Functions در حال حاضر از هفت زبان پشتیبانی می کند اما Ruby یکی از آنها نیست.

یک راهنمای راه اندازی سریع Ruby برای توابع Google Cloud در دسترس است و مانند سایر زبانهای پشتیبانی ، GCP دارای یک ماهانه رایگان شامل دو میلیون فراخوانی و تخصیص 400000 گیگابایت در ثانیه و 200000 گیگاهرتز در ثانیه زمان محاسبه است.

منبع: infoq

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *