{"id":15141,"date":"2016-07-11T12:14:56","date_gmt":"2016-07-11T09:14:56","guid":{"rendered":"http:\/\/www.altoros.com\/blog\/?p=15141"},"modified":"2018-02-15T21:21:18","modified_gmt":"2018-02-15T18:21:18","slug":"event-driven-iot-challenges-requirements-difference-ibm-openwhisk","status":"publish","type":"post","link":"https:\/\/www.altoros.com\/blog\/event-driven-iot-challenges-requirements-difference-ibm-openwhisk\/","title":{"rendered":"Event-Driven Microservices with OpenWhisk: Comparison to Traditional Models"},"content":{"rendered":"<div id=\"ez-toc-container\" class=\"ez-toc-v2_0_79_2 counter-hierarchy ez-toc-counter ez-toc-transparent ez-toc-container-direction\">\n<div class=\"ez-toc-title-container\">\n<p class=\"ez-toc-title\" style=\"cursor:inherit\">Table of Contents<\/p>\n<span class=\"ez-toc-title-toggle\"><a href=\"#\" class=\"ez-toc-pull-right ez-toc-btn ez-toc-btn-xs ez-toc-btn-default ez-toc-toggle\" aria-label=\"Toggle Table of Content\"><span class=\"ez-toc-js-icon-con\"><span class=\"\"><span class=\"eztoc-hide\" style=\"display:none;\">Toggle<\/span><span class=\"ez-toc-icon-toggle-span\"><svg style=\"fill: #999;color:#999\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" class=\"list-377408\" width=\"20px\" height=\"20px\" viewBox=\"0 0 24 24\" fill=\"none\"><path d=\"M6 6H4v2h2V6zm14 0H8v2h12V6zM4 11h2v2H4v-2zm16 0H8v2h12v-2zM4 16h2v2H4v-2zm16 0H8v2h12v-2z\" fill=\"currentColor\"><\/path><\/svg><svg style=\"fill: #999;color:#999\" class=\"arrow-unsorted-368013\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"10px\" height=\"10px\" viewBox=\"0 0 24 24\" version=\"1.2\" baseProfile=\"tiny\"><path d=\"M18.2 9.3l-6.2-6.3-6.2 6.3c-.2.2-.3.4-.3.7s.1.5.3.7c.2.2.4.3.7.3h11c.3 0 .5-.1.7-.3.2-.2.3-.5.3-.7s-.1-.5-.3-.7zM5.8 14.7l6.2 6.3 6.2-6.3c.2-.2.3-.5.3-.7s-.1-.5-.3-.7c-.2-.2-.4-.3-.7-.3h-11c-.3 0-.5.1-.7.3-.2.2-.3.5-.3.7s.1.5.3.7z\"\/><\/svg><\/span><\/span><\/span><\/a><\/span><\/div>\n<nav><ul class='ez-toc-list ez-toc-list-level-1 ' ><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-1\" href=\"https:\/\/www.altoros.com\/blog\/event-driven-iot-challenges-requirements-difference-ibm-openwhisk\/#A_new_class_of_services_and_apps\" >A new class of services and apps<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-2\" href=\"https:\/\/www.altoros.com\/blog\/event-driven-iot-challenges-requirements-difference-ibm-openwhisk\/#Event-driven_vs_traditional\" >Event-driven vs. traditional<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-3\" href=\"https:\/\/www.altoros.com\/blog\/event-driven-iot-challenges-requirements-difference-ibm-openwhisk\/#Want_details_Watch_the_video\" >Want details? Watch the video!<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-4\" href=\"https:\/\/www.altoros.com\/blog\/event-driven-iot-challenges-requirements-difference-ibm-openwhisk\/#Related_slides\" >Related slides<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-5\" href=\"https:\/\/www.altoros.com\/blog\/event-driven-iot-challenges-requirements-difference-ibm-openwhisk\/#Related_links\" >Related links<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-6\" href=\"https:\/\/www.altoros.com\/blog\/event-driven-iot-challenges-requirements-difference-ibm-openwhisk\/#About_the_speaker\" >About the speaker<\/a><\/li><\/ul><\/nav><\/div>\n<h3><span class=\"ez-toc-section\" id=\"A_new_class_of_services_and_apps\"><\/span>A new class of services and apps<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<div id=\"attachment_14785\" style=\"width: 160px\" class=\"wp-caption alignright\"><img loading=\"lazy\" decoding=\"async\" aria-describedby=\"caption-attachment-14785\" src=\"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2016\/06\/Animesh-Singh-300x300.jpg\" alt=\"Animesh Singh, Lead Architect, IBM Cloud Platform\" width=\"150\" height=\"200\" class=\"size-medium wp-image-14785\" \/><p id=\"caption-attachment-14785\" class=\"wp-caption-text\"><small>Animesh Singh<\/small><\/p><\/div>\n<p>At a <a href=\"https:\/\/www.meetup.com\/Docker-Containers-Cloud-Foundry-PaaS-East-Bay-Meetup\/events\/230842122\/\" target=\"_blank\">recent meetup<\/a> in Silicon Valley, <a href=\"https:\/\/www.linkedin.com\/in\/animeshsingh1\" target=\"_blank\">Animesh Singh<\/a> of IBM noted that we&#8217;re now in a world of cloud-native apps, written for use in cloud computing environments.<\/p>\n<p>According to Animesh, some key things to keep in mind when writing cloud-native apps include:<\/p>\n<ul>\n<li>Clean contract with underlying OS to ensure maximum portability<\/li>\n<li>Scale elastically without significant changes to tooling, architecture, or development practices<\/li>\n<li>Resilient to inevitable failures in the infrastructure and application<\/li>\n<li>Instrumented to provide both technical and business insight<\/li>\n<li>Utilize cloud services (e.g., storage, queuing, and caching)<\/li>\n<li>Rapid and repeatable deployments to maximize agility<\/li>\n<li>Automated setup to minimize time and cost for new developers<\/li>\n<\/ul>\n<p>Animesh pointed out the increasingly accepted reasons for the microservices approach\u2014presenting a table of some key differences between monolithic apps and microservices:<\/p>\n<p><a href=\"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2016\/07\/Animesh-Microservices-1-1.png\"><img decoding=\"async\" src=\"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2016\/07\/Animesh-Microservices-1-1.png\" alt=\"Animesh Microservices 1\" width=\"640\" class=\"aligncenter size-full wp-image-15094\" \/><\/a><\/p>\n<p>Animesh also mentioned some issues associated with monolithic apps. For example, scaling them means \u201cyou&#8217;re actually creating several instances of the same app, so if you have a problem with one [instance], they will all likely crash.\u201d<\/p>\n<p>&nbsp;<\/p>\n<h3><span class=\"ez-toc-section\" id=\"Event-driven_vs_traditional\"><\/span>Event-driven vs. traditional<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>During the presentation, Animesh stressed that event-driven models are not limited to single, simple events. Rather, think of \u201ca class of events that can happen,\u201d as Animesh said. So, he then got to the heart of the matter: how <a href=\"https:\/\/www.altoros.com\/blog\/introduction-to-ibm-bluemix-openwhisk\/\" target=\"_blank\">OpenWhisk<\/a> can address the challenges when creating event-driven microservices.<\/p>\n<p>\u201cOpenWhisk targets a new class of event-driven apps and services,\u201d Animesh noted, as he took attendees through a point-by-point case for use of this new technology. OpenWhisk features a serverless architecture designed to chain microservices and to be highly scalable.<\/p>\n<p>\u201cOpenWhisk provides a distributed compute service to execute application logic in response to events,\u201d Animesh said. A key to OpenWhisk\u2014particularly when public-cloud providers bill by the millisecond\u2014is its ability to run microservices only when they&#8217;re actually doing something. Animesh provided two slides about this point, shown below.<\/p>\n<p><a href=\"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2016\/07\/Animesh-Microservices-3.png\"><img decoding=\"async\" src=\"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2016\/07\/Animesh-Microservices-3.png\" alt=\"Animesh Microservices 3\" width=\"640\" class=\"aligncenter size-full wp-image-15096\" \/><\/a><\/p>\n<p><a href=\"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2016\/07\/Animesh-Microservices-4.png\"><img decoding=\"async\" src=\"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2016\/07\/Animesh-Microservices-4.png\" alt=\"Animesh Microservices 4\" width=\"640\" class=\"aligncenter size-full wp-image-15097\" \/><\/a><\/p>\n<p>In the traditional model, apps (and services) are deemed to be \u201con\u201d continuously once they&#8217;ve been launched. In contrast, an IoT sensor is likely to be sending out a very short, periodic signal. With millisecond billing in place by the cloud provider, OpenWhisk is only using the time needed for that periodic signal. Thus, a microservice is charged only for the time it&#8217;s in actual use, which might be 50 to 100 milliseconds per minute.<\/p>\n<p>In addition to flexible computation models, OpenWhisk enables developers to write code quickly and provides integrated container support. Finally, its users can build independent pieces of code independently, which makes it a perfect fit for creating microservices\u2014written in different languages\/technologies.<\/p>\n<p><a href=\"https:\/\/developer.ibm.com\/opentech\/2016\/06\/22\/serverless-openwhisk-silicon-valley\/\" target=\"_blank\">This recap<\/a> by Animesh provides the explanation of &#8220;serverless&#8221; and explains how OpenWhisk fits the existing technology landscape. The platform can be found in <a href=\"https:\/\/github.com\/openwhisk\" target=\"_blank\">this GitHub repository<\/a>.<\/p>\n<p>&nbsp;<\/p>\n<h3><span class=\"ez-toc-section\" id=\"Want_details_Watch_the_video\"><\/span>Want details? Watch the video!<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p><center><script charset=\"ISO-8859-1\" src=\"\/\/fast.wistia.com\/assets\/external\/E-v1.js\" async><\/script><\/p>\n<div class=\"wistia_embed wistia_async_rnu0qzhh3w\" style=\"height:360px;width:640px\"><\/div>\n<p><\/center><\/p>\n<p>&nbsp;<\/p>\n<h3><span class=\"ez-toc-section\" id=\"Related_slides\"><\/span>Related slides<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p><center><iframe loading=\"lazy\" src=\"\/\/www.slideshare.net\/slideshow\/embed_code\/key\/KolZoB33w0VBV1\" width=\"595\" height=\"485\" frameborder=\"0\" marginwidth=\"0\" marginheight=\"0\" scrolling=\"no\" style=\"border:1px solid #CCC; border-width:1px; margin-bottom:5px; max-width: 100%;\" allowfullscreen> <\/iframe> <\/p>\n<div style=\"margin-bottom:5px\"><\/div>\n<p><\/center><\/p>\n<p>&nbsp;<\/p>\n<h3><span class=\"ez-toc-section\" id=\"Related_links\"><\/span>Related links<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<ul>\n<li><a href=\"https:\/\/www.altoros.com\/blog\/scaling-industrial-event-driven-microservices-with-openwhisk\/\" target=\"_blank\">Scaling Industrial Event-Driven Microservices with OpenWhisk<\/a><\/li>\n<li><a href=\"https:\/\/www.altoros.com\/blog\/reducing-complexity-of-software-with-domain-driven-design-and-microservices\/\" target=\"_blank\">Reducing Complexity of Software with Domain-Driven Design and Microservices<\/a><\/li>\n<li><a href=\"https:\/\/www.altoros.com\/blog\/ibm-bluemix-openwhisk-101-developing-a-microservice\/\" target=\"_blank\">IBM Bluemix OpenWhisk 101: Developing a Microservice<\/a><\/li>\n<li><a href=\"https:\/\/www.altoros.com\/blog\/how-to-use-openwhisk-docker-actions-in-ibm-bluemix\/\" target=\"_blank\">How to Use OpenWhisk Docker Actions in IBM Bluemix<\/a><\/li>\n<\/ul>\n<hr\/>\n<h3><span class=\"ez-toc-section\" id=\"About_the_speaker\"><\/span>About the speaker<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<div>\n<div style=\"float: right;\"><a href=\"https:\/\/www.linkedin.com\/in\/animeshsingh1\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2016\/07\/Animesh-Singh-Lead-Architect-IBM-Cloud-Platform-IBM-bio.png\" alt=\"Animesh Singh, Lead Architect, IBM Cloud Platform, IBM bio\" width=\"150\" height=\"150\" class=\"aligncenter size-full wp-image-15067\" \/><\/a><\/div>\n<div style=\"width: 600px;\"><small><a href=\"https:\/\/www.linkedin.com\/in\/animeshsingh1\">Animesh Singh<\/a> is an IBM STSM, Executive Cloud Architect and Strategist, with over 13 years experience in technology industry, and 10 years in IBM. He plays a key leadership role in creating, designing and implementing IBM&#8217;s strategy for the cloud applications, infrastructure, architecture, network, storage virtualization, cloud operating models, tools frameworks, and other supporting technologies and processes. He is currently leading IBM Cloud Platform and Bluemix Local, multi-billion dollar investment from IBM.<\/small><\/div>\n<\/div>\n<hr\/>\n<p><center><small>The post is written by <a href=\"https:\/\/www.altoros.com\/blog\/author\/rstrukhoff\/\">Roger Strukhoff<\/a> and <a href=\"https:\/\/www.altoros.com\/blog\/author\/alex\/\">Alex Khizhnyak<\/a>.<\/small><\/center><\/p>\n","protected":false},"excerpt":{"rendered":"<p>A new class of services and apps<\/p>\n<p id=\"caption-attachment-14785\" class=\"wp-caption-text\">Animesh Singh<\/p>\n<p>At a recent meetup in Silicon Valley, Animesh Singh of IBM noted that we&#8217;re now in a world of cloud-native apps, written for use in cloud computing environments.<\/p>\n<p>According to Animesh, some key things to keep in mind when writing cloud-native apps [&#8230;]<\/p>\n","protected":false},"author":5,"featured_media":24227,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"content-type":"","footnotes":"","_links_to":"","_links_to_target":""},"categories":[7],"tags":[873,187,117,146,750],"class_list":["post-15141","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-news-and-opinion","tag-cloud-native","tag-ibm-bluemix","tag-iot","tag-microservices","tag-openwhisk"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v26.6 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Event-Driven Microservices with OpenWhisk: Comparison to Traditional Models | Altoros<\/title>\n<meta name=\"description\" content=\"Cloud-native apps and event-driven architectures bring in a number of new challenges\u2014however, the OpenWhisk platform may help to address the situation.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.altoros.com\/blog\/event-driven-iot-challenges-requirements-difference-ibm-openwhisk\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Event-Driven Microservices with OpenWhisk: Comparison to Traditional Models | Altoros\" \/>\n<meta property=\"og:description\" content=\"A new class of services and apps Animesh Singh At a recent meetup in Silicon Valley, Animesh Singh of IBM noted that we&#8217;re now in a world of cloud-native apps, written for use in cloud computing environments. According to Animesh, some key things to keep in mind when writing cloud-native apps [...]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.altoros.com\/blog\/event-driven-iot-challenges-requirements-difference-ibm-openwhisk\/\" \/>\n<meta property=\"og:site_name\" content=\"Altoros\" \/>\n<meta property=\"article:published_time\" content=\"2016-07-11T09:14:56+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2018-02-15T18:21:18+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2016\/07\/Event-Driven-Industrial-Internet-with-IBM-OpenWhisk-featured_v2.gif\" \/>\n\t<meta property=\"og:image:width\" content=\"640\" \/>\n\t<meta property=\"og:image:height\" content=\"360\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/gif\" \/>\n<meta name=\"author\" content=\"Alex Khizhniak\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Alex Khizhniak\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"3 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.altoros.com\/blog\/event-driven-iot-challenges-requirements-difference-ibm-openwhisk\/\",\"url\":\"https:\/\/www.altoros.com\/blog\/event-driven-iot-challenges-requirements-difference-ibm-openwhisk\/\",\"name\":\"Event-Driven Microservices with OpenWhisk: Comparison to Traditional Models | Altoros\",\"isPartOf\":{\"@id\":\"https:\/\/www.altoros.com\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/www.altoros.com\/blog\/event-driven-iot-challenges-requirements-difference-ibm-openwhisk\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/www.altoros.com\/blog\/event-driven-iot-challenges-requirements-difference-ibm-openwhisk\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2016\/07\/Event-Driven-Industrial-Internet-with-IBM-OpenWhisk-featured_v2.gif\",\"datePublished\":\"2016-07-11T09:14:56+00:00\",\"dateModified\":\"2018-02-15T18:21:18+00:00\",\"author\":{\"@id\":\"https:\/\/www.altoros.com\/blog\/#\/schema\/person\/3d914db6ad1b2908c32c0dc5dcabc420\"},\"breadcrumb\":{\"@id\":\"https:\/\/www.altoros.com\/blog\/event-driven-iot-challenges-requirements-difference-ibm-openwhisk\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.altoros.com\/blog\/event-driven-iot-challenges-requirements-difference-ibm-openwhisk\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.altoros.com\/blog\/event-driven-iot-challenges-requirements-difference-ibm-openwhisk\/#primaryimage\",\"url\":\"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2016\/07\/Event-Driven-Industrial-Internet-with-IBM-OpenWhisk-featured_v2.gif\",\"contentUrl\":\"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2016\/07\/Event-Driven-Industrial-Internet-with-IBM-OpenWhisk-featured_v2.gif\",\"width\":640,\"height\":360},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.altoros.com\/blog\/event-driven-iot-challenges-requirements-difference-ibm-openwhisk\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.altoros.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Event-Driven Microservices with OpenWhisk: Comparison to Traditional Models\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.altoros.com\/blog\/#website\",\"url\":\"https:\/\/www.altoros.com\/blog\/\",\"name\":\"Altoros\",\"description\":\"Insight\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.altoros.com\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.altoros.com\/blog\/#\/schema\/person\/3d914db6ad1b2908c32c0dc5dcabc420\",\"name\":\"Alex Khizhniak\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.altoros.com\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2017\/06\/druzya-edit1-150x150.jpg\",\"contentUrl\":\"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2017\/06\/druzya-edit1-150x150.jpg\",\"caption\":\"Alex Khizhniak\"},\"description\":\"Alex Khizhniak is Director of Technical Content Strategy at Altoros and a cofounder of a local Java User Group. Managing distributed teams since 2004, he has gained experience as a journalist, an editor-in-chief, a technical writer, a technology evangelist, a project manager, and a product owner. Alex is obsessed with AI\/ML, data science, data integration, ETL\/DWH, data quality, databases (SQL\/NoSQL), big data, IoT, and BI. The articles and industry reports he created or helped to publish reached out to 3,000,000+ tech-savvy readers. Some of the pieces were covered on TechRepublic, ebizQ, NetworkWorld, CIO.com, etc. Find him on Twitter at @alxkh.\",\"sameAs\":[\"https:\/\/x.com\/https:\/\/twitter.com\/alxkh\"],\"url\":\"https:\/\/www.altoros.com\/blog\/author\/alex\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Event-Driven Microservices with OpenWhisk: Comparison to Traditional Models | Altoros","description":"Cloud-native apps and event-driven architectures bring in a number of new challenges\u2014however, the OpenWhisk platform may help to address the situation.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.altoros.com\/blog\/event-driven-iot-challenges-requirements-difference-ibm-openwhisk\/","og_locale":"en_US","og_type":"article","og_title":"Event-Driven Microservices with OpenWhisk: Comparison to Traditional Models | Altoros","og_description":"A new class of services and apps Animesh Singh At a recent meetup in Silicon Valley, Animesh Singh of IBM noted that we&#8217;re now in a world of cloud-native apps, written for use in cloud computing environments. According to Animesh, some key things to keep in mind when writing cloud-native apps [...]","og_url":"https:\/\/www.altoros.com\/blog\/event-driven-iot-challenges-requirements-difference-ibm-openwhisk\/","og_site_name":"Altoros","article_published_time":"2016-07-11T09:14:56+00:00","article_modified_time":"2018-02-15T18:21:18+00:00","og_image":[{"width":640,"height":360,"url":"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2016\/07\/Event-Driven-Industrial-Internet-with-IBM-OpenWhisk-featured_v2.gif","type":"image\/gif"}],"author":"Alex Khizhniak","twitter_misc":{"Written by":"Alex Khizhniak","Est. reading time":"3 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/www.altoros.com\/blog\/event-driven-iot-challenges-requirements-difference-ibm-openwhisk\/","url":"https:\/\/www.altoros.com\/blog\/event-driven-iot-challenges-requirements-difference-ibm-openwhisk\/","name":"Event-Driven Microservices with OpenWhisk: Comparison to Traditional Models | Altoros","isPartOf":{"@id":"https:\/\/www.altoros.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.altoros.com\/blog\/event-driven-iot-challenges-requirements-difference-ibm-openwhisk\/#primaryimage"},"image":{"@id":"https:\/\/www.altoros.com\/blog\/event-driven-iot-challenges-requirements-difference-ibm-openwhisk\/#primaryimage"},"thumbnailUrl":"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2016\/07\/Event-Driven-Industrial-Internet-with-IBM-OpenWhisk-featured_v2.gif","datePublished":"2016-07-11T09:14:56+00:00","dateModified":"2018-02-15T18:21:18+00:00","author":{"@id":"https:\/\/www.altoros.com\/blog\/#\/schema\/person\/3d914db6ad1b2908c32c0dc5dcabc420"},"breadcrumb":{"@id":"https:\/\/www.altoros.com\/blog\/event-driven-iot-challenges-requirements-difference-ibm-openwhisk\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.altoros.com\/blog\/event-driven-iot-challenges-requirements-difference-ibm-openwhisk\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.altoros.com\/blog\/event-driven-iot-challenges-requirements-difference-ibm-openwhisk\/#primaryimage","url":"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2016\/07\/Event-Driven-Industrial-Internet-with-IBM-OpenWhisk-featured_v2.gif","contentUrl":"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2016\/07\/Event-Driven-Industrial-Internet-with-IBM-OpenWhisk-featured_v2.gif","width":640,"height":360},{"@type":"BreadcrumbList","@id":"https:\/\/www.altoros.com\/blog\/event-driven-iot-challenges-requirements-difference-ibm-openwhisk\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.altoros.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Event-Driven Microservices with OpenWhisk: Comparison to Traditional Models"}]},{"@type":"WebSite","@id":"https:\/\/www.altoros.com\/blog\/#website","url":"https:\/\/www.altoros.com\/blog\/","name":"Altoros","description":"Insight","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.altoros.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Person","@id":"https:\/\/www.altoros.com\/blog\/#\/schema\/person\/3d914db6ad1b2908c32c0dc5dcabc420","name":"Alex Khizhniak","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.altoros.com\/blog\/#\/schema\/person\/image\/","url":"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2017\/06\/druzya-edit1-150x150.jpg","contentUrl":"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2017\/06\/druzya-edit1-150x150.jpg","caption":"Alex Khizhniak"},"description":"Alex Khizhniak is Director of Technical Content Strategy at Altoros and a cofounder of a local Java User Group. Managing distributed teams since 2004, he has gained experience as a journalist, an editor-in-chief, a technical writer, a technology evangelist, a project manager, and a product owner. Alex is obsessed with AI\/ML, data science, data integration, ETL\/DWH, data quality, databases (SQL\/NoSQL), big data, IoT, and BI. The articles and industry reports he created or helped to publish reached out to 3,000,000+ tech-savvy readers. Some of the pieces were covered on TechRepublic, ebizQ, NetworkWorld, CIO.com, etc. Find him on Twitter at @alxkh.","sameAs":["https:\/\/x.com\/https:\/\/twitter.com\/alxkh"],"url":"https:\/\/www.altoros.com\/blog\/author\/alex\/"}]}},"_links":{"self":[{"href":"https:\/\/www.altoros.com\/blog\/wp-json\/wp\/v2\/posts\/15141","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.altoros.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.altoros.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.altoros.com\/blog\/wp-json\/wp\/v2\/users\/5"}],"replies":[{"embeddable":true,"href":"https:\/\/www.altoros.com\/blog\/wp-json\/wp\/v2\/comments?post=15141"}],"version-history":[{"count":17,"href":"https:\/\/www.altoros.com\/blog\/wp-json\/wp\/v2\/posts\/15141\/revisions"}],"predecessor-version":[{"id":24228,"href":"https:\/\/www.altoros.com\/blog\/wp-json\/wp\/v2\/posts\/15141\/revisions\/24228"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.altoros.com\/blog\/wp-json\/wp\/v2\/media\/24227"}],"wp:attachment":[{"href":"https:\/\/www.altoros.com\/blog\/wp-json\/wp\/v2\/media?parent=15141"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.altoros.com\/blog\/wp-json\/wp\/v2\/categories?post=15141"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.altoros.com\/blog\/wp-json\/wp\/v2\/tags?post=15141"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}