Skip to content

Commit 89d934b

Browse files
Merge pull request #583 from redis/DOC-4167-update-lettuce-links
DOC-4167 update Lettuce links and basic info
2 parents 5a57082 + faccd04 commit 89d934b

File tree

6 files changed

+19
-15
lines changed

6 files changed

+19
-15
lines changed

content/develop/connect/clients/java/_index.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ You have two choices of Java clients that you can use with Redis:
2020

2121
- [Jedis]({{< relref "/develop/connect/clients/java/jedis" >}}), for synchronous applications.
2222
- [Lettuce]({{< relref "/develop/connect/clients/java/lettuce" >}}),
23-
for asynchronous and reactive applications.
23+
for synchronous, asynchronous, and reactive applications.
2424

2525
You can also access Redis with an object-mapping client interface. See
2626
[RedisOM for Java]({{< relref "/integrate/redisom-for-java" >}})

content/develop/connect/clients/java/jedis.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -15,9 +15,9 @@ title: Jedis guide
1515
weight: 1
1616
---
1717

18-
[Jedis](https://github.com/redis/jedis) is the *synchronous* Java client for Redis.
18+
[Jedis](https://github.com/redis/jedis) is a synchronous Java client for Redis.
1919
Use [Lettuce]({{< relref "/develop/connect/clients/java/lettuce" >}}) if you need
20-
an *asynchronous* Java client.
20+
a more advanced Java client that also supports asynchronous and reactive connections.
2121
The sections below explain how to install `Jedis` and connect your application
2222
to a Redis database.
2323

content/develop/connect/clients/java/lettuce.md

Lines changed: 12 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -15,9 +15,11 @@ title: Lettuce guide
1515
weight: 2
1616
---
1717

18-
[Lettuce](https://github.com/redis/lettuce/tree/main/src/main) is the *asynchronous* Java client for Redis.
19-
Use [Jedis]({{< relref "/develop/connect/clients/java/jedis" >}}) if you need
20-
a *synchronous* Java client.
18+
[Lettuce](https://github.com/redis/lettuce/tree/main/src/main) is an advanced Java client for Redis
19+
that supports synchronous, asynchronous, and reactive connections.
20+
If you only need synchronous connections then you may find the other Java client
21+
[Jedis]({{< relref "/develop/connect/clients/java/jedis" >}}) easier to use.
22+
2123
The sections below explain how to install `Lettuce` and connect your application
2224
to a Redis database.
2325

@@ -94,7 +96,7 @@ public class Async {
9496
}
9597
```
9698

97-
Learn more about asynchronous Lettuce API in [the reference guide](https://lettuce.io/core/release/reference/index.html#asynchronous-api).
99+
Learn more about asynchronous Lettuce API in [the reference guide](https://redis.github.io/lettuce/#asynchronous-api).
98100

99101
### Reactive connection
100102

@@ -136,7 +138,7 @@ public class Main {
136138
}
137139
```
138140

139-
Learn more about reactive Lettuce API in [the reference guide](https://lettuce.io/core/release/reference/index.html#reactive-api).
141+
Learn more about reactive Lettuce API in [the reference guide](https://redis.github.io/lettuce/#reactive-api).
140142

141143
### Redis Cluster connection
142144

@@ -178,14 +180,15 @@ RedisClient client = RedisClient.create(redisUri);
178180
Lettuce uses `ClientResources` for efficient management of shared resources like event loop groups and thread pools.
179181
For connection pooling, Lettuce leverages `RedisClient` or `RedisClusterClient`, which can handle multiple concurrent connections efficiently.
180182

181-
### Timouts
183+
### Timeouts
184+
182185
Lettuce provides timeouts for many operations, such as command execution, SSL handshake, and Sentinel discovery. By default, Lettuce uses a global timeout value of 60 seconds for these operations, but you can override the global timeout value with individual timeout values for each operation.
183186

184187
{{% alert title="Tip" color="warning" %}}
185188
Choosing suitable timeout values is crucial for your application's performance and stability and is specific to each environment.
186189
Configuring timeouts is only necessary if you have issues with the default values.
187190
In some cases, the defaults are based on environment-specific settings (e.g., operating system settings), while in other cases, they are built into the Lettuce driver.
188-
For more details on setting specific timeouts, see the [Lettuce reference guide](https://lettuce.io/core/release/reference/index.html).
191+
For more details on setting specific timeouts, see the [Lettuce reference guide](https://redis.github.io/lettuce/).
189192
{{% /alert %}}
190193

191194
Below is an example of setting socket-level timeouts. The `TCP_USER_TIMEOUT` setting is useful for scenarios where the server stops responding without acknowledging the last request, while the `KEEPALIVE` setting is good for detecting dead connections where there is no traffic between the client and the server.
@@ -228,6 +231,7 @@ try (RedisClient client = RedisClient.create(redisURI)) {
228231
```
229232

230233
### Connection pooling
234+
231235
A typical approach with Lettuce is to create a single `RedisClient` instance and reuse it to establish connections to your Redis server(s).
232236
These connections are multiplexed; that is, multiple commands can be run concurrently over a single or a small set of connections, making explicit pooling less practical.
233237

@@ -300,6 +304,6 @@ java.security.Security.setProperty("networkaddress.cache.negative.ttl", "0");
300304

301305
## Learn more
302306

303-
- [Lettuce reference documentation](https://lettuce.io/docs/)
307+
- [Lettuce reference documentation](https://redis.github.io/lettuce/)
304308
- [Redis commands]({{< relref "/commands" >}})
305309
- [Project Reactor](https://projectreactor.io/)

content/embeds/r7.2-migration-guides.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
### Migration guides for certain clients
22

3-
If you are using [Go-Redis](https://redis.uptrace.dev/) v9 or [Lettuce](https://lettuce.io/) v6+, which by default switch to the RESP3 protocol, and you are running Redis Stack commands, please make sure the protocol version is pinned to RESP2 prior to upgrading to Redis version 7.2.
3+
If you are using [Go-Redis](https://redis.uptrace.dev/) v9 or [Lettuce](https://redis.github.io/lettuce/) v6+, which by default switch to the RESP3 protocol, and you are running Redis Stack commands, please make sure the protocol version is pinned to RESP2 prior to upgrading to Redis version 7.2.
44

55
#### Go-Redis
66

content/operate/rs/references/compatibility/resp.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -109,7 +109,7 @@ To change `resp3_default` to `disabled`, use one of the following methods:
109109
110110
## Client prerequisites for Redis 7.2 upgrade
111111
112-
The Redis clients [Go-Redis](https://redis.uptrace.dev/) version 9 and [Lettuce](https://lettuce.io/) versions 6 and later use RESP3 by default. If you use either client to run Redis Stack commands, you should set the client's protocol version to RESP2 before upgrading your database to Redis version 7.2 to prevent potential application issues due to RESP3 breaking changes.
112+
The Redis clients [Go-Redis](https://redis.uptrace.dev/) version 9 and [Lettuce](https://redis.github.io/lettuce/) versions 6 and later use RESP3 by default. If you use either client to run Redis Stack commands, you should set the client's protocol version to RESP2 before upgrading your database to Redis version 7.2 to prevent potential application issues due to RESP3 breaking changes.
113113
114114
### Go-Redis
115115

content/operate/rs/release-notes/rs-7-2-4-releases/rs-7-2-4-52.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -127,7 +127,7 @@ To use RESP3 with Redis Enterprise:
127127
rladmin tune db db:<ID> resp3 enabled
128128
```
129129

130-
If you run Redis Stack commands with Redis clients [Go-Redis](https://redis.uptrace.dev/) version 9 or [Lettuce](https://lettuce.io/) versions 6 and later, see [client prerequisites](#client-prerequisites-for-redis-72-upgrade) before you upgrade to Redis 7.2 to learn how to prevent potential application issues due to RESP3 breaking changes.
130+
If you run Redis Stack commands with Redis clients [Go-Redis](https://redis.uptrace.dev/) version 9 or [Lettuce](https://redis.github.io/lettuce/) versions 6 and later, see [client prerequisites](#client-prerequisites-for-redis-72-upgrade) before you upgrade to Redis 7.2 to learn how to prevent potential application issues due to RESP3 breaking changes.
131131

132132
#### Sharded pub/sub
133133

@@ -424,7 +424,7 @@ Starting from Redis Enterprise version 7.2, all future 7.2.x upgrades are suppor
424424

425425
#### Client prerequisites for Redis 7.2 upgrade
426426

427-
The Redis clients [Go-Redis](https://redis.uptrace.dev/) version 9 and [Lettuce](https://lettuce.io/) versions 6 and later use RESP3 by default. If you use either client to run Redis Stack commands, you should set the client's protocol version to RESP2 before upgrading your database to Redis version 7.2 to prevent potential application issues due to RESP3 breaking changes.
427+
The Redis clients [Go-Redis](https://redis.uptrace.dev/) version 9 and [Lettuce](https://redis.github.io/lettuce/) versions 6 and later use RESP3 by default. If you use either client to run Redis Stack commands, you should set the client's protocol version to RESP2 before upgrading your database to Redis version 7.2 to prevent potential application issues due to RESP3 breaking changes.
428428
429429
For applications using Go-Redis v9.0.5 or later, set the protocol version to RESP2:
430430

0 commit comments

Comments
 (0)