commit | ca454180b2846b2538a60ad03a047aa6a738d3ca | [log] [tgz] |
---|---|---|
author | Alan Conway <aconway@redhat.com> | Wed Nov 02 15:38:49 2016 -0400 |
committer | Alan Conway <aconway@redhat.com> | Wed Nov 16 19:52:38 2016 -0500 |
tree | a4e34fbb168e43b32853211ccd745f733b890cd2 | |
parent | cdc1baa2ecfe5c38ffd6859c97428debc0282002 [diff] |
PROTON-1344: C proactor for multi-threaded proton applications proactor.h is an asynchronous, multi-threaded replacement for reactor.h It uses the same Proton engine APIs and events, but allows multiple application threads wait for events to handle, rather than calling back on handler functions from a single thread. The proactor ensures that events for the same AMQP connection are handled in sequence (although possibly by different threads at different times) so event handling code does not need to lock the use of thread-unsafe proton APIs. It provides a "wake" feature to signal connections for processing triggered by the application rather than proton IO. Examples show C sender, receiver and broker, and a libuv driver implementation.
Linux Build | Windows Build |
---|---|
Qpid Proton is a high-performance, lightweight messaging library. It can be used in the widest range of messaging applications, including brokers, client libraries, routers, bridges, proxies, and more. Proton makes it trivial to integrate with the AMQP 1.0 ecosystem from any platform, environment, or language
Universal - Proton is designed to scale both up and down. Equally suitable for simple clients or high-powered servers, it can be deployed in simple peer-to-peer configurations or as part of a global federated messaging network.
Embeddable - Proton is carefully written to be portable and cross platform. It has minimal dependencies, and it is architected to be usable with any threading model, as well as with non-threaded applications. These features make it uniquely suited for embedding messaging capabilities into existing software.
Standard - Built around the AMQP 1.0 messaging standard, Proton is not only ideal for building out your own messaging applications but also for connecting them to the broader ecosystem of AMQP 1.0-based messaging applications.
See the included INSTALL file for build and install instructions and the DEVELOPERS file for information on how to modify and test the library code itself.
Please see http://qpid.apache.org/proton for a more info.