پایه و اساس زیرساختهای جدید بیش از سرورها، Containerها یا سرویسها، به توابع Micro بستگی دارد که توسط برخی Eventهای مشخص راهاندازی میگردد.
شرکت Amazon Web Services یا به اختصار AWS، اولین بار دو سال پیش به معرفی سرویس AWS Lambda پرداخته بود که به توسعهدهندگان برنامهها این امکان را میداد تا پس از تعیین و ایجاد کارکردهایی مشخص، اجرای آنها را منوط به وقوع Eventهایی (رویداد) مشخص گردانند.
این سرویس که میتواند برای اجرای برخی فرآیندهای خاص از مرز سرورها عبور کرده و مدل “عملیاتی” را مبنای کار خود قرار دهد، پیشرفت چشمگیری محسوب میشود. در این سرویس، کارکردها تنها در صورت مواجهه با Eventهایی مشخص به اجرا در میآیند و در نبود این Eventها برای همیشه در حالت غیرفعال باقی میماندند. مزیت این سرویس آن است که توسعهدهندگان تنها در صورتی هزینهی لازم را پرداخت میکنند که کارکرد مربوطه به اجرا درآید.
AWS با ارائهی محصولات نوین خود، سایر ارائهدهندگان پیشرو در عرصهی Public Cloud را نیز با خود همراه میکند تا جایی که درحالحاضر گوگل و مایکروسافت را نیز به فعالیت برروی سرویسهایی مشابه برانگیخته است. ضمن آنکه به تازگی IBM نیز نسخهی اختصاصی خود با نام Whisk را معرفی نموده است.
گوگل اخیرا محصول آلفای بسیار ابتدائی خود با نام Google Cloud Function را روانهی بازار کرده است که به گفتهی این شرکت، یک راهکار محاسباتی غیرهمزمان و زیرساخت مبتنی بر Event با قابلیت اِشغال فضای کم محسوب میشود. این راهکار به ایجاد کارکردهای ظریف و تکمنظورهای کمک میکند که میتوانند بدون نیاز به مدیریت هرگونه سرور یا محیط Runtime پاسخگوی Eventهای مربوط به Cloud باشند. گوگل با اعلام اینکه محصول فوق هنوز در مراحل بسیار مقدماتی قرار دارد از توضیح بیشتر در این زمینه خودداری کرده است.
مایکروسافت نیز به نوبهی خود با توسعهی پلتفرم Azure Cloud، به فعالیت در این زمینه پرداخته است.
صرفنظر از اینکه بخشی از تلاش شرکتها به منظور رقابت با سایر ارائهدهندگان و همسویی با لیست محصولات یکدیگر صورت میگیرد اما به طور قطع، این دسته از راهکارهای مبتنی بر رویداد را باید پیشرفتی خارقالعاده در صنعت IT دانست. این سه ارائهدهنده (از جمله Iron.io به عنوان یک استارتآپ جدید که برای معرفی سرویس شِبه Lambda خود تلاش میکند) از این حقیقت آگاهند که سرورها، Storage و شبکه، سه نمونهی تشکیلدهندهی دنیای امروز IT به شمار آمده و ضرورت برنامههای کاربردی نوین و الزامات سازمانی را به خوبی میشناسند.
تمام هدف یک سازمان سطح بالای مدرن و برنامههای کاربردی مورد استفادهی آن را باید محصول نهایی آن دانست. وضعیت مطلوب آن است که بتوان ارتباطی مستقیم میان هزینهها و آمادهسازی زیرساخت با محصول نهایی ایجاد نمود، بنابراین بهترین وسیله برای این منظور در اختیارداشتن سرویسی است که تنها در صورت وقوع یک فعالیت مشخص و نتایج مورد نظر آن اجرا میشود.
راهکارهایی که با زیرساخت مبتنی بر Event راهاندازی میشوند با برخورداری از دید مبتنی بر سرویس، به خوبی با رویکرد جدید برای ایجاد برنامههای کاربردی هماهنگی مییابند. برنامههای کاربردی مدرن به جای حجم زیادی از Blockهای کد یکپارچه، تعداد بیشماری از سرویسهای انفرادی را به هم مرتبط میسازند و به این ترتیب یک برنامه کاربردی کلی را تشکیل میدهند. ارائهی این سرویسهای میکرو به روش مبتنی بر رویداد، رویکردی طبیعی و جالب محسوب میشود.
Lambda، Cloud Function، Iron.io یا محصول مشابه مایکروسافت، همگی نمونههایی از یک روش کاملا جدید برای ایجاد برنامههای کاربردی و ارائهی زیرساخت میباشند.