Rate limiter in Go: per-IP token bucket with golang.org/x/time/rate

ClaudeGate exposes Claude Code CLI as a REST API. Every POST /api/v1/jobs request creates a job that spawns a CLI process — this isn't an HTTP handler that fires a SQL query. It's a child process, ...

By · · 1 min read
Rate limiter in Go: per-IP token bucket with golang.org/x/time/rate

Source: DEV Community

ClaudeGate exposes Claude Code CLI as a REST API. Every POST /api/v1/jobs request creates a job that spawns a CLI process — this isn't an HTTP handler that fires a SQL query. It's a child process, RAM, CPU, time. Without protection, an aggressive client can saturate the machine in seconds. The obvious solution: a per-IP rate limiter. The golang.org/x/time/rate package implements the token bucket algorithm, which is exactly what's needed here. Here's how the integration was done, the decisions made, and what was deliberately left out. Token bucket: the mechanics in two sentences A token bucket holds tokens. Each request consumes one token. Tokens replenish at a constant rate (the RPS). If the bucket is empty, the request is rejected. golang.org/x/time/rate exposes this cleanly via rate.NewLimiter(limit, burst): import "golang.org/x/time/rate" // 5 requests/second, burst of 5 (no accumulation beyond that) limiter := rate.NewLimiter(rate.Limit(5), 5) if limiter.Allow() { // process the re

Related Posts

Similar Topics

#vulnerability research (226)#supply chain security (138)#github security lab (185)#ai (120)#application security (100)#codeql (53)#webdev (55)#code scanning (41)#dependabot (37)#npm (39)#mymo (38)#python (36)#devops (32)#defi (31)#javascript (31)#bug bounty (27)#github actions (30)#open source (29)#technology (29)#agents (28)

Trending on ShareHub

  1. Understanding Modern JavaScript Frameworks in 2026
    by Alex Chen · Feb 12, 2026 · 0 likes
  2. The System Design Primer
    by Sarah Kim · Feb 12, 2026 · 0 likes
  3. Just shipped my first open-source project!
    by Alex Chen · Feb 12, 2026 · 0 likes
  4. OpenAI Blog
    by Sarah Kim · Feb 12, 2026 · 0 likes
  5. Building Accessible Web Applications: A Practical Guide
    by Alex Chen · Feb 12, 2026 · 0 likes
  6. Rapper Lil Poppa dead at 25, days after releasing new music
    Rapper Lil Poppa dead at 25, days after releasing new music
    by Anonymous User · Feb 19, 2026 · 0 likes
  7. write-for-us
    by Volt Raven · Mar 7, 2026 · 0 likes
  8. Before the Coffee Gets Cold: Heartfelt Story of Time Travel and Second Chances
    Before the Coffee Gets Cold: Heartfelt Story of Time Travel and Second Chances
    by Anonymous User · Feb 12, 2026 · 0 likes
    #coffee gets cold #the #time travel
  9. Best DoorDash Promo Code Reddit Finds for Top Discounts
    Best DoorDash Promo Code Reddit Finds for Top Discounts
    by Anonymous User · Feb 12, 2026 · 0 likes
    #doordash #promo #reddit
  10. Premium SEO Services That Boost Rankings & Revenue | VirtualSEO.Expert
    by Anonymous User · Feb 12, 2026 · 0 likes
  11. NBC under fire for commentary about Team USA women's hockey team
    NBC under fire for commentary about Team USA women's hockey team
    by Anonymous User · Feb 18, 2026 · 0 likes
  12. Where to Watch The Nanny: Streaming and Online Viewing Options
    Where to Watch The Nanny: Streaming and Online Viewing Options
    by Anonymous User · Feb 12, 2026 · 0 likes
    #streaming #the nanny #where
  13. How Much Is Kindle Unlimited? Subscription Cost and Plan Details
    How Much Is Kindle Unlimited? Subscription Cost and Plan Details
    by Anonymous User · Feb 12, 2026 · 0 likes
    #kindle unlimited #subscription #unlimited
  14. Russian skater facing backlash for comment about Amber Glenn
    Russian skater facing backlash for comment about Amber Glenn
    by Anonymous User · Feb 18, 2026 · 0 likes
  15. Google News
    Google News
    by Anonymous User · Feb 18, 2026 · 0 likes

Latest on ShareHub

Browse Topics

#artificial intelligence (31582)#data science (24018)#ai (17260)#generative ai (15034)#crypto (15016)#machine learning (14681)#bitcoin (14269)#featured (13571)#news & insights (13064)#crypto news (11094)

Around the Network