Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Page properties
label


Status

Status
colourRedGreen
titleNOT STARTEDdecided
 

StakeholdersMakoto Takemiya
OutcomeCustom minimalistic actor framework will be introduced and integrated
Due date
Owner


Background

To support a various number of use cases Iroha2 must implement logic to plug additional logic as an actor. The design should allow an arbitrary actor to receive messages from other actors and share messages about his work.

...

According to the requirement of supporting different use cases, actors should be implemented as compile-time features (at least) or as pluggable extensions (point to discuss and future research).


Image RemovedImage Added

Decisions

Custom minimalistic actor framework will be introduced and integrated.

Alternatives

  1. Use available actor frameworks such as Actix or different

Concerns

  1. Tradeoff between extensibility and overhead with maintenance global bus and filter messages

Assumptions

  1. Filtering messages on message bus layer against skipping on actors
  2. Research pros and cons of actors as separate binaries with external API to extend pluggability

Risks

Additional Information

https://github.com/jonhoo/bus
Simple implementation of a lock-free, bounded, single-producer, multi-consumer, broadcast channel

https://github.com/actix/actix
Popular actor framework for Rust

https://video.ethz.ch/events/2017/rust/e2d74a7b-7cfd-4bd3-8ce5-23c99ad775e2.html
Type-safe & high-perf distributed actor systems with Rust by Eickhoff, Anselm