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.7.0.tar.gz (23.8 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.7.0-py3-none-any.whl (21.3 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: aioservicekit-0.7.0.tar.gz
  • Upload date:
  • Size: 23.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.8 {"installer":{"name":"uv","version":"0.10.8","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for aioservicekit-0.7.0.tar.gz
Algorithm Hash digest
SHA256 f081f82bd739f37f4edf768be54c480db843d611e99d08c2d130d21e396ec9f7
MD5 59ade7a99a3aff0079ef24312a784bdb
BLAKE2b-256 bbd8320fb5723239cf1c5a6de0c3a1e31490413044671b78ffc8e4362456b513

See more details on using hashes here.

File details

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

File metadata

  • Download URL: aioservicekit-0.7.0-py3-none-any.whl
  • Upload date:
  • Size: 21.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.8 {"installer":{"name":"uv","version":"0.10.8","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for aioservicekit-0.7.0-py3-none-any.whl
Algorithm Hash digest
SHA256 93e0cc4018cb7131201a2b485a8fe6f80f9a4473bdc840b0ac0780f855016a2e
MD5 415fcc2d7cec4a3176a59fe31225da88
BLAKE2b-256 085d980883ae4beb581acae2737573acd2b224f2680e10e6e89475a0cb3c6fb1

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