Skip to main content
This is a pre-production deployment of Warehouse. Changes made here affect the production instance of PyPI (
Help us improve Python packaging - Donate today!

Thread-safe Python RabbitMQ Client & Management library.

Project Description


Thread-safe Python RabbitMQ Client & Management library.


AMQPStorm is a library designed to be consistent, stable and thread-safe.

  • 100% Unit-test Coverage!
  • Supports Python 2.7 and Python 3.3+.
  • Fully tested against Python Implementations; CPython, PyPy and Pyston.
  • When using a SSL connection, TLSv1 or higher is required.


Additional documentation is available on


Version 2.4.0

  • basic.consume now allows for multiple callbacks [#48].

Version 2.3.0

  • Added delivery_tag property to message.
  • Added redelivered property to message [#41] - Thanks tkram01.
  • Added support for Management Api Healthchecks [#39] - Thanks Julien Carpentier.
  • Fixed incompatibility with Sun Solaris 10 [#46] - Thanks Giuliox.
  • Fixed delivery_tag being set to None by default [#47] - tkram01.
  • Exposed requests verify and certs flags to Management Api [#40] - Thanks Julien Carpentier.

Version 2.2.2

  • Fixed potential Heartbeat deadlock when forcefully killing process - Thanks Charles Pierre.

Version 2.2.1

  • Fixed potential Channel leak [#36] - Thanks Adam Mills.
  • Fixed threading losing select module during python shutdown [#37] - Thanks Adam Mills.

Version 2.2.0

  • Connection.close should now be more responsive.
  • Channels are now reset when re-opening an existing connection.
  • Re-wrote large portions of the Test suit.

Version 2.1.4

  • Added parameter to override auto-decode on incoming Messages - Thanks Travis Griggs.
  • Fixed a rare bug that could cause the consumer to get stuck if the connection unexpectedly dies - Thanks Connor Wolf.

Version 2.1.3

  • Fixed a potential recursion error in Connection.close.

Version 2.1.1

  • Reduced default TCP Timeout from 30s to 10s.
  • Connection Open/Close timeout is now three times the value of TCP Timeout.
  • Connection will now wait for a response from the remote server before closing.

Version 2.1.0

Version 2.0.0

  • Messages are now delivered as Message objects by default.
    • to_tuple and to_dict are now set to False by default.

      This is a breaking change that affects the following function:

      • channel.process_data_events
      • channel.start_consuming
      • channel.basic.get


Special thanks to gmr (Gavin M. Roy) for creating pamqp, and in addition amqpstorm is heavily influenced by his pika and rabbitpy libraries.

Release History

This version
History Node


History Node


History Node


History Node


History Node


History Node


History Node


History Node


History Node


History Node


History Node


History Node


History Node


History Node


History Node


History Node


History Node


Download Files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Filename, Size & Hash SHA256 Hash Help File Type Python Version Upload Date
(113.4 kB) Copy SHA256 Hash SHA256
Wheel 2.7 Jan 17, 2018
(64.8 kB) Copy SHA256 Hash SHA256
Source None Jan 17, 2018

Supported By

Elastic Elastic Search Pingdom Pingdom Monitoring Dyn Dyn DNS Sentry Sentry Error Logging CloudAMQP CloudAMQP RabbitMQ Heroku Heroku PaaS Kabu Creative Kabu Creative UX & Design Fastly Fastly CDN DigiCert DigiCert EV Certificate Google Google Cloud Servers