A functional, message-based API extension for Microsoft Orleans, enabling composable actor communication for CQRS, event-sourcing, and FSM.
Orleankka is a functional extension for Microsoft Orleans that provides a message-based API similar to Akka/ProtoActor. It enables composable, uniform communication between actors, making it suitable for implementing distributed systems patterns like CQRS, event-sourcing, and finite state machines (FSM).
Developers building distributed, scalable applications with Microsoft Orleans who need a functional, message-driven actor model for complex workflows.
Orleankka offers a carefully layered, high-performance API that extends Orleans with Akka-like messaging, switchable behaviors, and built-in testing tools, simplifying actor-based system development.
Functional API for Microsoft Orleans http://orleanscontrib.github.io/Orleankka
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Provides a message-based API with no performance penalty, enabling efficient communication between actors as stated in the features list.
Offers switchable behaviors and hierarchical finite state machines, ideal for implementing complex state management patterns like in CQRS and event-sourcing.
Includes a unit testing kit with stubs, mocks, and expectations, making it easier to test actor interactions and behaviors, as demonstrated in the demos.
Supports powerful interceptors for actors and proxies, allowing for easy integration of cross-cutting concerns such as logging or security.
The README admits that documentation is undergoing a major overhaul, forcing developers to rely on unit tests and examples, which can be time-consuming and unclear.
Heavily dependent on Microsoft Orleans, limiting its use to projects committed to the Orleans ecosystem and not suitable for standalone actor frameworks.
Requires specific tools like VS2019 and .NET Core 3.x for building from source, and separate packages for client and runtime, increasing initial setup effort.
Orleankka is an open-source alternative to the following products:
ProtoActor is an ultra-fast distributed actor framework for .NET, Go, and other languages, built on the Actor Model for building concurrent and distributed systems.
Akka is a toolkit and runtime for building highly concurrent, distributed, and resilient message-driven applications on the Java Virtual Machine (JVM).