scrappy-actor 0.0.1

Actor framework for Rust
Documentation

scrappy_actor is a rust actors framework

Actors are objects which encapsulate state and behavior, they communicate exclusively by exchanging messages. scrappy_actor actors are implemented on top of Tokio. Multiple actors can run in same thread. Actors can run in multiple threads using the Arbiter API. Actors exchange typed messages.

Documentation

Features

  • Async/Sync actors.
  • Actor communication in a local/thread context.
  • Using Futures for asynchronous message handling.
  • HTTP1/HTTP2 support (scrappy_actor-web)
  • Actor supervision.
  • Typed messages (No Any type). Generic messages are allowed.

Package feature

  • resolver - enables dns resolver actor, scrappy_actor::actors::resolver

Tokio runtime

At the moment scrappy_actor uses current_thread runtime.

While it provides minimum overhead, it has its own limits:

  • You cannot use tokio's async file I/O, as it relies on blocking calls that are not available in current_thread
  • Stdin, Stderr and Stdout from tokio::io are the same as file I/O in that regard and cannot be used in asynchronous manner in scrappy_actor.