・The Virtual Actor is the Actor model for cloud ready
The Virtual Actor design pattern has an objective that it makes the Actor model more available used on cloud. The Actor model is mentioned mathematical concept, it’s perpose is not to explain how to implementation.The Virtual Actor design pattern describes a way control over actors on system resources when use the Actor model. The system is distributed system and its resources is equipped on across network.
The Actor model needs actor’s phisical address when message to it. On distributed system, it’s managed by distributed directory that constructed several distributed hash tables. When an actor is active (ready for use), Invoker needs to know it’s address or the system must provides refer distination to invoker. If it deactive, the system have to activate and refer it’s address.
When it is not need anymore, the system dispose it. Or if an actor is missing because network is not available, the system create new computing (whether at virtual computing of cloud or phisical machine of on-premises) and put the actor on it, and if needs migration, the system transfers it’s transaction to new instance of the actor.
When the system is structured by clustering environments, we have to guarantee the actor is single instance. And we have to guarantee the messaging communication thread is run in single process.
The Virtual Actor design pattern releases developers from these hard work which only distributed system specialists can accomplish. And Microsoft Azure provides virtual actor runtime environment as Service Fabric Reliable Actor.