Skip to main content

Async Microservices Framework

Project description

Waspy is the python framework for the WASP project. In other words its an asynchronous “transport-agnostic” web framework.

Language agnostic concepts

While this framework is for python, the patterns used in wasp are language agnostic. You should be able to call other services in different languages assuming they all follow the same patterns. This framework has a pluggable architecture for the transport layer, which allows you to switch from http to using a message bus, or vice-versa. You could even listen on both at the same time without having to modify your code at all.

Example

Look at examples/ folder for some quick examples

Alpha

This project is currently in alpha state. There are a lot of features missing.

Features for beta: - [x] HTTP Transport - [x] Routing - [x] RabbitMQ transporty - [x] Support middlewares - [x] Client library (for calling other services) - [x] HTTP client transport (with envvar service discovery) - [x] RabbitMQ client transport - [ ] Test everything

note: all alpha features are complete, but I am still in the process of adding more robusts tests. Until that is done, waspy will remain in alpha and api’s might change.

Wish List: - [ ] Transport classes for nats (nats.io) - [ ] Transport classes for kafka - [ ] pattern for synchronous “worker-tier” - [x] configuration package - [ ] auto-reloading when in debug mode - [x] sentry integration - [ ] jwt handling

Features for GA (1.0): - [ ] High level “Falcon-like” api for writing RESTFUL endpoints even easier! - [ ] High level can be overridden by lower level for control/performance reasons - [ ] Stable/proven API

License

Apache-2.0

Installing

To install, just run pip install waspy

Developing

python setup.py develop

Project details


Release history Release notifications | RSS feed

Download files

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

Source Distribution

waspy-0.14.0.tar.gz (16.9 kB view details)

Uploaded Source

Built Distribution

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

waspy-0.14.0-py3-none-any.whl (24.5 kB view details)

Uploaded Python 3

File details

Details for the file waspy-0.14.0.tar.gz.

File metadata

  • Download URL: waspy-0.14.0.tar.gz
  • Upload date:
  • Size: 16.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for waspy-0.14.0.tar.gz
Algorithm Hash digest
SHA256 472d4104df90cd74ada0076d55e6b21df90055e0b1fe41537b28c8e02455d36a
MD5 fed0e4bb6c0f93c8b9f94a291e3fcaa7
BLAKE2b-256 f0046faf4c1557518c0c07fcd17d0465b4a7927e290f8611553ba277a2cd1445

See more details on using hashes here.

File details

Details for the file waspy-0.14.0-py3-none-any.whl.

File metadata

File hashes

Hashes for waspy-0.14.0-py3-none-any.whl
Algorithm Hash digest
SHA256 4bef12d0714d7b8f19289cbe08b7231fc49651e75875007dbf4b699a87591ff2
MD5 97b6428f041d5402c878a30f1588676a
BLAKE2b-256 abd5f34c1a7e06c93f7f1bad9fbd2a73a74882c4f556d3d93617fb9486ae1657

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