Skip to content

Conversation

@notdu
Copy link
Contributor

@notdu notdu commented Oct 23, 2025

fix: #978 - Add REDIS_TIMEOUT first; implement the circuit breaker in a separate PR.

Introduces configurable timeouts for Redis connection and I/O operations via environment variables REDIS_TIMEOUT and REDIS_PERSECOND_TIMEOUT, defaulting to 10 seconds. Updates the Redis client implementation to utilize these timeouts, enhancing resource management during unresponsive Redis instances.

Also updates documentation in README.md to reflect these changes.

Test result:

  • Memory Limits
    • Pod Memory Limit: 256 MB
    • GOMEMLIMIT: 200 MiB
  • k6:
    • rate: 1k
    • timeout: 100ms
    • preAllocatedVUs: 50
    • maxVUs: 50
  • Redis: Will be PAUSED for 5 minutes
  • Before add REDIS_TIMEOUT config
image - After add REDIS_TIMEOUT = 100ms image

@collin-lee
Copy link
Contributor

LGTM @arkodg thoughts?

@collin-lee
Copy link
Contributor

Looks like it's failing on precommit. Possible to run npx prettier --write README.md?

README.md Outdated

Use the following environment variables to configure timeouts:

1. `REDIS_TIMEOUT`: sets the timeout for Redis connection and I/O operations. Default: `10s`
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

can you point out the defaults from the lib docs or code

Copy link
Contributor Author

@notdu notdu Oct 24, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@notdu
Copy link
Contributor Author

notdu commented Oct 24, 2025

Looks like it's failing on precommit. Possible to run npx prettier --write README.md?

updated

@notdu
Copy link
Contributor Author

notdu commented Oct 24, 2025

hi @collin-lee , @arkodg please help me review it again

Copy link
Contributor

@arkodg arkodg left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM thanks

@notdu
Copy link
Contributor Author

notdu commented Oct 25, 2025

@collin-lee It seems like this PR needs approval from reviewer who have write access

@notdu
Copy link
Contributor Author

notdu commented Oct 26, 2025

hi @collin-lee, This PR still cannot be merged due to two workflows awaiting approval. This workflow requires approval from a maintainer

@collin-lee collin-lee merged commit 875d418 into envoyproxy:main Oct 27, 2025
5 checks passed
@collin-lee
Copy link
Contributor

@notdu - merged

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.

Proposal: Expose configurable Redis timeout (radix) and optional circuit breaker for Redis backend

3 participants