Submit Search
Upload
Introduction to Akka
•
8 likes
•
4,595 views
Johan Andrén
Follow
The topconf 2013 introduction to actors with Akka
Read less
Read more
Technology
Entertainment & Humor
Report
Share
Report
Share
1 of 32
Download now
Download to read offline
Recommended
Introduction to akka actors with java 8
Introduction to akka actors with java 8
Johan Andrén
Introduction to Actor Model and Akka
Introduction to Actor Model and Akka
Yung-Lin Ho
Building Scalable, Highly Concurrent & Fault Tolerant Systems - Lessons Learned
Building Scalable, Highly Concurrent & Fault Tolerant Systems - Lessons Learned
Jonas Bonér
Akka in Practice: Designing Actor-based Applications
Akka in Practice: Designing Actor-based Applications
NLJUG
Slides - Intro to Akka.Cluster
Slides - Intro to Akka.Cluster
petabridge
Akka cluster overview at 010dev
Akka cluster overview at 010dev
Roland Kuhn
Akka: Simpler Scalability, Fault-Tolerance, Concurrency & Remoting through Ac...
Akka: Simpler Scalability, Fault-Tolerance, Concurrency & Remoting through Ac...
Jonas Bonér
Building Reactive Systems with Akka (in Java 8 or Scala)
Building Reactive Systems with Akka (in Java 8 or Scala)
Jonas Bonér
Recommended
Introduction to akka actors with java 8
Introduction to akka actors with java 8
Johan Andrén
Introduction to Actor Model and Akka
Introduction to Actor Model and Akka
Yung-Lin Ho
Building Scalable, Highly Concurrent & Fault Tolerant Systems - Lessons Learned
Building Scalable, Highly Concurrent & Fault Tolerant Systems - Lessons Learned
Jonas Bonér
Akka in Practice: Designing Actor-based Applications
Akka in Practice: Designing Actor-based Applications
NLJUG
Slides - Intro to Akka.Cluster
Slides - Intro to Akka.Cluster
petabridge
Akka cluster overview at 010dev
Akka cluster overview at 010dev
Roland Kuhn
Akka: Simpler Scalability, Fault-Tolerance, Concurrency & Remoting through Ac...
Akka: Simpler Scalability, Fault-Tolerance, Concurrency & Remoting through Ac...
Jonas Bonér
Building Reactive Systems with Akka (in Java 8 or Scala)
Building Reactive Systems with Akka (in Java 8 or Scala)
Jonas Bonér
Next generation message driven systems with Akka
Next generation message driven systems with Akka
Johan Andrén
Buiilding reactive distributed systems with Akka
Buiilding reactive distributed systems with Akka
Johan Andrén
Next generation actors with Akka
Next generation actors with Akka
Johan Andrén
Next generation message driven systems with Akka
Next generation message driven systems with Akka
Johan Andrén
Reactive stream processing using Akka streams
Reactive stream processing using Akka streams
Johan Andrén
Networks and types - the future of Akka
Networks and types - the future of Akka
Johan Andrén
Reactive streams processing using Akka Streams
Reactive streams processing using Akka Streams
Johan Andrén
Building reactive distributed systems with Akka
Building reactive distributed systems with Akka
Johan Andrén
Akka streams - Umeå java usergroup
Akka streams - Umeå java usergroup
Johan Andrén
Streaming all the things with akka streams
Streaming all the things with akka streams
Johan Andrén
Asynchronous stream processing with Akka Streams
Asynchronous stream processing with Akka Streams
Johan Andrén
Scala usergroup stockholm - reactive integrations with akka streams
Scala usergroup stockholm - reactive integrations with akka streams
Johan Andrén
VJUG24 - Reactive Integrations with Akka Streams
VJUG24 - Reactive Integrations with Akka Streams
Johan Andrén
Async - react, don't wait - PingConf
Async - react, don't wait - PingConf
Johan Andrén
Scala frukostseminarium
Scala frukostseminarium
Johan Andrén
Async – react, don't wait
Async – react, don't wait
Johan Andrén
Akka frukostseminarium
Akka frukostseminarium
Johan Andrén
Macros and reflection in scala 2.10
Macros and reflection in scala 2.10
Johan Andrén
Introduction to Scala
Introduction to Scala
Johan Andrén
Duchess scala-2012
Duchess scala-2012
Johan Andrén
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache Maven
Hervé Boutemy
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365
2toLead Limited
More Related Content
More from Johan Andrén
Next generation message driven systems with Akka
Next generation message driven systems with Akka
Johan Andrén
Buiilding reactive distributed systems with Akka
Buiilding reactive distributed systems with Akka
Johan Andrén
Next generation actors with Akka
Next generation actors with Akka
Johan Andrén
Next generation message driven systems with Akka
Next generation message driven systems with Akka
Johan Andrén
Reactive stream processing using Akka streams
Reactive stream processing using Akka streams
Johan Andrén
Networks and types - the future of Akka
Networks and types - the future of Akka
Johan Andrén
Reactive streams processing using Akka Streams
Reactive streams processing using Akka Streams
Johan Andrén
Building reactive distributed systems with Akka
Building reactive distributed systems with Akka
Johan Andrén
Akka streams - Umeå java usergroup
Akka streams - Umeå java usergroup
Johan Andrén
Streaming all the things with akka streams
Streaming all the things with akka streams
Johan Andrén
Asynchronous stream processing with Akka Streams
Asynchronous stream processing with Akka Streams
Johan Andrén
Scala usergroup stockholm - reactive integrations with akka streams
Scala usergroup stockholm - reactive integrations with akka streams
Johan Andrén
VJUG24 - Reactive Integrations with Akka Streams
VJUG24 - Reactive Integrations with Akka Streams
Johan Andrén
Async - react, don't wait - PingConf
Async - react, don't wait - PingConf
Johan Andrén
Scala frukostseminarium
Scala frukostseminarium
Johan Andrén
Async – react, don't wait
Async – react, don't wait
Johan Andrén
Akka frukostseminarium
Akka frukostseminarium
Johan Andrén
Macros and reflection in scala 2.10
Macros and reflection in scala 2.10
Johan Andrén
Introduction to Scala
Introduction to Scala
Johan Andrén
Duchess scala-2012
Duchess scala-2012
Johan Andrén
More from Johan Andrén
(20)
Next generation message driven systems with Akka
Next generation message driven systems with Akka
Buiilding reactive distributed systems with Akka
Buiilding reactive distributed systems with Akka
Next generation actors with Akka
Next generation actors with Akka
Next generation message driven systems with Akka
Next generation message driven systems with Akka
Reactive stream processing using Akka streams
Reactive stream processing using Akka streams
Networks and types - the future of Akka
Networks and types - the future of Akka
Reactive streams processing using Akka Streams
Reactive streams processing using Akka Streams
Building reactive distributed systems with Akka
Building reactive distributed systems with Akka
Akka streams - Umeå java usergroup
Akka streams - Umeå java usergroup
Streaming all the things with akka streams
Streaming all the things with akka streams
Asynchronous stream processing with Akka Streams
Asynchronous stream processing with Akka Streams
Scala usergroup stockholm - reactive integrations with akka streams
Scala usergroup stockholm - reactive integrations with akka streams
VJUG24 - Reactive Integrations with Akka Streams
VJUG24 - Reactive Integrations with Akka Streams
Async - react, don't wait - PingConf
Async - react, don't wait - PingConf
Scala frukostseminarium
Scala frukostseminarium
Async – react, don't wait
Async – react, don't wait
Akka frukostseminarium
Akka frukostseminarium
Macros and reflection in scala 2.10
Macros and reflection in scala 2.10
Introduction to Scala
Introduction to Scala
Duchess scala-2012
Duchess scala-2012
Recently uploaded
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache Maven
Hervé Boutemy
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365
2toLead Limited
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
Alex Barbosa Coqueiro
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
UiPathCommunity
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQL
ScyllaDB
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial Buildings
Memoori
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Mark Simos
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?
Mattias Andersson
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024
Scott Keck-Warren
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024
Enterprise Knowledge
Story boards and shot lists for my a level piece
Story boards and shot lists for my a level piece
charlottematthew16
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
Fwdays
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Zilliz
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
null - The Open Security Community
Vector Databases 101 - An introduction to the world of Vector Databases
Vector Databases 101 - An introduction to the world of Vector Databases
Zilliz
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering Tips
Miki Katsuragi
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easy
Alfredo García Lavilla
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
Fwdays
DMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special Edition
Dubai Multi Commodity Centre
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Patryk Bandurski
Recently uploaded
(20)
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache Maven
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQL
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial Buildings
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024
Story boards and shot lists for my a level piece
Story boards and shot lists for my a level piece
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
Vector Databases 101 - An introduction to the world of Vector Databases
Vector Databases 101 - An introduction to the world of Vector Databases
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering Tips
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easy
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
DMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special Edition
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Introduction to Akka
1.
An introduction to Actors Akka with Johan
Andrén johan.andren@mejsla.se | @apnylle
2.
Moores law 2,6 billions 1
million 2300 1971 1990 today
3.
Oh, No Problems!
4.
Oh No, Problems! • • • • • • Race
conditions Data corruption Deadlocks Thread contention Livelocks Priority Inversion
5.
Concurrency is HARD • • • • To
write To test To debug To reason about We need a better model!
6.
7.
B C D A F E
8.
event driven systems with ACTORS
9.
10.
State Inbox The only way
to interact from outside Behaviour
11.
• • • • • Single execution flow
model No shared _mutable_ state Lightweight Loose coupling Easy to test
12.
Actor A Actor B
13.
One way communication Actor
A Actor B
14.
React, don’t wait Actor
A Actor B
15.
Load balancing Actor A Actor
B1 router Actor B2
16.
Pipe/Filter Actor A Actor F (filter) Actor
B
17.
Parallellize Actor C1 Actor A Actor
B (chef) Actor C2 Actor C2
18.
• • • No work, no
thread used! Async - never actively wait Loose coupling
19.
JVM B C D A F E
20.
JVM 1 B C JVM 2 D A F E
21.
The same same • • • Two
actors on one core Two actors on separate cores Two actors on separate servers
22.
Error handling in Actor
systems
23.
24.
Traditional model • • • Leaking information
between tiers Impossible to detect simultaneous errors The receiver does not know how to handle the errors!
25.
Error handling with
Actors (parent) Actor A Actor X Actor Z
26.
Error handling with
Actors (parent) Actor A Actor X Actor Z
27.
Error handling with
Actors Actor A Actor X Actor Z
28.
”Supervision” • • • • Compartmentilization What goes back
is explicit Separating error handling and business logic Can detect simultaneous errors
29.
But Wait, there is
more! • • • • • STM Remoting Clustring with no SPoF MQs integration Eventbus Website: akka.io
30.
Try it out! Typesafe
Activator typesafe.com
31.
Recap • • • • Simple but powerful
model Lightweight and fast Loose coupling Resiliency Johan Andrén johan.andren@mejsla.se | @apnylle
32.
Questions? Johan Andrén johan.andren@mejsla.se |
@apnylle
Download now