aperture VS rupy

Compare aperture vs rupy and see what are their differences.

rupy

HTTP App. Server and JSON DB - Shared Parallel (Atomic) & Distributed (by tinspin)
InfluxDB - Power Real-Time Data Analytics at Scale
Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
www.influxdata.com
featured
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com
featured
aperture rupy
28 31
590 136
1.7% -
9.8 1.1
3 days ago about 1 year ago
Go Java
Apache License 2.0 -
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.

aperture

Posts with mentions or reviews of aperture. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2024-01-18.
  • Defcon: Meta's system for preventing overload with graceful feature degradation
    1 project | news.ycombinator.com | 29 Feb 2024
    Anyone interested in load shedding and graceful degradation with request prioritization should check out the Aperture OSS project.

    https://github.com/fluxninja/aperture

  • Queues Don't Fix Overload
    3 projects | news.ycombinator.com | 18 Jan 2024
    I agree that queues can problem especially when misconfigured. But some amount of queuing is necessary, to absorb short spikes in demand vs capacity. Also, queues can be helpful to re-order requests based on criticality which won't be possible with zero queue size - in which case we have to immediately drop a request or admit it without considering it's priority.

    I think it is beneficial to re-think how we tune queues. Instead of setting a queue size, we should be tuning the max permissible latency in the queue which is what a request timeout actually is. That way, you stay within the acceptable response time SLA while keeping only the serve-able requests in the queue.

    Aperture, an open-source load management platform took this approach. Each request specifies a timeout for which it is willing to stay in the queue. And weighted fair queuing scheduler then allocates the capacity (a request quota or max number of in-flight request) across requests based on the priority and tokens (request heaviness) of each request.

    Read more about the WFQ scheduler in Aperture: https://docs.fluxninja.com/concepts/scheduler

    Link to Aperture's GitHub: https://github.com/fluxninja/aperture

    Would love to hear your thoughts on our approach!

  • Kelsey Hightower's Twitter Spaces on Rate Limits & Flow Control
    1 project | /r/devops | 18 Aug 2023
    For those keen to dive deeper, I highly recommend exploring both the Twitter Space and Aperture: [Twitter Spaces]: https://twitter.com/kelseyhightower/status/1689355284802629633?s=20 [GitHub repo]: https://github.com/fluxninja/aperture
  • Graceful Behavior at Capacity
    1 project | news.ycombinator.com | 7 Aug 2023
    Very interesting blog post! Our team has been working intensively in this area for the last couple of years - flow control, load shedding, controllability (PID control), and so on.

    We have open-sourced our work at - https://github.com/fluxninja/aperture

    We would love feedback from folks reading this blog post!

    Disclaimer: I am one of the co-authors of the Aperture project. There are several interesting ideas we have built into this project and I will be happy to dive into the technical details as well.

  • Why Adaptive Rate Limiting Is a Game-Changer
    1 project | news.ycombinator.com | 22 Jul 2023
    It's a blog on an open-source project that precisely tells you how to implement adaptive rate limiting.

    Just click around a bit:

    - https://github.com/fluxninja/aperture

    - https://docs.fluxninja.com/use-cases/adaptive-service-protec...

    Note: I am one of the authors' of this project.

  • Show HN: Review GitHub PRs with AI/LLMs
    2 projects | news.ycombinator.com | 14 Jul 2023
    At the time of writing, the first sample image on that page is this:

    https://coderabbit.ai/assets/section-1-f9a48066.png

    which recommends adding a "maxIterations" counter to the "for len(executedComponents) ..." loop here:

    https://github.com/fluxninja/aperture/blob/26e00ea818c7c28da...

    HOWEVER

    - the review has failed to notice the logic using "numExecutedBefore" (around line 377) that already prevents the specific bug it is suggesting a fix for

    - the suggested change decrements "maxIterations" inside the "for ... range circuit.components {" loop which means it isn't counting iterations, it's counting components

    This kind of suggestion is particularly nasty because it's unlikely that the test suite populates enough components to hit "maxIterations" - so an inattentive reader could accept it, get a green build, and then deploy a production bug!

  • June 25th, 2023 Deno Deploy Postmortem
    2 projects | news.ycombinator.com | 1 Jul 2023
    The need an adaptive protection system like Aperture[0] to mitigate overloads.

    [0]: https://github.com/fluxninja/aperture

  • Jsonnet – The Data Templating Language
    20 projects | news.ycombinator.com | 27 Mar 2023
    It’s customized to our policy spec. But you can learn from this and adapt it to your spec.

    https://github.com/fluxninja/aperture/blob/main/scripts/json...

  • Show HN: Aperture – Unified Reliability Management for Microservices
    1 project | news.ycombinator.com | 16 Mar 2023
  • Failure Mitigation for Microservices: An Intro to Aperture
    1 project | /r/microservices | 14 Mar 2023

rupy

