Skip to main content

A framework for creating asynchronous services. It helps to create nanoservices (like microservices, but for microservices), control their life cycle and organize communications.

Project description

aioservicekit

Welcome to the documentation for aioservicekit.

aioservicekit is a Python library built on asyncio designed to provide a robust and structured framework for creating long-running asynchronous services, periodic tasks, and managing their lifecycles gracefully.

Core Features

  • Managed Services: Define services with clear start, stop, restart, and wait lifecycles.
  • Periodic Tasks: Easily create tasks that run at regular intervals.
  • Dependency Management: Define dependencies between services, ensuring correct startup and shutdown order.
  • Graceful Shutdown: Integrates with OS signals (SIGINT, SIGTERM) for clean application termination via the on_shutdown event.
  • Task Concurrency: Manage groups of concurrent tasks with configurable error handling using TaskGroup.
  • Pub/Sub Channels: Distribute data asynchronously to multiple consumers using Chanel.
  • Event System: A generic event emitter/listener pattern for decoupling components.
  • Utilities: Helpers for running multiple services and ensuring clean application exit.

Navigation

Installation

pip install aioservicekit

Ready to build robust async applications? Head over to the Getting Started guide!

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

aioservicekit-0.6.0.tar.gz (44.9 kB view details)

Uploaded Source

Built Distribution

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

aioservicekit-0.6.0-py3-none-any.whl (27.7 kB view details)

Uploaded Python 3

File details

Details for the file aioservicekit-0.6.0.tar.gz.

File metadata

  • Download URL: aioservicekit-0.6.0.tar.gz
  • Upload date:
  • Size: 44.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.9.22

File hashes

Hashes for aioservicekit-0.6.0.tar.gz
Algorithm Hash digest
SHA256 df4b52fbf00c322379a901db5e48bb840ab45006f3a49edb6d64381c1c7e71d8
MD5 d66efd01b7b6fa79a938fb737ffd3ee9
BLAKE2b-256 a93bdf457b8e4b97a630fd5583fcc552c5f2a24c70e4b6f0e986cdb09e827d4e

See more details on using hashes here.

File details

Details for the file aioservicekit-0.6.0-py3-none-any.whl.

File metadata

  • Download URL: aioservicekit-0.6.0-py3-none-any.whl
  • Upload date:
  • Size: 27.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.9.22

File hashes

Hashes for aioservicekit-0.6.0-py3-none-any.whl
Algorithm Hash digest
SHA256 da0265dcce62dbcccf38c7e48755337c4d0a9240a79c387558f79ffdb4684fd1
MD5 790bee501de5a86822ad451b681b6d8d
BLAKE2b-256 86cabb370adb6987e08d2c93b0c819329888330bb28e9330e8bc59f5806db4ec

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