Wingfoil is a blazingly fast, highly scalable stream processing framework designed for latency-critical use cases such as electronic trading and real-time AI systems.
- Fast: Ultra-low latency and high throughput with a efficent DAG based execution engine.
- Simple and obvious to use: Define your graph of calculations; Wingfoil manages it's execution.
- Backtesting: Replay historical data to backtest and optimise strategies.
- Async/Tokio: seemless integration, allows you to leverage async at your graph edges.
- Multi-threading: distribute graph execution across cores.
use wingfoil::*;
use std::time::Duration;
fn main() {
let period = Duration::from_secs(1);
ticker(period)
.count()
.map(|i| format!("hello, world {:}", i))
.print()
.run(RunMode::RealTime, RunFor::Duration(period*3)
);
}This output is produced:
hello, world 1
hello, world 2
hello, world 3
You can download from crates.io, read the documentation or jump straight into one the examples.
We want to hear from you! Especially if you:
- are interested in contributing
- know of a project that wingfoil would be well suited for
- would like to request a feature
- have any feedback
Please email us at hello@wingfoil.io or connect on linkedin.