{"categories":[{"label":"Python Modules","url":"https://skillfed.io/packages/category/software-development-libraries-python-modules/8"}],"enrichment":{"capability":"Provides a simple async context manager to limit the rate at which concurrent asyncio tasks execute work, enforcing a configurable operations-per-second or operations-per-period ceiling.","skillfed_tags":["asyncio","rate-limiting","concurrency-control"],"use_cases":["Limit HTTP requests to an external API to stay within rate-limit quotas or avoid overwhelming a server.","Cap the concurrency of database queries or connection pool usage across multiple async workers.","Throttle file I/O or network operations to prevent resource exhaustion in high-concurrency scenarios.","Enforce a maximum throughput (e.g., 500 operations per minute) across a pool of async tasks."],"what_it_does":"asyncio-throttle is a lightweight library that wraps asyncio coroutines to enforce rate limits on concurrent work. It exports a single Throttler class that acts as an async context manager; you wrap any async operation with `async with throttler:` to ensure that no more than a specified number of operations execute within a given time window. The library is designed to integrate cleanly with asyncio patterns and works well with libraries like aiohttp for rate-limiting HTTP requests.\n\nThe package has no external dependencies and requires only Python 3.6 or later. It is abandoned\u2014last updated in 2021\u2014so it will not receive updates for newer Python versions or asyncio features. For simple, stateless rate-limiting of concurrent tasks, it remains functional; for projects requiring active maintenance or support for the latest Python releases, a maintained alternative may be preferable.","worth_installing":"Yes, for simple rate-limiting of asyncio tasks in projects targeting Python 3.6\u20133.9. The library is small, has no dependencies, and the core API is stable. However, because it is abandoned and has not been updated since 2021, verify compatibility with your Python version and consider a maintained alternative if you need ongoing support or plan to upgrade to Python 3.10+."},"id":"asyncio-throttle","links":{"html":"https://skillfed.io/packages/asyncio-throttle","md":"https://skillfed.io/packages/asyncio-throttle.md","pypi":"https://pypi.org/project/asyncio-throttle/"},"maintenance":{"status":"abandoned"},"meta":{"latest_release":"2021-04-07","license_spdx":null,"license_treatment":"permissive","name":"asyncio-throttle","python_support":"supports_current","summary":"Simple, easy-to-use throttler for asyncio"},"popularity":{"monthly_downloads":797984,"position":5030,"tier":"top_15000"},"security":{"n_vulnerabilities":0},"version":"1.0.2"}
