Skip to content

Latest commit

 

History

13 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

actor-framework-bench

Benchmark Rust actor frameworks with same application

Target Frameworks

You can run the Actix example with:

cargo run --bin actix

Concepts

actix has 3 types for controlling concurrency

  • OS process
    • out of scope of actix
  • System
    • Usually, only one in process
    • Only for special reason, like test, there are multiple Systems.
    • Between different Systems, Actors cannot send messages.
  • Arbiter
    • Represents a OS thread
    • Each Arbiter is bound to one and only one System
    • System can hold multiple Arbiters. But in this benchmark, we only use one Arbiter.
  • Actor
    • Encapsulates state and behavior
    • Communicates with other Actors by sending and receiving messages
    • Each Actor is bound to one and only one Arbiter
  • cast: 片方向メッセージ送信
  • call: RPC

Differences

  • Timer

  • Handler

    • Actix: Need to implement Handler trait for each message type.
    • Ractor: Implement Actor trait once, and define message handling in handle method.

About

Benchmark Rust actor frameworks with same application

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages