Overview
Explore the intricacies of building and maintaining long-lived microservice systems in this 44-minute conference talk from Scala Days Copenhagen 2017. Delve into architectural and implementation choices for distributed systems across various domains, including vehicle IoT, medical messaging, biometric security, and video streaming. Learn best practices for using Scala and Akka frameworks, focusing on asynchronous I/O, messaging, and managing distributed state complexity. Discover how to create documentable and expressive protocols and APIs, and gain insights into the challenges of large-scale microservices systems. Benefit from years of consultancy experience as you explore code examples and practical solutions for leveraging the Lightbend stack ecosystem, implementing necessary infrastructure, and ensuring system reliability. Cover topics such as stateful services, message delivery semantics, security considerations, and reactive system design principles to enhance your microservices project.
Syllabus
Intro
Design & architecture
It's simple without the details
Details make things complex
Stateful services
Message delivery semantics
Details make the difference
Good protocols
Tooling: build-time support
Tooling: "natural-looking" code
Tooling: testing
Strict and fully-contained
Security is important
Value semantics for authn & z
Check claims in every service
Reactive
Responsive
Resilient
With back-pressure
Assemble entire systems
Summary
Taught by
Scala Days Conferences