awesome-repositories.com
Blog
MCP
awesome-repositories.com

Discover the best open-source repositories with AI-powered search.

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectMCP serverAboutHow we rankPress
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
throttled avatar

throttled/throttled

0
View on GitHub↗
1,591 stars·98 forks·Go·BSD-3-Clause·15 views

Throttled

Throttled is a Go library and middleware package for enforcing rate quotas and request thresholds on HTTP endpoints. It provides tools for tracking web request rates over specific time windows to control access frequency and manage traffic spikes.

The core request evaluation relies on a token-bucket algorithm with sliding counters backed by fast memory stores, supplemented by pluggable storage backends for state persistence. Incoming requests are identified and grouped using flexible visitor-key parsers based on IP addresses, API keys, or custom parameters.

The package integrates directly with web servers to intercept incoming traffic automatically. It appends standard response headers containing current usage, remaining quotas, and retry intervals to inform clients of their status.

Features

  • Token Bucket Throttlers - Enforces maximum request thresholds and burst allowances using a sliding counter algorithm backed by fast memory stores.
  • HTTP Middleware - Intercepts incoming web requests automatically to evaluate rate quotas before passing execution to underlying HTTP handlers.
  • Request Rate Limiting - Enforces HTTP request rate limits to manage maximum thresholds and burst allowances, preventing server resource exhaustion.
  • Gateway Rate Limiters - Enforcing request rate quotas on web servers to control access frequency and prevent resource exhaustion.
  • Traffic Throttling - Includes a middleware component for throttling HTTP endpoints based on configurable request quotas and time windows.
  • Visitor Key Parsers - Identifies and groups incoming requests by IP address, API key, or custom parameters using flexible request parsers.
  • Go Rate Limiting Libraries - Provides a Go package for enforcing maximum request thresholds and burst allowances over specific time windows.
  • Pluggable Storage Backends - Delegates rate limit state persistence to interchangeable database drivers or in-memory caches through a common interface.
  • Rate Limiters - Provides a library for tracking and restricting incoming HTTP request rates to prevent server resource exhaustion and control traffic.
  • Quota Status Headers - Appends standard response headers to inform clients about their current usage, remaining quota, and retry intervals.
  • Rate Limiting with Usage Monitoring - Tracks rate limiting state by recording incoming client requests in memory to measure usage and enforce traffic limits.
  • Traffic Burst Controllers - Managing traffic spikes and burst allowances on web endpoints to ensure stable service delivery.

Star history

Star history chart for throttled/throttledStar history chart for throttled/throttled

How this analysis was created: This summary and feature list were written by an AI model that read the project's README and public documentation pages. Each feature links to the documentation it came from; stars, license and language come straight from the GitHub API. The model does not read the source code, and the analysis is refreshed when the project is re-analysed. Learn more on our About page.

AI search

Explore more awesome repositories

Describe what you need in plain English — the AI ranks thousands of curated open-source projects by relevance.

Start searching with AI

Open-source alternatives to Throttled

Similar open-source projects, ranked by how many features they share with Throttled.
  • rack/rack-attackrack avatar

    rack/rack-attack

    5,746View on GitHub↗

    Rack-attack is a middleware rate limiter and request filter for the Rack interface. It provides a system for throttling HTTP requests and maintaining IP address blocklists to protect applications from malicious traffic and denial-of-service attacks. The project enables application layer DDoS mitigation and API rate limit management by identifying and rejecting requests from banned clients or abusive IP addresses. It allows for the definition of safelists to bypass filters and uses custom logic to determine if a client should be blocked or throttled. The tool covers comprehensive traffic mana

    Rubyrackrack-attackrack-middleware
    View on GitHub↗5,746
  • express-rate-limit/express-rate-limitexpress-rate-limit avatar

    express-rate-limit/express-rate-limit

    3,265View on GitHub↗

    This project is a middleware for the Express web framework designed to restrict request frequency and protect server capacity. It functions as a traffic throttler that intercepts incoming requests to evaluate and enforce limits based on client identity within defined time windows. The system distinguishes itself through a pluggable data store pattern that allows for distributed rate limiting. By delegating hit count storage to external databases, it ensures consistent request tracking across multiple server instances and maintains state across process restarts. The library provides comprehen

    TypeScriptapiexpressexpress-js
    View on GitHub↗3,265
  • emissary-ingress/emissaryemissary-ingress avatar

    emissary-ingress/emissary

    4,509View on GitHub↗

    Emissary is a Kubernetes API gateway that manages incoming external traffic and routes it to internal microservices. It utilizes an Envoy proxy as the underlying data plane to handle high-performance traffic routing and protocol translation, with a control plane that translates Kubernetes custom resources and annotations into proxy configurations. The project provides specialized support for gRPC infrastructure, including HTTP/2 routing and gRPC-Web protocol bridging for browser-based clients. It enables zero-trust security through mutual TLS encryption and delegates identity verification to

    Pythonambassadorapi-gatewayapi-management
    View on GitHub↗4,509
  • ityouknow/spring-cloud-examplesityouknow avatar

    ityouknow/spring-cloud-examples

    6,196View on GitHub↗

    This is a learning collection of example projects that demonstrate core Spring Cloud patterns for building microservice architectures. The repository covers the fundamental building blocks of a microservices system, including service discovery through a central registry, centralized configuration management from Git or SVN repositories, API gateway-based request routing, circuit breaker patterns for fault tolerance, and distributed request tracing across service boundaries. The examples show how to implement service registration and dynamic discovery so that clients can locate microservices b

    Javaeurekahystrixhystrix-dashboard-turbine
    View on GitHub↗6,196
See all 30 alternatives to Throttled→

Frequently asked questions

What does throttled/throttled do?

Throttled is a Go library and middleware package for enforcing rate quotas and request thresholds on HTTP endpoints. It provides tools for tracking web request rates over specific time windows to control access frequency and manage traffic spikes.

What are the main features of throttled/throttled?

The main features of throttled/throttled are: Token Bucket Throttlers, HTTP Middleware, Request Rate Limiting, Gateway Rate Limiters, Traffic Throttling, Visitor Key Parsers, Go Rate Limiting Libraries, Pluggable Storage Backends.

What are some open-source alternatives to throttled/throttled?

Open-source alternatives to throttled/throttled include: rack/rack-attack — Rack-attack is a middleware rate limiter and request filter for the Rack interface. It provides a system for… express-rate-limit/express-rate-limit — This project is a middleware for the Express web framework designed to restrict request frequency and protect server… emissary-ingress/emissary — Emissary is a Kubernetes API gateway that manages incoming external traffic and routes it to internal microservices.… ityouknow/spring-cloud-examples — This is a learning collection of example projects that demonstrate core Spring Cloud patterns for building… inngest/inngest — Inngest is a durable execution framework and event-driven automation engine designed to orchestrate background… linkerd/linkerd2 — This project is a service mesh platform designed to manage, secure, and observe service-to-service communication…

Curated searches featuring Throttled

Hand-picked collections where Throttled appears.
  • Rate limiter