Bootstrapping Microservices using Akka, Kafka ans Spark
summary
Bootstraps microservices by turning Kafka into the canonical event store and replayable source of truth, using Kafka as source of truth, Avro + Confluent Schema Registry for evolvable schemas and log compaction to speed bootstrapping. Built a Scala/Akka gateway called Hydra (Scala/Akka) that validates/ingests JSON→Avro into Kafka, and a config-driven Hydra-Spark DSL that compiles into Spark Streaming jobs to upsert materialized views (Postgres) and write derived topics. Runs on a three-node Hydra cluster, handles roughly 500–1,000 msgs/sec, and is open source.
AI-written summary · about
chapters (11)
- 0:00Start
- 2:14MONOLITHIC APPS
- 5:25THE SERVICE DATA MISMATCH
- 9:33MUTATION VS. FACTS
- 12:29A MESSAGING SYSTEM BASED ON DISTRIBUTED LOG SEMANTICS
- 13:47REPLICATION IS ABOUT RESILIENCY
- 14:19THE LOG IS A LINEAR STRUCTURE
- 14:48MESSAGES CAN BE REPLAYED
- 15:25LOG CLEAN UP POLICY: DELETE
- 15:50LOG CLEAN UP POLICY: COMPACT
- 24:36INGESTION REPLICATION PROTOCOL
related talks
41mReducing Microservice Complexity with Kafka and Reactive Streams
33mKafka Microservices with Kafka plus Akka and Kafka Streams
44mKafka based Microservices with Akka Streams and Kafka Streams
59mImplementing Microservices with Scala and Akka
41mApache Kafka + Apache Mesos = Highly Scalable Streaming Microservices
48mThe three paths of Scaling with Akka
52m10 LESSONS LEARNED FROM USING KAFKA IN 1000 SCALA MICROSERVICES
11mSpinning up micro-services using Ruby/Kafka
