Skip to content

fix(mcp-gateway): add jitter to policy reload ticker to prevent thundering herd #304

@Agent-Hellboy

Description

@Agent-Hellboy

Problem

All gateway replicas start a time.NewTicker(5 * time.Second) at process start. With many MCPServer pods they all hit the Kubernetes ConfigMap API at the same wall-clock tick, creating a thundering herd every 5 seconds.

Fix

Add up to 2s of random jitter to the ticker interval in policy_cache.go:

jitter := time.Duration(rand.N(2000)) * time.Millisecond
ticker := time.NewTicker(5*time.Second + jitter)

Files

  • services/mcp-gateway/policy_cache.go

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions