Add support for Redis clustering
Nobody has claimed this yet.
Assessment
- Difficulty
- 5/5
- Estimated time
- Over a week
- Newbie friendliness
- 35/100
- Issue type
- Feature
- Clarity
- Needs clarification
- Activity status
- Stale
- Tech stack
- java, redis
- Domain
- databases, distributed-systems
Research direction
The issue names no files, tests, or entry points; start by reviewing issue #32 and the existing Redis handling in java-cfenv. Resolve which signaling format to support and verify that the chosen approach sets spring.redis.cluster.nodes from a usable cluster node.
Written by the indexing model from the issue text.
Description
Similar to #32, I'd like to propose adding support for Redis clustering to java-cfenv. Since Redis clustering allows for node discovery via the various CLUSTER commands, there is greater flexibility in how cluster support can be signaled. One nice aspect is that only a single node need be provided in order for additional nodes to be discovered.
For spring-data-redis to enable clustering, I believe it is only required that the property spring.redis.cluster.nodes be set.
Here are some proposals on how this could be implemented:
- If the service instance tag also contains the word
cluster, (in addition toredis), then theuriis used to determine a host:port to set inspring.redis.cluster.nodes. - If the uri scheme is either
redis-clusterorrediss-cluster, then theuriis used to determine the host:port of the cluster. - An additional array of
redis_nodesis provided; for example:
"redis_nodes": [
{
"hostname": "x.x.x.x",
"port": "xxxx"
},
{
"hostname": "x.x.x.x",
"port": "xxxx"
}
]
I'd be happy to provide a PR for this work.
- Dominant language
- Java
- Stars
- 97
- Forks
- 64
- Avg merge
- 6h 36m
- Merged PRs (30d)
- 6
Getting set up
- No Dockerfile or Docker Compose file
- No pull request template
- Read the contributing guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from pivotal-cf/java-cfenv
-
enhancement
Difficulty 4/5 3-5 days Newbie friendliness 45/100
pivotal-cf/java-cfenv#354 · 1 reaction ·
-
enhancement
Difficulty 3/5 1-2 days Newbie friendliness 48/100
pivotal-cf/java-cfenv#296 · 3 reactions ·
-
bug
Difficulty 4/5 3-5 days Newbie friendliness 35/100
pivotal-cf/java-cfenv#292 ·
-
Difficulty 4/5 3-5 days Newbie friendliness 25/100
pivotal-cf/java-cfenv#255 · 2 comments ·
-
bug
Difficulty 3/5 1-2 days Newbie friendliness 35/100
pivotal-cf/java-cfenv#249 · 2 comments ·
All issues in pivotal-cf/java-cfenv
Similar issues
-
Difficulty 2/5 1-3 hours Newbie friendliness 88/100
Maintainers usually reply within 1 day
-
Difficulty 1/5 Under an hour Newbie friendliness 88/100
apache/arrow-java#1311 ·
Maintainers usually reply within 2 days
-
bug triage
Difficulty 2/5 1-3 hours Newbie friendliness 85/100
-
Difficulty 2/5 1-3 hours Newbie friendliness 88/100
Maintainers usually reply within 1 day
-
security
Difficulty 2/5 1-3 hours Newbie friendliness 65/100
IBM/networking-java-sdk#204 ·