Track: Microservices Patterns & Practices

Location: Ballroom A

Day of week: Tuesday

Join us to explore the state of the art in service-based architectures. Learn from practitioners building, operating, and evolving systems in the most demanding environments, from applications that interact with the physical world—like industrial automation, manufacturing, and the Internet of Things—to always-on, consumer products, platforms, and services. We will explore how to address the most difficult challenges presented by these systems: how to manage state; how to respond to failure; how to represent quality and uncertainty in data; how to react to events as they occur, so that applications are responsive; how to automatically adjust to system dynamics; and how to instrument these systems to sufficiently understand and control what they are doing.

Track Host: Colin Breck

Sr. Staff Software Engineer @Tesla

Colin Breck has experience developing software infrastructures for the near real-time monitoring and control of industrial applications. At Tesla, he works on distributed systems for the monitoring, aggregation, optimization, and control of distributed-energy assets, including solar generation, battery storage, and the Supercharging network. Previously, he worked on the PI System at OSIsoft, a time-series platform for industrial monitoring and automation. He is interested in the intersection of developing people, teams, and software systems. He writes a monthly essay at www.colinbreck.com.

10:35am - 11:25am

Managing Failure Modes in Microservice Architectures

With the right architectural and operational patterns, failures are mitigated, contained and managed, rather than escalating and getting out of control. This talk will explore how to apply some industry standard techniques — including Failure Modes and Effects Analysis, and Systems Theoretic Process Analysis — to cloud native microservices architectures. Mitigation methods depend upon multiple layers of defense, but these defenses need to be tested to show that they work, and we will also look at how chaos engineering techniques are driving the industry from annual datacenter disaster recovery testing of monolithic applications to continuous resilience assurance for cloud native microservices.

Adrian Cockcroft, VP Cloud Architecture Strategy @AWSCloud & Microservices Pioneer

11:50am - 12:40pm

User & Device Identity for Microservices @ Netflix Scale

Millions of members across the world access Netflix on their devices to stream movies and tv shows. Once these users login to the Netflix app, their identity and the identity of their device needs to be securely propagated to hundreds of microservices within the Netflix ecosystem. This combined identity is leveraged across the entire stack of microservices to make appropriate authorization and business decisions.  At Netflix scale, this means hundreds of millions of devices, for every request to Netflix services, send this identity in the form of one of the multiple types of authentication tokens that we support. This presented the challenge that each microservice had to know about the various types of tokens (say, Cookies vs JWT). Also, the extraction of the identity information from these tokens was inefficient at scale and error prone, causing hard-to-debug issues related to identity. Building a solution to enable a token agnostic identity model at the edge, that was both secure and efficient was a key aspect of this architecture.

This talk will provide useful insights on how we implemented a secure, token-agnostic, identity solution that works with services operating at a massive scale. Come learn how this solution helped hundreds of middle-tier services to not worry about the types of tokens and authentication concerns, and consume the user and device identity with high confidence.

Satyajit Thadeshwar, Senior Software Engineer in Product Edge Access Services Team @Netflix

1:40pm - 2:30pm

Stateful Programming Models in Serverless Functions

Most will agree that Serverless is the future of cloud computing. But when most people think of Serverless, they think of FaaS (Functions as a Service), and when they think of FaaS, they think of functions that are ephemeral, stateless, and short-lived. But does this always need to be the case? Is it possible write functions that are stateful and long-running on top of ephemeral, Serverless compute platforms?

In this session, we'll explore two stateful programming models: workflows and actors. We'll discuss how they can simplify development and how they enable stateful and long-running application patterns within ephemeral, Serverless compute environments. We'll also explain why we're making a bit bet on these programming models in the Azure Functions service.

Chris Gillum, Principal Engineering Manager @Microsoft, helping lead the Azure Functions Team

2:55pm - 3:45pm

Controlled Chaos: Taming Organic, Federated Growth of Microservices

The success with which enterprises execute on microservice strategies and the degree to which cloud-native technologies boost developer productivity leave operations and security teams with an organically growing landscape of federated services that is increasingly difficult to control. As a result, failures mount, resilience declines, and innovation dies.

In this talk, I focus on the challenges that result from organic, federated growth as well as the patterns that can be applied to monitor and control these dynamic systems, like bulkheads, backpressure, and quarantines, from both an operational and security perspective. I illustrate how visibility and control of the surrounding environment become more important than the observability of individual threads of execution and how the nature of this organic architectural style necessitates a shift to remediating behaviors in real-time.

Tobias Kunze, Co-founder and CEO @glasnostic

4:10pm - 5:00pm

Beyond Microservices: Streams, State and Scalability

Microservices have been a popular architecture choice for at least 5 years by now. Over these years we've adopted microservices architectures to ever growing set of use-cases and different development and deployment strategies. Lessons were learned and our ability to design, develop, deploy and operate microservices has improved.  

This presentation will give an opinionated view of how microservices evolved in the last few years, based on experience gained while working with companies using Apache Kafka to update their application architecture. We'll discuss the rise of API gateways, service mesh, state management and serverless architectures - what works well, and in which cases. We'll show real-world examples of how applications become more resilient and scalable when new patterns are introduced, and make sure to include caveats - because patterns are all about using them in the right context.

Gwen Shapira, Principal Data Architect @Confluent, PMC Member @Kafka, & Committer Apache Sqoop

5:25pm - 6:15pm

Microservices Open Space

Session details to follow.

Tracks

Monday, 11 November

Tuesday, 12 November

Wednesday, 13 November