Skip to content

Conversation

@knope-bot
Copy link
Contributor

@knope-bot knope-bot bot commented Nov 18, 2025

Important

Merging this pull request will create these releases

router 0.0.18 (2025-11-18)

Features

JWT claims caching for improved performance

Performance improvement: JWT token claims are now cached for up to 5 seconds, reducing the overhead of repeated decoding and verification operations. This optimization increases throughput by approximately 75% in typical workloads.

What's changed:

  • Decoded JWT payloads are cached with a 5-second time-to-live (TTL), which respects token expiration times
  • The cache automatically invalidates based on the token's exp claim, ensuring security is maintained

How it affects you:
If you're running Hive Router, you'll see significant performance improvements out of the box with no configuration needed. The 5-second cache provides an optimal balance between performance gains and cache freshness without requiring manual tuning.

@github-actions
Copy link

github-actions bot commented Nov 18, 2025

k6-benchmark results

     ✓ response code was 200
     ✓ no graphql errors
     ✓ valid response structure

     █ setup

     checks.........................: 100.00% ✓ 213981      ✗ 0    
     data_received..................: 6.3 GB  208 MB/s
     data_sent......................: 84 MB   2.8 MB/s
     http_req_blocked...............: avg=6.94µs   min=661ns   med=1.7µs   max=38ms     p(90)=2.32µs  p(95)=2.62µs  
     http_req_connecting............: avg=2.05µs   min=0s      med=0s      max=19.7ms   p(90)=0s      p(95)=0s      
     http_req_duration..............: avg=20.58ms  min=2.12ms  med=19.55ms max=198.04ms p(90)=28.13ms p(95)=31.57ms 
       { expected_response:true }...: avg=20.58ms  min=2.12ms  med=19.55ms max=198.04ms p(90)=28.13ms p(95)=31.57ms 
     http_req_failed................: 0.00%   ✓ 0           ✗ 71347
     http_req_receiving.............: avg=155.75µs min=23.45µs med=38.77µs max=139.74ms p(90)=90.89µs p(95)=409.15µs
     http_req_sending...............: avg=31.81µs  min=5.24µs  med=10.56µs max=35.73ms  p(90)=15.46µs p(95)=28.57µs 
     http_req_tls_handshaking.......: avg=0s       min=0s      med=0s      max=0s       p(90)=0s      p(95)=0s      
     http_req_waiting...............: avg=20.39ms  min=2.06ms  med=19.42ms max=73.95ms  p(90)=27.84ms p(95)=31.24ms 
     http_reqs......................: 71347   2372.98616/s
     iteration_duration.............: avg=21.02ms  min=4.66ms  med=19.91ms max=252.64ms p(90)=28.56ms p(95)=32.03ms 
     iterations.....................: 71327   2372.320964/s
     vus............................: 50      min=50        max=50 
     vus_max........................: 50      min=50        max=50 

@github-actions
Copy link

🐋 This PR was built and pushed to the following Docker images:

Image Names: ghcr.io/graphql-hive/router

Platforms: linux/amd64,linux/arm64

Image Tags: ghcr.io/graphql-hive/router:pr-573 ghcr.io/graphql-hive/router:sha-bb35863

Docker metadata
{
"buildx.build.ref": "builder-6e22da34-c56a-44a6-92e5-6ddc2f0db97b/builder-6e22da34-c56a-44a6-92e5-6ddc2f0db97b0/brmx7brb4xakbv2u930wsatou",
"containerimage.descriptor": {
  "mediaType": "application/vnd.oci.image.index.v1+json",
  "digest": "sha256:d33ff1780e16d914ba364be15c622731a4774b92332410d86e78798cb452e971",
  "size": 1609
},
"containerimage.digest": "sha256:d33ff1780e16d914ba364be15c622731a4774b92332410d86e78798cb452e971",
"image.name": "ghcr.io/graphql-hive/router:pr-573,ghcr.io/graphql-hive/router:sha-bb35863"
}

@kamilkisiela kamilkisiela merged commit afd9442 into main Nov 19, 2025
19 checks passed
@kamilkisiela kamilkisiela deleted the knope/release branch November 19, 2025 11:55
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant