#thrift #nng #runng

runng_thrift

Thrift channel/protocol over nng via runng

1 unstable release

0.1.0 Dec 30, 2018

#9 in #nng

MIT license

140KB
3.5K SLoC

nng_async / RuNNG

Rust NNG (Nanomsg-Next-Generation):

NNG, like its predecessors nanomsg (and to some extent ZeroMQ), is a lightweight, broker-less library, offering a simple API to solve common recurring messaging problems, such as publish/subscribe, RPC-style request/reply, or service discovery. The API frees the programmer from worrying about details like connection management, retries, and other common considerations, so that they can focus on the application instead of the plumbing.

travis codecov docs.rs

Repository Crate Details
nng_async / runng runng crate high-level wrapper for NNG
nng-sys runng-sys crate bindings to native NNG library
runng_examples Additional examples
runng_thrift runng-thrift crate NNG as Apache Thrift transport

Usage

In Cargo.toml:

runng = "0.3"

Requirements:

  • cmake in PATH
    • On Linux/macOS: default generator is "Unix Makefiles" and should just work
    • On Windows: default generator is usually Visual Studio
  • Optional libclang needed if using build-bindgen feature to run bindgen

Build

  1. Update submodules: git submodule update --init --recursive
  2. Install requirements
  3. cargo build

Dependencies

~9–17MB
~270K SLoC