Why Orleans' actor is virutal
(Jin Qing's Column, Nov. 2, 2021)
Virtual Actor is a concept invented by Microsoft Orleans, which is a framework of distributed actor.
Orleans: Distributed Virtual Actors for Programmability and Scalability describes the virtual programming model.
The virtual actor is analogous to virtual memory. Virtual actors are mapped to physical arctors instances in the running servers. Virtualization of actors in Orleans has 4 facets:
- Actors always exist, virtually
- Actors can not be created or destroied explicitly
- Server failure does not affect the actors' existence
- Activation: Orleans automatically create an actor
- A request triggers an activation if the actor doesn't exist
- Unused actors are automatically reclaimed
- Applications don't know where the physical actor is
- Similar to virtual memory's "paged out" and mapping
Automatic scale out
Actor viruliaztion greatly simplifes the programming, since it gets rid of the burden of actor lifecycle control.