How to write microservices in Scala without Akka
summary
Argues that Akka can be avoided by defining endpoints with Tapir, generating Swagger docs automatically, and swapping the backend from Akka HTTP to Netty so the code returns typed Tapir endpoints instead of Akka routes, removing the need for an actor system and relying on Scala execution contexts and Futures. Demonstrates chunked file upload implemented with Akka Streams and an alternative using ZIO streams, shows a Tapir HTTP client without actor system, and highlights Akka’s license change (free under ~25B revenue rules).
AI-written summary · about
chapters (11)
- 0:00Introduction
- 4:14Monoliths vs microservices
- 9:55Sync vs async programming
- 14:17Akka basics
- 18:57Building a simple Akka web application
- 19:17Tapir for routes
- 23:14Migrating from Akka
- 26:13Large file uploads
- 30:34ZIO Streams alternative
- 33:07Summary
- 33:28Q&A
related talks
59mImplementing Microservices with Scala and Akka
52mFrom annotations to code: describing HTTP endpoints with Tapir
49mBeautiful APIs with Scala, Scalatra, Swagger, and Akka
51mImplementing Microservices with Scale and Akka
28mStreams on top of Scala
44mKafka based Microservices with Akka Streams and Kafka Streams
32mProduction-ready direct-style Scala
49mScala Server Toolkit: How to Write A FP Microservice Step-by-step
