Skip to content

Instantly share code, notes, and snippets.

@chgeuer
Last active April 28, 2019 19:23
Show Gist options
  • Save chgeuer/5ed664379e9205d36139410d29dda38e to your computer and use it in GitHub Desktop.
Save chgeuer/5ed664379e9205d36139410d29dda38e to your computer and use it in GitHub Desktop.

Christmas Actor Hackday

Goal of the "Christmas Actor Hack" is to get in touch with the Actor model. That includes:

  • actors (or grains as Orleans calls it, or processes as the Erlang/Elixir community calls it)
  • passing immutable messages between actors
  • each actor having a mailbox which it processes
  • a simple programming model where actor code apprears single-threaded, because concurrency is handled by the actor system
  • different implementations, such as
    • the BEAM (Bogdan's Erlang Abstract Machine), which is the Erlang VM
      • which is what the Erlang Language runs on
        • which is what Elixir compiles down to
        • and Erlang is that thing which the Whatsapp Backend runs on
    • Akka, the JVM implementation to get as close to what Erlang offers, but on a VM which isn't designed for that
    • Akka.net, the CLR port of Akka
    • Orleans, which implements a "virtual actor model" where actor state is persisted in a backing store such as Azure tables, so if actors crash, or need to be garbage-collected, they can be re-vamped and brought back to live
      • Orleans being the backend for Halo 4, where each past game, each player, etc., is an actor
    • Service Fabric's Actor model, which is a rewrite of Orleans, because, hey, Orleans is just this researchy thing :-)

topics

  • Akka on Service Fabric or ACS

free videos

podcasts

links to public docs

code samples

books

Video Courses on Pluralsight

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment