Part of Middleware 2017.
Please visit the first workshop website to see what you can expect. You will also find presentations and notes about the panel discussion there.
2018-02-05: Workshop photos are available.
2017-12-12: Share your feedback https://goo.gl/forms/Ad0VpNm1eJ17O72G3
2017-12-12: Tutorial slides are available.
2017-11-03: workshop tentative agenda is now availabble.
2018-08-28: whitepaper "Status of Serverless Computing and Function-as-a-Service(FaaS) in Industry and Research" that summarizes issues raised during the First International Workshop on Serverless Computing (WoSC) is available from arXiv:1708.08028 and ResearchGate DOI:10.13140/RG.2.2.15007.87206
Serverless Computing (Serverless) is emerging as a new and compelling paradigm for the deployment of cloud applications, and is enabled by the recent shift of enterprise application architectures to containers and micro services. Many of the major cloud vendors, have released serverless platforms within the last two years, including Amazon Lambda, Google Cloud Functions, Microsoft Azure Functions, IBM Cloud Functions. There is, however, little attention from the research community. This workshop brings together researchers and practitioners to discuss their experiences and thoughts on future directions.
Serverless architectures offer different tradeoffs in terms of control, cost, and flexibility. For example, this requires developers to more carefully consider the resources used by their code (time to execute, memory used, etc.) when modularizing their applications. This is in contrast to concerns around latency, scalability, and elasticity, which is where significant development effort has traditionally been spent when building cloud services. In addition, tools and techniques to monitor and debug applications aren't applicable in serverless architectures, and new approaches are needed. As well, test and development pipelines may need to be adapted. Another decision that developers face are the appropriateness of the serverless ecosystem to their application requirements. A rich ecosystem of services built into the platform is typically easier to compose and would offer better performance. However, composing external services may be unavoidable, and in such cases, many of the benefits of serverless disappear, including performance and availability guarantees. This presents an important research challenge, and it is not clear how existing results and best practices, such as workflow composition research, can be applied to composition in a serverless environment.
Tuesday December 12th, 2017
Workshop location: Ballroom in UNLV Student Union
8:30am-10am hands-on tutorial “Build Serverless Apps in One Hour Or Less” (with materials online in github, slack channel for group support) by Paul Castro, Vatche Ishakian, Vinod Muthusamy and Aleksander Slominski
10:30am-11:15pm first keynote
11:15am-12pm invited speakers (3x15min):
session chair: Per Persson (Ericsson Research)
1:30pm-2:15pm second keynote
2:30pm-3pm first session: vision and short papers (3 short papers each 10 min):
session chair: Sadjad Fouladi (Stanford University)
3:30pm-4:50pm second session: full papers (4 long papers each 20 min: 15min talk + 5 min Q&A):
session chair: Ali Kanso (IBM Research)
5pm-6:30pm panel discussion
Slides online https://goo.gl/QpD6fi
Link to slack channel for group support in slides.
Michael Behrendt, IBM Distinguished Engineer, Chief Architect Serverless & event-driven apps, IBM Watson and Cloud Platform
Abstract: Over the last few years, serverless and event-driven application architectures have become very hot topics in the IT industry. Their advantages compared traditional compute models such as VMs, containers or PaaS are irresistible: Massive cost advantages, higher development velocity, no worries about scaling & HA anymore are big attractors for a growing population of developers. This presentation introduces and describes how customers are using serverless in real-world scenarios — from very small start-ups to large enterprises. The customer scenarios are categorized into common workload patterns — incl. data processing, IoT, microservices, AI, mobile backends, etc. Customer motivations are illustrated, business cases for switching from traditional to serverless architectures are provided and an outlook is given for how we see serverless evolving in the future.
Bio: Michael Behrendt is a Distinguished Engineer in the IBM Watson & Cloud Platform development organization. He is responsible for IBM's technical strategy around serverless & Function-as-a-Service. In that context, he's also the Chief Architect for IBM's serverless offering "IBM Cloud Functions" and OpenWhisk as the underlying open source technology. Before that, he was the Chief Architect of the core platform of IBM Bluemix and was one of the initial founding members incubating it. Prior to that, Michael was the lead architect for IBM's Cloud Computing Reference Architecture and a worldwide field-facing cloud architect for many years, responsible for the implementation of clouds for enterprise customers around the globe. He took on this role after driving key product incubation & development activities for IBM's cloud portfolio. Michael has been working on Cloud Computing for more than 13 years and has 35 patents. He is located in the IBM Research & Development Laboratory in Boeblingen, Germany.
Marc Brooker, Senior Principal Engineer, Amazon AWS
Abstract: Serverless represents both a revolution in the way that applications are built, and the result of decades of thinking about operating systems and platforms by both practitioners and researchers. This talk looks at some 50-year-old hot topics in operating systems, how we they apply to the serverless world of today, and how they inform our thinking about what what success means to our customers.
Bio: Marc Brooker is a Senior Principal Engineer at Amazon Web Services. He focusses on serverless, and especially on AWS Lambda and its ecosystem. In his 9 years at AWS, Marc has worked on compute, storage, IoT and databases, and likes to divide his time between leadership and hands-on building. Before AWS, he worked on distributed radar systems. He's interested in serverless, security, simulation, formal methods, and distributed systems. Outside the office he likes to ski, brew, cook and hike. Marc has a PhD in Electrical Engineering
Donald Ferguson, SparqTV
Abstract: This talk will describe the implementation architecture for Seeka TV, which is a completely cloud based application supporting web series streaming and collaboration. The talk will then focus on lessons learned from implementation phases and how these influenced the evolving architecture. The product architecture has also been the basis for several ,masters level classes at Columbia University. We will describe experience and lessons learned from teaching and explaining serverless technology and application development to students.
Sadjad Fouladi, Stanford University
Abstract: Serverless platforms offer interesting incentives, such as quick startup and fine-grained billing, that make them appealing for running occasional, short-lived, massively parallel, interactive jobs. Different than the primarily goal of these platforms, each function invocation can be seen as a thread running in the cloud, and by invoking thousands of these functions in parallel, there will be a supercomputer at hand that is billed by the second. This talk will discuss two systems that are built based on this promise: ExCamera, a system for editing and encoding videos with low latency, and gg, a massively-parallel build system. Both of these systems use serverless platforms as an alternative to a cluster of VMs, but they offer different programming models to build systems on top of such platforms.
Bio: Sadjad Fouladi is a third-year PhD student in computer science at Stanford University, working with Keith Winstein. Sadjad's broadly interested in networking and distributed systems. His current work focuses on building a system that offloads tasks from a desktop computer to the cloud on a serverless platform.
[Presentation PDF ]
Ricardo Koller, IBM Research
Abstract: From the inception of the cloud, running multi-tenant workloads has put strain on the Linux kernel's abstractions. After years of having its abstractions bypassed via virtualization, the kernel has responded with a native container abstraction that is eagerly being applied in the cloud. In this talk, we point out that history is repeating itself: with the introduction of serverless computing, even the native container abstraction is ill-suited. We show that bypassing the kernel with unikernels can yield at least a factor of 6 better latency and throughput. Facing a more complex kernel than ever and a relatively undemanding computing model, we must revisit the question of whether the kernel should try to adapt, we should continue bypassing the kernel, or if it is finally time to try a new native OS for this important future cloud workload.
Bio: Ricardo Koller is a systems researcher at the IBM T.J. Watson Research Center. He specializes on virtualization and OS kernels, and has been focusing on unikernels and container security. He previously worked on container and VM introspection, and previous to that, on virtual machines migration (at VMware). He enjoys hiking and watching sci-fi movies.
Erwin van Eyk (TU Delft (The Netherlands)), Alexandru Iosup (Vrije Universiteit (The Netherlands)), Simon Seif (SAP SE (Germany)), Markus Thömmes (IBM (Germany))
Abstract: Cloud computing enables an entire ecosystem of developing, composing, and providing IT services. An emerging class of cloud-based software architectures, serverless, focuses on providing software architects the ability to execute arbitrary functions with small overhead in server management, as Function-as-a-service (FaaS). However useful, serverless and FaaS suffer from a community problem that faces every emerging technology, which has indeed also hampered cloud computing a decade ago: lack of clear terminology, and scattered vision about the field. In this work, we address this community problem. We clarify the term serverless, by reducing it to cloud functions as programming units, and a model of executing simple and complex (e.g., workflows of) functions with operations managed primarily by the cloud provider. We propose a research vision, where 4 key directions (perspectives) present 17 technical opportunities and challenges.
Kyle Coleman (Saint Louis University), Flavio Esposito (Saint Louis University), Rachel Charney (Saint Louis University)
Abstract: Children constitute a vulnerable population and special considerations are necessary in order to provide proper care for them during disasters. After disasters such as Hurricane Katrina, the rapid identification and protection of separated children and their reunification with legal guardians is necessary to minimize secondary injuries (i.e.i.e., physical and sexual abuse, neglect and abduction). At Camp Gruber, an Oklahoma shelter for Louisianan's displaced by Hurricane Katrina, 70\%70% of the children were with their legal guardian after 2 weeks while the last child was reunified after 6 months. In this project, we are using serverless computing to scale and minimize database queries as well as to speed up machine learning tasks for rapid reunifying time, in support of a federated set of first-responders. In particular, we are using a Flask-based web system that leverages IBM OpenWhisk to run both (face and text) profile recognition software at the back-end.
[Presentation PDF ]
Ali Kanso (IBM Research), Alaa Youssef (IBM Research)
Abstract: Serverless computing is widely known as an event driven cloud execution model. In this model, the client provides the code and the cloud provider manages the lifecycle of the execution environment of that code. The idea is based on reducing the life span of the program to execute functionality in response to an event. Hence the program’s processes are born when an event is triggered and are killed after the event is processed. This model has proved its usefulness in the cloud as it reduced the operational cost and complexity of executing event- driven workloads. In this paper we argue that the serverless model does not have to be limited the to the cloud. We show how the same model can be applied at the micro-level of a single machine. In such model, certain operating system commands are treated as events that trigger a serverless reaction. This reaction consists of deploying and running code only in response to those events. Thus, reducing the attack surface and complexity of managing single machines.
Markus Ast (Chemnitz University of Technology), Martin Gaedke (Chemnitz University of Technology)
Abstract: Web Components are an essential building block for modularizing large and complex web applications into smaller pieces. Due to the web's nature, functionality encapsulated into Web Components consist of presentation and business logic. The former executes inside the user agent and the latter on the server-side. Many Web Components are not self-contained because they require to integrate their business logic into your backend or to use externally hosted third-party services. In this paper, we describe an approach of how to utilize Serverless Computing to enable self-contained web components by deploying Web Component business logic as cloud-hosted functions.
[Presentation at https://wosc2.components.cloud/ ]
Shripad Nadgowda (IBM Research), Nilton Bila (IBM Research), Canturk Isci (IBM Research)
Abstract: Serverless execution model is becoming an increasingly prominent choice to host data processing applications. In this event-based model, predefined stateless functions are triggered for execution on an event when new data becomes available. We make two critical observations in this framework - first, data sources in the serverless framework are largely-consistent causing lot of data duplication and second, stateless functions are commonly idempotent, i.e. they compute same result on multiple applications of duplicate data. Leveraging these two insights in this work, we introduce Sanity, a novel storage de-duplication framework for serverless platform that not only perform data de-duplication but also de-duplicate events to avoid redundant execution of stateless functions. This helps improve overall throughput of the serverless platform through execution of mostly unique functions. We present the design of Sanity for continuous container vulnerability check use-case and discuss its performance implications.
Nirmal K Mukhi (IBM Watson Education), Srijith Prabhu (IBM Watson Education), Bruce Slawson (IBM Watson Education)
Abstract: We present a practical application of serverless technology to implement a key component of a personalized tutoring system. We employ OpenWhisk to orchestrate a set of microservices tasked with di erent responsibilities in the larger system. The tutor, which is trained on a specific set of content, is embodied as a multimodal, stateful dialog system. This desired experience brings with it unique challenges, prime among them being real-time interaction and the inherently stateful nature. We discuss the drivers for selecting serverless technology, the specific design choices we made and the issues we have faced. This work is in progress, and we conclude with some notes on paths we plan to explore as we continue to evolve the system and exploit this exciting new computing paradigm to help us achieve our goals.
[Presentation PDF ]
Per Persson (Ericsson Research), Ola Angelsmark (Ericsson Research)
Abstract: A recent evolution in cloud computing is the move to serverless applications, where the separation between the server platform and the application is complete, and developers can fully focus on the application, leaving all provisioning details to a cloud provider. In this paper we look at how the serverless computing model can be adopted all the way to the edge devices using the Kappa framework, built on the Calvin platform for distributed cloud and IoT applications. Combining the resource management of the platform, where capabilities of nodes are matched with the requirements of the execution units, with a RESTful API it is possible to build an IoT system with a straightforward intuitive interface while still retaining the flexibility of the Calvin platform. We also give examples of how the framework can be used in an industrial IoT setting.
Duscussion topics and notes are in Google doc https://goo.gl/uMDNYn
Paul Castro, IBM Research
Vatche Ishakian, Bentley University
Arno Jacobsen, MSRG (Middleware Systems Research Group)
Vinod Muthusamy, IBM Research
Aleksander Slominski, IBM Research
Gul Agha, University of Illinois at Urbana-Champaign
Azer Bestavros, Boston University
Flavio Esposito, Saint Louis University
Rodrigo Fonseca, Brown University
Ian Foster, University of Chicago and Argonne National Laboratory
Geoffrey Fox, Indiana University
Dennis Gannon, Indiana University & Formerly Microsoft Research
Tyler Harter, Microsoft
Pietro Michiardi, Eurecom
Peter Pietzuch, Imperial College
Rodric Rabbah, IBM Research
Rich Wolski, University of California, Santa Barbara
First International Workshop on Serverless Computing (WoSC) 2017 in Atlanta, GA, USA on June 5 – 8, 2017 part of ICDCS 2017.
Please use hashtag #wosc2