{"repo":"n0-computer/quic-rpc","free":true,"listed":false,"github":"https://github.com/n0-computer/quic-rpc","clone":"git clone https://github.com/n0-computer/quic-rpc.git","description":"A streaming rpc system based on quic","language":"Rust","stars":141,"topics":["crate","quic","rpc-library","rust","stream-processing"],"license":null,"category":"data-pipelines","readme_excerpt":"Quic-Rpc A streaming rpc system based on quic [ ][repo link] [![Latest Version]][crates.io] [![Docs Badge]][docs.rs] ![license badge] [![status badge]][status link] [Latest Version]: https://img.shields.io/crates/v/quic-rpc.svg [crates.io]: https://crates.io/crates/quic-rpc [Docs Badge]: https://img.shields.io/badge/docs-docs.rs-green [docs.rs]: https://docs.rs/quic-rpc [license badge]: https://img.shields.io/crates/l/quic-rpc [status badge]: https://github.com/n0-computer/quic-rpc/actions/workflows/rust.yml/badge.svg [status link]: https://github.com/n0-computer/quic-rpc/actions/workflows/rust.yml [repo link]: https://github.com/n0-computer/quic-rpc Goals Interaction patterns Provide not just request/response RPC, but also streaming in both directions, similar to [grpc]. - 1 req - 1 res - 1 req, update stream - 1 res - 1 req - res stream - 1 req, update stream - res stream It is still a RPC system in the sense that interactions get initiated by the client. Transports - memory transport with very low overhead. In particular, no ser/deser, currently using [flume] - quic transport via the [quinn] crate - transparent combination of the above API - The API should be similar to the quinn api. Basically \"quinn with types\". Non-Goals - Cross language interop. This is for talking from rust to rust - Any kind of versioning. You have to do this yourself - Making remote message passing look like local async function calls - Being runtime agnostic. This is for tokio Example computation s","default_branch":null,"files":null,"tree":[],"storefront":"/r/n0-computer","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/n0-computer/quic-rpc/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}