Pika is a pure-Python implementation of the AMQP 0-9-1 protocol that tries to stay fairly independent of the underlying network support library.
This documentation is a combination of both user documentation and module development documentation. Modules and classes called out in the Using Pika section below will cover a majority of what users who are implementation pika in their applications will need. The Pika Core Objects section below lists all of the modules that are internal to Pika.
If you have not developed with Pika or RabbitMQ before, the Connecting to RabbitMQ documentation is a good place to get started.
If you have developed with Pika prior to version 0.9, it is recommended that you also read the Connecting to RabbitMQ documentation to see the differences between 0.9 and previous versions. In addition if you have used client flow control in the past, you will want to read the section on TCP Backpressure.
Pika is available for download via PyPI and may be installed using easy_install or pip:
pip install pika
or:
easy_install pika
Or you can directly install from GitHub with pip:
pip install -e git+git://github.com/pika/pika.git@v0.9.5#egg=pika-v0.9.5
You may also download the source for this version as a zip or tar.gz with the following URLs:
http://pypi.python.org/packages/source/p/pika/pika-0.9.5.tar.gz
MD5 File Signature: 38527f6977bf0a0b204710b93b0c6417
To install from source, run “python setup.py install” in the root source directory.
Pika 0.9 is a major refactor of the Pika library implementing true asynchronous behavior at its core. It is important to understand asynchronous programming concepts to properly use Pika in your application. If you have previously used basic_consume() in an application with Pika v0.5.2 or earlier, you have already implemented continuation-passing style asynchronous code with Pika.
Note
The following documentation is for Pika development and is not intended to be end-user documentation.