aiometer

A Python concurrency scheduling library, compatible with asyncio and trio. (by florimondmanca)

Aiometer Alternatives

Similar projects and alternatives to aiometer

  1. rust

    2,778 aiometer VS rust

    Empowering everyone to build reliable and efficient software.

  2. SaaSHub

    SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives

    SaaSHub logo
  3. imgui

    372 aiometer VS imgui

    Dear ImGui: Bloat-free Graphical User interface for C++ with minimal dependencies

  4. tokio

    214 aiometer VS tokio

    A runtime for writing reliable asynchronous applications with Rust. Provides I/O, networking, scheduling, timers, ...

  5. stb

    stb single-file public domain libraries for C/C++

  6. swc

    153 aiometer VS swc

    Rust-based platform for the Web

  7. substrate

    Discontinued Substrate: The platform for blockchain innovators

  8. Rust-for-Linux

    Adding support for the Rust language to the Linux kernel. (by Rust-for-Linux)

  9. turborepo

    Discontinued Incremental bundler and build system optimized for JavaScript and TypeScript, written in Rust – including Turborepo and Turbopack. [Moved to: https://github.com/vercel/turbo]

  10. httpx

    59 aiometer VS httpx

    A next generation HTTP client for Python. 🦋

  11. entr

    Run arbitrary commands when files change

  12. cargo-watch

    Discontinued Watches over your Cargo project's source.

  13. npmgraph

    14 aiometer VS npmgraph

    A tool for exploring NPM modules and dependencies

  14. inotify-tools

    inotify-tools is a C library and a set of command-line programs providing a simple interface to inotify.

  15. ratelimit-headers

    Repository for IETF WG draft ratelimit-headers

  16. cgltf

    :diamond_shape_with_a_dot_inside: Single-file glTF 2.0 loader and writer written in C99

  17. asyncer

    4 aiometer VS asyncer

    Asyncer, async and await, focused on developer experience.

  18. efsw

    2 aiometer VS efsw

    efsw is a C++ cross-platform file system watcher and notifier.

  19. pyee

    1 aiometer VS pyee

    A rough port of Node.js's EventEmitter to Python with a few tricks of its own

  20. streams

    7 aiometer VS streams

    Streams Standard

  21. trio

    19 aiometer VS trio

    Trio – a friendly Python library for async concurrency and I/O

NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a better aiometer alternative or higher similarity.

aiometer discussion

Log in or Post with

aiometer reviews and mentions

Posts with mentions or reviews of aiometer. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2024-09-25.
  • Rewriting Rust
    23 projects | news.ycombinator.com | 25 Sep 2024
    I agree wholeheartedly (and I'm not surprised that you of all people often write raw futures!). I want to push back on the "async rust bad/failure/not ready" meme because

    - it's perfectly possible to be a successful user of the async ecosystem as it is now while building great software;

    - this two-tiered phenomenon is not unique to Rust, JS and Python struggle with it just as much (if not more due to less refined and messier design). As an example, [1] is elegant, but complex, and I'm less sure it's correct compared to a gnarly async Rust future, because the underlying async semantics are in flux.

    Of course I'd love for the remaining snags (like AFIT) to go away, and simplified Pin story or better APIs would be great, but this negativity around async Rust is just wrong. It's a massive success already and should be celebrated.

    [1]: https://github.com/florimondmanca/aiometer/blob/master/src/a...

  • HTTP Rate Limit
    3 projects | dev.to | 4 Jan 2024
    class RateLimitTransport(httpx.AsyncHTTPTransport): def __init__(self, max_per_second: float = 5, **kwargs) -> None: """ Async HTTP transport with rate limit. Args: max_per_second: Maximum number of requests per second. Other args are passed to httpx.AsyncHTTPTransport. """ self.interval = 1 / max_per_second self.next_start_time = 0 super().__init__(**kwargs) async def notify_task_start(self): """ https://github.com/florimondmanca/aiometer/blob/358976e0b60bce29b9fe8c59807fafbad3e62cbc/src/aiometer/_impl/meters.py#L57 """ loop = asyncio.get_running_loop() while True: now = loop.time() next_start_time = max(self.next_start_time, now) until_now = next_start_time - now if until_now <= self.interval: break await asyncio.sleep(max(0, until_now - self.interval)) self.next_start_time = max(self.next_start_time, now) + self.interval async def handle_async_request(self, request: httpx.Request) -> httpx.Response: await self.notify_task_start() return await super().handle_async_request(request) async def __aenter__(self) -> Self: await self.notify_task_start() return await super().__aenter__() async def __aexit__(self, *args: Any) -> None: await super().__aexit__(*args)
  • Limiting concurrency in Python asyncio: the story of async imap_unordered()
    1 project | /r/Python | 11 Apr 2023
    I recommend anyone interested in this topic to take a look at aiometer.
  • A note from our sponsor - SaaSHub
    www.saashub.com | 23 Jan 2025
    SaaSHub helps you find the best software and product alternatives Learn more →

Stats

Basic aiometer repo stats
3
382
3.4
9 months ago

florimondmanca/aiometer is an open source project licensed under MIT License which is an OSI approved license.

The primary programming language of aiometer is Python.


Sponsored
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com