Their Exits and Their Entrances: Actors in the .NET Framework
-
Upload
carter-wickstrom -
Category
Software
-
view
282 -
download
6
Transcript of Their Exits and Their Entrances: Actors in the .NET Framework
![Page 1: Their Exits and Their Entrances: Actors in the .NET Framework](https://reader036.fdocuments.us/reader036/viewer/2022070519/58ee7cf71a28abd9528b4581/html5/thumbnails/1.jpg)
Their Exits and Their
Entrances
Actors in the .NET Environment
![Page 2: Their Exits and Their Entrances: Actors in the .NET Framework](https://reader036.fdocuments.us/reader036/viewer/2022070519/58ee7cf71a28abd9528b4581/html5/thumbnails/2.jpg)
All the world's a stage,And all the men and women merely players;They have their exits and their entrances,And one man in his time plays many parts…
William Shakespeare, As You Like It, Act II, Scene VII
![Page 3: Their Exits and Their Entrances: Actors in the .NET Framework](https://reader036.fdocuments.us/reader036/viewer/2022070519/58ee7cf71a28abd9528b4581/html5/thumbnails/3.jpg)
Actors are…
![Page 4: Their Exits and Their Entrances: Actors in the .NET Framework](https://reader036.fdocuments.us/reader036/viewer/2022070519/58ee7cf71a28abd9528b4581/html5/thumbnails/4.jpg)
Actors and… Software?
![Page 5: Their Exits and Their Entrances: Actors in the .NET Framework](https://reader036.fdocuments.us/reader036/viewer/2022070519/58ee7cf71a28abd9528b4581/html5/thumbnails/5.jpg)
goto step_spag;step_spag:
![Page 6: Their Exits and Their Entrances: Actors in the .NET Framework](https://reader036.fdocuments.us/reader036/viewer/2022070519/58ee7cf71a28abd9528b4581/html5/thumbnails/6.jpg)
Parallel ProgrammingFrom this… …to this:
![Page 7: Their Exits and Their Entrances: Actors in the .NET Framework](https://reader036.fdocuments.us/reader036/viewer/2022070519/58ee7cf71a28abd9528b4581/html5/thumbnails/7.jpg)
Actor Programming…to this:
![Page 8: Their Exits and Their Entrances: Actors in the .NET Framework](https://reader036.fdocuments.us/reader036/viewer/2022070519/58ee7cf71a28abd9528b4581/html5/thumbnails/8.jpg)
It didn’t work
![Page 9: Their Exits and Their Entrances: Actors in the .NET Framework](https://reader036.fdocuments.us/reader036/viewer/2022070519/58ee7cf71a28abd9528b4581/html5/thumbnails/9.jpg)
The Internet
<img src="//imgs.xkcd.com/comics/before_the_internet.png" title="We watched DAYTIME TV. Do you realize how soul-crushing it was? I'd rather eat an iPad than go back to watching daytime TV." alt="Before the Internet" />
![Page 10: Their Exits and Their Entrances: Actors in the .NET Framework](https://reader036.fdocuments.us/reader036/viewer/2022070519/58ee7cf71a28abd9528b4581/html5/thumbnails/10.jpg)
Microsoft .NET and Actors…it’s complicated.
![Page 11: Their Exits and Their Entrances: Actors in the .NET Framework](https://reader036.fdocuments.us/reader036/viewer/2022070519/58ee7cf71a28abd9528b4581/html5/thumbnails/11.jpg)
“”
The Internet is a passing fad.
• No, he didn’t say this. He’s not stupid.• It certainly felt that way at the time.
Bill Gates, 1993
![Page 12: Their Exits and Their Entrances: Actors in the .NET Framework](https://reader036.fdocuments.us/reader036/viewer/2022070519/58ee7cf71a28abd9528b4581/html5/thumbnails/12.jpg)
Microsoft Azure Reliable Actors• Part of Azure Service Fabric• Always-on Services based upon ‘microservices’• Many independent units of state and logic• Single-threaded objects that will still scale• You don’t want to manage their granularity or concurrency• You don’t want to manage their messages
![Page 13: Their Exits and Their Entrances: Actors in the .NET Framework](https://reader036.fdocuments.us/reader036/viewer/2022070519/58ee7cf71a28abd9528b4581/html5/thumbnails/13.jpg)
Reliable Actor Interface and Proxy
![Page 14: Their Exits and Their Entrances: Actors in the .NET Framework](https://reader036.fdocuments.us/reader036/viewer/2022070519/58ee7cf71a28abd9528b4581/html5/thumbnails/14.jpg)
Akka and the Reactive Manifesto
Reactive Systems are:•Responsive: The system responds in a timely manner
if at all possible.•Resilient: The system stays responsive in the face of
failure. • Elastic: The system stays responsive under varying
workload.•Message Driven: The system uses asynchronous
messages to establish a boundary between components.
![Page 15: Their Exits and Their Entrances: Actors in the .NET Framework](https://reader036.fdocuments.us/reader036/viewer/2022070519/58ee7cf71a28abd9528b4581/html5/thumbnails/15.jpg)
Akka.NET – ACT ALL THE THINGS
![Page 16: Their Exits and Their Entrances: Actors in the .NET Framework](https://reader036.fdocuments.us/reader036/viewer/2022070519/58ee7cf71a28abd9528b4581/html5/thumbnails/16.jpg)
UntypedActor, message, and IActorRef
![Page 17: Their Exits and Their Entrances: Actors in the .NET Framework](https://reader036.fdocuments.us/reader036/viewer/2022070519/58ee7cf71a28abd9528b4581/html5/thumbnails/17.jpg)
ChoicesReliable Actors• Service Fabric• Azure only• Orleans & Halo• Still pre-release
• Child-proofed
Akka.NET• ActorSystem• Wherever .NET runs• Open Source• Existing Akka base
• No safety net
![Page 18: Their Exits and Their Entrances: Actors in the .NET Framework](https://reader036.fdocuments.us/reader036/viewer/2022070519/58ee7cf71a28abd9528b4581/html5/thumbnails/18.jpg)
Actor Example
Hot lines under a rain of drumCigarette props in actionDialogue dub, now here’s the rubShe's acting her reaction-- Bauhaus, “She’s In Parties” (1983)
![Page 19: Their Exits and Their Entrances: Actors in the .NET Framework](https://reader036.fdocuments.us/reader036/viewer/2022070519/58ee7cf71a28abd9528b4581/html5/thumbnails/19.jpg)
Thanks For Your Interest
• All material for this talk will be available at https://carteritrellis.github.io/CodeCamp2015
• If you found this at all interesting, come talk to me – we’re hiring.
![Page 20: Their Exits and Their Entrances: Actors in the .NET Framework](https://reader036.fdocuments.us/reader036/viewer/2022070519/58ee7cf71a28abd9528b4581/html5/thumbnails/20.jpg)
Carter WickstromSoftware Engineerhttps://www.linkedin.com/in/carterwickstromhttps://twitter.com/carterwickstrom