Please enable JavaScript.
Coggle requires JavaScript to display documents.
Actor Model Sharing (Key concept (Threading (Deadlock, distributed, lock…
Actor Model Sharing
Key concept
Parallelism vs. Concurrency
Concurrency Oriented Programming
Event driven
Challenge OOP's encapsulation
Problem of threading model
Threading
Deadlock
distributed, lock work locally
Functional
Immutable
Actor model
Common pattern
Tell
Ask
Forward
Supervision & error handling
Call stack & error handling
actor is better encapsulation
FSM: State x Event => Action x State'
Context switch
Actor lifecycle
Concurrency Pattern
Thread & Lock
Software Transactional Memory (STM)
Communicating Sequential Processes (CSP)
Lambda Architecture (map-reduce)
Actor Model
Key phrases
Let it crash!
Don't communicate by sharing memory; share memory by communicating
An Actor is Behaviour
Doing One Thing at a Time
write once, run forever
History
Person
Carl Hewitt
Ericsson
Joe Armstrong
Product
AXD301 Switch
very high availability
Language
Erlang & OTP
RMQ
Hot code reload
Akka/Scala
Elixir
Next section
Akka stream
more actor pattern
FSM
Router
Clustering
comparing to Saga
Resources
Books
Erlang Programming
Programming Erlang
Seven Concurrency Models in Seven Weeks
Link
http://www.rabbitmq.com/resources/armstrong.pdf
https://en.wikipedia.org/wiki/Erlang_(programming_language
)
https://en.wikipedia.org/wiki/Actor_model
https://www.safaribooksonline.com/library/view/erlang-programming/9780596803940/ch01s05.html
https://www.slideshare.net/ngocdaothanh/erlang-factorysf-bay2010matscronqvist
https://stackoverflow.com/questions/8426897/erlangs-99-9999999-nine-nines-reliability
JS
compare promise handling