Posts with mentions or reviews of rupy. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2024-02-17.
  • Considerations for a long-running Raspberry Pi
    11 projects | news.ycombinator.com | 17 Feb 2024
    I have been running a Raspberry 2 cluster for 10 years: http://host.rupy.se

    A few weeks back the first SD card to fail got so corrupted it failed to reboot!

    My key learning is use oversized cards, because then the bitcycle will wear slower!

    I'm going from 32GB to 256/512/1024!

  • What Kind of Asynchronous Is Right for You?
    1 project | news.ycombinator.com | 17 Jun 2023
    How this article does not mention SSE, comet or chunking escapes me.

    What does their definition of event-driven really look like in practice.

    Nobody has a clue.

    Here is the ideal event driven system, it's async-to-async: https://github.com/tinspin/rupy/wiki/Fuse

    The example is not working because I had to shut down the services for multiple reasons, but the high level of it is that you use 4 (potentially different) threads to do one request/response middle man transaction.

    That way you have _zero_ io-wait or idling. I'm surprised nobody has copied this approach since I invented it 10 years ago. I understand why though you need your entire chain to be async and that means rewriting everything and that is a big risk when it's hard to debug.

    But if you succeed you can build something that is 10x perf/watt than all other implementations. Which is going to be important when interest rates go higher and crash our entire industry.

  • An unknown Swedish startup’s €3B bid to build a green rival to AWS
    1 project | news.ycombinator.com | 10 Jun 2023
    The hardware is peaking.

    So software is where you can make the difference: http://host.rupy.se

  • Sandstorm: Open-source platform for self-hosting web app
    15 projects | news.ycombinator.com | 4 Jun 2023
  • You Want Modules, Not Microservices
    11 projects | news.ycombinator.com | 3 Jan 2023
    I think we're all confused over the definition. Also one might understand what all the proponents are talking about better if they think about this more as a process and not some technological solution:

    https://github.com/tinspin/rupy/wiki/Process

    All input I have is you want your code to run on many machines, in fact you want it to run the same on all machines you need to deliver and preferably more. Vertically and horizontally at the same time, so your services only call localhost but in many separate places.

    This in turn mandates a distributed database. And later you discover it has to be capable of async-to-async = no blocking ever anywhere in the whole solution.

    The way I do this is I hot-deploy my applications async. to all servers in the cluster, this is what a cluster node looks like in practice (the name next to Host: is the node): http://host.rupy.se if you click "api & metrics" you'll see the services.

    With this not only do you get scalability, but also redundancy and development is maintained at live coding levels.

  • I wish my web server were in the corner of my room
    9 projects | news.ycombinator.com | 11 Oct 2022
    I have hosted my own web server both physically and codevise since 2014.

    It's on a Raspberry 2 cluster:

    http://host.rupy.se

    Since 2016 i have my own database also coded from scratch:

    http://root.rupy.se

    We need to implement HTTP/1.1 with less bloat, a C non-blocking web server that can share memory between threads is probably the most interesting project for humans right now, is anyone working on that?

  • Ask HN: Free and open source distributed database written in C++ or C
    12 projects | news.ycombinator.com | 16 May 2022
    I have one in Java: https://github.com/tinspin/rupy

    Here is the 2000 lines of code of the entire database: http://root.rupy.se/code?path=/Root.java

    And here you can try it out: http://root.rupy.se

  • Dokku – Free Heroku Alternative
    13 projects | news.ycombinator.com | 14 May 2022
    The smallest PaaS you have ever seen is one order of magnitude larger than mine: https://github.com/tinspin/rupy

    And I bet you the same goes for performance, if not two!

  • Server-Sent Events: the alternative to WebSockets you should be using
    19 projects | news.ycombinator.com | 12 Feb 2022
    The data is here: http://fuse.rupy.se/about.html

    Under Performance. Per watt the fuse/rupy platform completely crushes all competition because of 2 reasons:

    - Event driven protocol design, averages at about 4 messages/player/second (means you cannot do spraying or headshots f.ex. which is another feature in my game design opinion).

    - Java's memory model with atomic concurrency which needs a VM and GC (C++ copied that memory model in C++11, but it failed completely because they lack both VM and GC, but that model is still to this day the one C++ uses), you can read more about this here: https://github.com/tinspin/rupy/wiki

    You can argue those points are bad arguments, but if you look at performance per watt with some consideration for developer friendlyness, I'm pretty sure in 100 years we will still be coding minimalist JavaSE on the server and vanilla C (compiled with C++ compiler) on the client.

  • Jodd – The Unbearable Lightness of Java
    12 projects | news.ycombinator.com | 17 Jan 2022

What are some alternatives?

When comparing aperture and rupy you can also consider the following projects:

rules_jsonnet - Jsonnet rules for Bazel

huproxy

slo-exporter - Slo-exporter computes standardized SLI and SLO metrics based on events coming from various data sources.

cmdg - Command line Gmail client

awesome-sre-tools - A curated list of Site Reliability and Production Engineering Tools

Nullboard - Nullboard is a minimalist kanban board, focused on compactness and readability.

now-boltwall - Vercel lambda deployment for a Nodejs Lightning-powered Paywall

cakephp-swagger-bake - Automatically generate OpenAPI, Swagger, and Redoc documentation from your existing CakePHP code.

ai-pr-reviewer - AI-based Pull Request Summarizer and Reviewer with Chat Capabilities.

dbmate - :rocket: A lightweight, framework-agnostic database migration tool.

etleneum - the centralized smart contract platform

Aerospike - Aerospike Database Server – flash-optimized, in-memory, nosql database