ihrwein / lapin

AMQP client library in Rust, with a clean, futures based API

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Build Status Coverage Status LICENSE

lapin, a Rust AMQP client library

this project is separated into two crates. See the READMEs in the subfolder for each library.

It follows the AMQP 0.9.1 specifications, targetting especially RabbitMQ. As this is a young project, only part of the specification is implemented now.

What you can do:

  • connect to a server, close the connection
  • create and close channels
  • using all the basic methods. That means you can publish messages, make a consumer, ack or reject messages
  • authentication method is only PLAIN for now

lapin-futures

Crates.io Version

a library with a futures based API, that you can use with tokio-core or futures-cpupool.

This is the recommended way to use lapin as an AMQP client.

lapin-futures is available on crates.io and can be included in your Cargo enabled project like this:

[dependencies]
lapin-futures = "^0.10"

Then include it in your code like this:

#[macro_use]
extern crate lapin_futures;

lapin-async

Crates.io Version

A low level library meant for usage in an event loop like one you'd build with mio. This library assumes non blocking IO.

lapin-async is available on crates.io and can be included in your Cargo enabled project like this:

[dependencies]
lapin-async = "^0.10"

Then include it in your code like this:

#[macro_use]
extern crate lapin_async;

TLS integration

You can use lapin-futures-rustls or lapin-futures-tls-api if you need to connect to a rabbitmq server using a TLS connection.

About

AMQP client library in Rust, with a clean, futures based API

License:MIT License


Languages

Language:Rust 99.6%Language:JavaScript 0.4%