Kino is a simple communication framework based on Actor model.
Unicast, multicast and direct message addressing, delivery-to-node confirmation, callbacks (routing response message to the resumption actor). Rendezvous service provides actors auto-discovery and reduces amount of required configuration. Actors can be single- or multithreaded.
Supported Platforms: .NET 4.7, .NET Core 2.1
Partner Rendezvous clusters can be configured to access actors from other networks.
public class MyMessageProcessor : Actor
{
[MessageHandlerDefinition(typeof (MyMessage))]
public async Task<IActorResult> MyMessageHandler(IMessage message)
{
// method body
}
}
// Just create a message you would like to send
IMessage request = Message.CreateFlowStartMessage(new MyMessage());
// Define result message you would like to receive
ICallbackPoint callbackPoint = CallbackPoint.Create<ResultMessage>();
// Now, send the message. No need to know actor address, ID or anything else!
IPromise promise = messageHub.Send(request, callbackPoint);
// Wait for result
ResultMessage result = promise.GetResponse().Result.GetPayload<ResultMessage>();
If you are interested in the project, please, read wiki for details about the framework, ask related questions or suggest features in chat!
Powered by NetMQ