5 releases

0.1.4 Aug 4, 2022
0.1.3 Aug 1, 2022
0.1.2 Apr 2, 2022
0.1.1 Jan 2, 2022
0.0.3 Feb 27, 2021

#21 in #interprocess-communication

Download history 13/week @ 2024-03-28 1/week @ 2024-04-04 5/week @ 2024-06-27 99/week @ 2024-07-04

104 downloads per month

MIT license

99KB
2.5K SLoC

station

A network-based interprocess communication (IPC) library written in Rust.

I'm writing this to be useful to me. It might not be useful for you.

Structure

The station design is fairly straightforward. It implements two types of IPC, namely Remote Procedure Calls (RPC) and PubSub. RPC communication is performed over a stream socket (TCP or Unix stream sockets) and PubSub communication is performed over datagram sockets (UDP or Unix datagram sockets). This allows some flexibility in defining how two processes that may or may not be running on the same machine can talk to each other.

See the unit tests in process.rs for some examples.


lib.rs:

Station

This crate for IPC communication over a network with multiple machines or locally with a single machine. The implemented IPC patterns are IPC via a publish-subscribe model as well as a request-response model. This library aims for flexibility in the networking protocol used to transmit messages.

Dependencies

~5–14MB
~175K SLoC