NAME
Zing - Multi-Process Management System
ABSTRACT
Actor Toolkit and Multi-Process Management System
SYNOPSIS
use Zing;
my $zing = Zing->new(scheme => ['MyApp', [], 1]);
# $zing->execute;
DESCRIPTION
This distribution includes an actor-model architecture toolkit and Redis-powered multi-process management system which provides primatives for building powerful, reactive, concurrent, distributed, and resilient message-driven applications in Perl 5. If you're unfamiliar with this architectural pattern, learn more about "the actor model".
INHERITS
This package inherits behaviors from:
LIBRARIES
This package uses type constraints from:
ATTRIBUTES
This package has the following attributes:
scheme
scheme(Scheme)
This attribute is read-only, accepts (Scheme) values, and is required.
METHODS
This package implements the following methods:
start
start() : Kernel
The start method builds a Zing::Kernel and executes its event-loop.
-
start example #1
# given: synopsis $zing->start;
FEATURES
While this is, at present, a proof-of-concept, the API is not expected to change. The documentation is a work-in-progress. Please see the examples included for demonstrations of the objects in action. The following is a list of features currently supported by the framework:
- parallel processing
- asynchronous programming
- event-driven applications
- actor-model based framework
- process (actor) mailboxes
- distributed processes (actors)
- erlang-style supervision trees
- hot-reloadable processes (actors)
- automated multi-process management
- atomicity without lock management
- multitasking processes (event-loop actors)
- chainable/extendable process (actor) event-loops
- none-blocking yieldable routines
- high performance message queues
- high performance message channels
- high performance message passing
- built-in high performance log shipping
- operable as a cluster or single-node
- resilient to memory leaks
- no new funcs/idioms
- no callbacks, futures or promises
- no zombie processes
SEE ALSO
AUTHOR
Al Newkirk, awncorp@cpan.org
LICENSE
Copyright (C) 2011-2019, Al Newkirk, et al.
This is free software; you can redistribute it and/or modify it under the terms of the The Apache License, Version 2.0, as elucidated in the "license file".