Skip to main content

Connect systems via Kafka, Redis, AWS SQS and SNS

Project description

Author:

Elvio Toccalino

Date:
2018-02-06
Version:
1.0.2

Provides higher level interfaces to work with data producers and consumers. plumb supports four backends: Redis, Amazon SQS and SNS services, Kafka, and a memory implementation (designed to be a testing artifact).

The focus is on python 3 and boto3 (for AWS support).

The API

plumb uses the concepts of Source and Sink to abstract the backend. Data is transfered encoded in JSON, and by default compressed using zlib.

To fetch raw packages use a “Package Source” object, which handles a backend connection and its configuration and exposes a “get()” method. Similarly, a “Package Sink” object exposes a “put(pkg)” method.

Tests

The library is provided with unit tests and integration tests for Redis and AWS. To run the unit tests:

python setup.py test

or using nose:

nosetests tests/unit

The integration tests can be run using nose:

nosetests tests/integration

Keep in mind that boto3 will fetch your AWS credentials. It currently tries the environment variables AWS_ACCESS_KEY_ID and AWS_SECRET_ACCESS_KEY, then tries the ~/.aws directory. For details, see Boto3 Credentials Configuration.

Project details


Download files

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

Source Distribution

plumb-1.0.2.tar.gz (7.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

plumb-1.0.2-py3-none-any.whl (11.4 kB view details)

Uploaded Python 3

File details

Details for the file plumb-1.0.2.tar.gz.

File metadata

  • Download URL: plumb-1.0.2.tar.gz
  • Upload date:
  • Size: 7.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for plumb-1.0.2.tar.gz
Algorithm Hash digest
SHA256 0f35c7f7cebb1e2a747c19ba6e6e27b05d1e3c17485b01b73fc32066cea8e40d
MD5 654e37c69add3b7bbef24a19eb2e1c61
BLAKE2b-256 53ca21ecadd390230c6030360cca6eeb340a4928c2cde4d017b2585be9b41e38

See more details on using hashes here.

File details

Details for the file plumb-1.0.2-py3-none-any.whl.

File metadata

File hashes

Hashes for plumb-1.0.2-py3-none-any.whl
Algorithm Hash digest
SHA256 34011fe6c4e470c70b299a8ec6907d9b682e3f65ae6d493c03c69c173219162b
MD5 39878eb1fc344f46b9ad9267be0adc50
BLAKE2b-256 d5f2b8e092144aebe73ea8e822e2287f27e7bc4c5d8fded4a782206ab5a890cf

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page