- [bugfix] message's arguments are more correctly forwarded
- [bugfix] actor's arguments are more correctly forwarded in actor's
creation inrotor::supervisor_tandrotor::asio::supervisor_asio_t - [bugfix]
rotor::asio::forwarder_tnow more correctly dispatches
boost::asioevents to actor methods; e.g. it works correctly now with
async_acceptmethod ofsocket_acceptor
Assets
2
- [improvement] more modern cmake usage
Assets
2
- [improvement] registy actor was added to allow via name/address runtime
matching do services discovery - [improvement, breaking] minor changes in supervisor behavior: now it
is considered initialied when all its children confirmed initialization - [improvement]
supervisor_policy_twas introduced to control supervisor
behavior on a child-actor startup failure - [example]
examples/ev/pong-registry.cpphow to use registry - [doc] patterns/Registry was added
Assets
2
- [improvement] response can be inherited from
rotor::arc_base, to allow
forwarding requests without copying it (i.e. just intrusive pointer is created) - [example]
examples/boost-asio/beast-scrapper.cpphas been added; it
demonstrates an app with pool of actor workers with request-response forwarding
Assets
2
- [improvement] the [request-response] approach is integrated to support basic
[reliable] messaging: response notification failure will be delivered,
if the expected response will not arrive in-time - [improvement] lambda subscribiers are supported
- [improvement] actor behavior has been introduced to offload actor's
interface - [breaking] supervisor is constructed with help of
supervisor_config_t,
which contains shutdown timeout value - [breaking] supervisor does not spawns timeout timer for overall shutdown
procedure, instead per-child timers are spawned. The root supervisor
the same way monitors child-supervisor shut down - [breaking] supervisor
create_actormethod now takes child max
init time value. If it does not confirm, the child actor will be asked
for shut down. - [breaking] shutdown request sent to an child actor now timeout-tracked
by supervisor. The message type has changed tomessage::shutdown_request_t - [breaking] init request sent to an child actor now timeout-tracked
by supervisor. The message type has changed tomessage::init_request_t - [breaking] actor's state request message type now
message::state_request_t,
which follows the generic request/response pattern. The response type
is nowmessage::state_response_t. - [breaking] {asio, ev, ws} supervisor configs are renamed to have
corresponding suffix.
Assets
2
basiliscos
released this
- [improvement] locality notion was introduced, which led to possibilty
to build superving trees, see [superving-trees]] - [breaking] the
outboundfield inrotor::supervisor_twas renamed just toqueue - [breaking]
rotor::address_tnow containsconst void*locality - [breaking]
rotor::asio::supervisor_config_tnow contains
std::shared_ptrtostrand, instead of creating private strand
for each supervisor - [bugfix] redundant
do_start()method inrotor::supervisor_twas
removed, since supervisor now is able to start self after compliting
initialization. - [bugfix]
rotor::supervisor_tsendsinitialize_actor_tto self
to advance own state toINITIALIZEDvia common actor mechanism,
instead of changeing state directly on early initialization phase
(do_initialize) - [bugfix]
rotor::asio::forwarder_tnow more correctly dispatches
boost::asio events to actor methods - [bugfix]
rotor::ev::supervisor_ev_tproperly handles refcounter
Assets
2
add libev support