Akka.NET professional reference code samples
Branch: master
Clone or download

README.md

Akka.NET Professional Code Samples

Akka.NET is a radically different way of developing concurrent and networked applications in .NET, and so it's important to have a number of high quality reference applications developers can explore in order to better understand how to design and model software using Actors and Akka.NET.

That's the goal of this repository - to provide a small number of exceptionally well-explained and documented examples .NET architects and developers can use to better understand how to take advantage of Akka.NET's full potential.

Current Samples

Doing Asynchronous Operations inside Actors with PipeTo - how to use Task<T> and async operations inside your actors using the PipeTo pattern in Akka.NET.

Testing actors withAkka.TestKit — how to test your ActorSystems, explanation of the core & advanced features of the testing framework, as well as addressing common testing FAQs and situations.

ASP.NET and Windows Service Microservices with Akka.Cluster - build an elastically scalable web-crawler using Akka.Cluster in Windows Services and ASP.NET MVC.

Remote Deployment of Actors with Akka.Remote - how to deploy actors over the network using the Akka.Remote module.

AtLeastOnceDelivery Actors and Guaranteed Message Delivery - how to use the AtLeastOnceDeliveryActor base class in Akka.Persistence to deliver messages multiple times until they're acknowledged by the recipient.

Contributing

We accept pull requests for new samples or changes to existing ones, but we maintain a very high standard of quality.

Please see our PipeTo Sample for an example.

Any samples you want to submit must:

  • Contain detailed comments in the source code;
  • Have a detailed README explaining your architectural choices and data flows;
  • Be markedly distinct from any other sample in this repository;
  • Be concise enough that a single developer can review it easily.

Questions about Samples?

Please create a Github issue for any questions you might have.

Code License

All source code is licensed under the language of Apache 2.0. See LICENSE for more details.

Diagrams and Visuals

All of the visuals used to explain our samples are licensed under Creative Commons Attribution 4.0 International.

Creative Commons Attribution 4.0 International License

You are free to modify and use these diagrams in your own derivative works as long as you comply with the text of the Creative Commons Attribution 4.0 International license.

All original diagram files are in .sdr format, which means they were made with SmartDraw.

SmartDraw logo

You can download a free trial of SmartDraw from their site.

About Petabridge

Petabridge logo

Petabridge is a company dedicated to making it easier for .NET developers to build distributed applications.

Petabridge provides Akka.NET consulting and training, including advanced training in Akka.Remote, Akka.Cluster, and Akka.NET Design Patterns!


Copyright 2015 - 2017 Petabridge, LLC