jsonrpc
capnproto-rust
jsonrpc | capnproto-rust | |
---|---|---|
4 | 6 | |
773 | 1,952 | |
0.8% | 1.6% | |
1.8 | 9.1 | |
11 days ago | about 1 month ago | |
Rust | Rust | |
MIT License | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
jsonrpc
-
Hey Rustaceans! Got an easy question? Ask here (9/2022)!
paritytech has a Rust JSON-RPC framework.
-
Any suggestion to build a long-lived connection with dual-rpc capability
JSON-RPC (https://github.com/paritytech/jsonrpc) might be a solution, so I can create a TCP connection and it can then stream JSON request/response.
-
RiB Newsletter #26
This is an async implementation of JSON-RPC, from Parity, who also created the popular jsonrpc crate.
-
RPC over stdin/stdout
Hi, I am looking for a fairly stable JSON-RPC implementation over stdin/stdout. I want to implement a plugin architecture similar to Xi-Editor or Nushell. I am aware of Parity JSON-RPC and am wondering how it compares to tonic (gRPC implementation). A very brief search on GitHub revealed that jsonrpc_stdio_server appears to be not that heavily employed by others; therefore, I am leaning towards tonic. However, since I am a Rust beginner, I am a little bit lost about where to start.
capnproto-rust
- Best format for high-performance Serde?
-
Cap'n Proto - RPC at the speed of Rust - Part 1
The only hurdle I have is that while the documentation is extensive it is a little confusing in places and mainly focuses on C++ and the C++ RPC system which is a little different to the Rust code. There are Rust examples in the official repo which I will try and leverage here.
-
Hey Rustaceans! Got an easy question? Ask here (9/2022)!
capnproto-rust is the official Rust implementation.
- Any suggestion to build a long-lived connection with dual-rpc capability
-
Pijul 1.0 Beta
Hi, you seem to know a bit about Sanakirja!
It stores 4kb blobs, right? Does Pijul first parses the data (copying it to other allocations), or uses the data as is? I mean, there are some libraries like cap'n'proto[0] and rkyv[1] that can directly use the file contents as an in-memory data structure, I was wondering if Pijul did anything like that.
I mean, is this btree page [2] stored exactly like this on disk, and does Pijul exploits that to avoid further copying data?
(I guess there's a trouble with compression there: to decompress you really need to write in another buffer)
Also, is the I/O done with something that prevent userspace copies like mmap or io_uring, or does it eventually calls read() to copy the data to its own buffer?
I want to build something like Sanakirja, but with those features, so I'm wondering if there's any overlap.
[0] https://github.com/capnproto/capnproto-rust
[1] https://github.com/rkyv/rkyv
[2] https://docs.rs/sanakirja-core/latest/sanakirja_core/btree/p...
- Is there a library like Serde but which makes it easy to mutate serialized data stored in a [u8] or Vec<u8>?
What are some alternatives?
jsonrpsee - Rust JSON-RPC library on top of async/await
tarpc - An RPC framework for Rust with a focus on ease of use.
UnrealEngine
winterfell - A STARK prover and verifier for arbitrary computations
rkyv - Zero-copy deserialization framework for Rust
lsp-server
bincode - A binary encoder / decoder implementation in Rust.
lalrpop - LR(1) parser generator for Rust
x25519-dalek - X25519 elliptic curve Diffie-Hellman key exchange in pure-Rust, using curve25519-dalek.
Nova - Nova: High-speed recursive arguments from folding schemes
Rocket - A web framework for Rust.