From 76dfaf0b6f2cf414220fca3792f974624554c16d Mon Sep 17 00:00:00 2001 From: Nikita Koksharov Date: Wed, 18 Dec 2024 13:57:02 +0300 Subject: [PATCH] docs updated --- docs/configuration.md | 105 +++++++++++++++----- docs/data-and-services/publish-subscribe.md | 29 +++++- docs/integration-with-spring.md | 1 + docs/observability.md | 2 +- 4 files changed, 107 insertions(+), 30 deletions(-) diff --git a/docs/configuration.md b/docs/configuration.md index dea36d593..de272c296 100644 --- a/docs/configuration.md +++ b/docs/configuration.md @@ -451,11 +451,17 @@ Default value: `null` Defines array of allowed SSL protocols. Example values: `TLSv1.3`, `TLSv1.2`, `TLSv1.1`, `TLSv1` -**sslEnableEndpointIdentification** -Default value: `true` +**sslVerificationMode** + +Default value: `STRICT` + +Defines SSL verification mode, which prevents man-in-the-middle attacks. + +Available values: -Enables SSL endpoint identification during handshaking, which prevents -man-in-the-middle attacks. +* `NONE` - No SSL certificate verification +* `CA_ONLY` - Validate the certificate chain but ignore hostname verification +* `STRICT` - Complete validation of the certificate chain and hostname **sslProvider** Default value: `JDK` @@ -783,11 +789,18 @@ Default value: `null` Defines array of allowed SSL protocols. Example values: `TLSv1.3`, `TLSv1.2`, `TLSv1.1`, `TLSv1` -**sslEnableEndpointIdentification** -Default value: `true` +**sslVerificationMode** + +Default value: `STRICT` -Enables SSL endpoint identification during handshaking, which prevents man-in-the-middle attacks. +Defines SSL verification mode, which prevents man-in-the-middle attacks. + +Available values: +* `NONE` - No SSL certificate verification +* `CA_ONLY` - Validate the certificate chain but ignore hostname verification +* `STRICT` - Complete validation of the certificate chain and hostname + **sslProvider** Default value: `JDK` @@ -1006,11 +1019,18 @@ Default value: `null` Defines array of allowed SSL protocols. Example values: `TLSv1.3`, `TLSv1.2`, `TLSv1.1`, `TLSv1` -**sslEnableEndpointIdentification** -Default value: `true` +**sslVerificationMode** + +Default value: `STRICT` -Enables SSL endpoint identification during handshaking, which prevents man-in-the-middle attacks. +Defines SSL verification mode, which prevents man-in-the-middle attacks. + +Available values: +* `NONE` - No SSL certificate verification +* `CA_ONLY` - Validate the certificate chain but ignore hostname verification +* `STRICT` - Complete validation of the certificate chain and hostname + **sslProvider** Default value: `JDK` @@ -1311,11 +1331,18 @@ Default value: `null` Defines array of allowed SSL protocols. Example values: `TLSv1.3`, `TLSv1.2`, `TLSv1.1`, `TLSv1` -**sslEnableEndpointIdentification** -Default value: `true` +**sslVerificationMode** + +Default value: `STRICT` -Enables SSL endpoint identification during handshaking, which prevents man-in-the-middle attacks. +Defines SSL verification mode, which prevents man-in-the-middle attacks. + +Available values: +* `NONE` - No SSL certificate verification +* `CA_ONLY` - Validate the certificate chain but ignore hostname verification +* `STRICT` - Complete validation of the certificate chain and hostname + **sslProvider** Default value: `JDK` @@ -1607,11 +1634,18 @@ Default value: `null` Defines array of allowed SSL protocols. Example values: `TLSv1.3`, `TLSv1.2`, `TLSv1.1`, `TLSv1` -**sslEnableEndpointIdentification** -Default value: `true` +**sslVerificationMode** + +Default value: `STRICT` -Enables SSL endpoint identification during handshaking, which prevents man-in-the-middle attacks. +Defines SSL verification mode, which prevents man-in-the-middle attacks. + +Available values: +* `NONE` - No SSL certificate verification +* `CA_ONLY` - Validate the certificate chain but ignore hostname verification +* `STRICT` - Complete validation of the certificate chain and hostname + **sslProvider** Default value: `JDK` @@ -1882,11 +1916,18 @@ Default value: `null` Defines array of allowed SSL protocols. Example values: `TLSv1.3`, `TLSv1.2`, `TLSv1.1`, `TLSv1` -**sslEnableEndpointIdentification** -Default value: `true` +**sslVerificationMode** + +Default value: `STRICT` -Enables SSL endpoint identification during handshaking, which prevents man-in-the-middle attacks. +Defines SSL verification mode, which prevents man-in-the-middle attacks. + +Available values: +* `NONE` - No SSL certificate verification +* `CA_ONLY` - Validate the certificate chain but ignore hostname verification +* `STRICT` - Complete validation of the certificate chain and hostname + **sslProvider** Default value: `JDK` @@ -2207,11 +2248,18 @@ Default value: `null` Defines array of allowed SSL protocols. Example values: `TLSv1.3`, `TLSv1.2`, `TLSv1.1`, `TLSv1` -**sslEnableEndpointIdentification** -Default value: `true` +**sslVerificationMode** + +Default value: `STRICT` -Enables SSL endpoint identification during handshaking, which prevents man-in-the-middle attacks. +Defines SSL verification mode, which prevents man-in-the-middle attacks. + +Available values: +* `NONE` - No SSL certificate verification +* `CA_ONLY` - Validate the certificate chain but ignore hostname verification +* `STRICT` - Complete validation of the certificate chain and hostname + **sslProvider** Default value: `JDK` @@ -2542,11 +2590,18 @@ Default value: `null` Defines array of allowed SSL protocols. Example values: `TLSv1.3`, `TLSv1.2`, `TLSv1.1`, `TLSv1` -**sslEnableEndpointIdentification** -Default value: `true` +**sslVerificationMode** + +Default value: `STRICT` -Enables SSL endpoint identification during handshaking, which prevents man-in-the-middle attacks. +Defines SSL verification mode, which prevents man-in-the-middle attacks. + +Available values: +* `NONE` - No SSL certificate verification +* `CA_ONLY` - Validate the certificate chain but ignore hostname verification +* `STRICT` - Complete validation of the certificate chain and hostname + **sslProvider** Default value: `JDK` diff --git a/docs/data-and-services/publish-subscribe.md b/docs/data-and-services/publish-subscribe.md index 5668bc865..2749138c6 100644 --- a/docs/data-and-services/publish-subscribe.md +++ b/docs/data-and-services/publish-subscribe.md @@ -73,9 +73,16 @@ Although each Topic instance is cluster-compatible, it can be connected only to * CPU overload on a single node. * Overload of network or data traffic to a single node. -* Interruptions during failover. +* Full interruption of the message flow during failover. + +Topic partitioning addresses these challenges by enabling connections to all nodes in cluster and distributing messages effectively. It brings the following benefits: -Topic partitioning allows to resolve the issues above by connecting to each node and sharding messages between them. Partitions amount is defined through the global [topicSlots](../configuration.md) setting or per instance through `ClusteredTopicOptions.slots()` setting, which overrides the global setting. +* Increases throughput of the topic. +* Minimizes interruptions during failover. +* Lowers CPU and network load on Valkey or Redis nodes. +* Scales the message flow to multiple Valkey or Redis nodes. + +Partitions amount is defined through the global [topicSlots](../configuration.md) setting or per instance through `ClusteredTopicOptions.slots()` setting, which overrides the global setting. Slots definition per instance: ```java @@ -233,7 +240,14 @@ Although each ShardedTopic instance is cluster-compatible, it can be connected o * Overload of network or data traffic to a single node. * Interruptions during failover. -ShardedTopic partitioning allows to resolve the issues above by connecting to each node and sharding messages between them. Partitions amount is defined through the global [topicSlots](../configuration.md) setting or per instance through `ClusteredTopicOptions.slots()` setting, which overrides the global setting. +ShardedTopic partitioning addresses these challenges by enabling connections to all nodes in cluster and distributing messages effectively. It brings the following benefits: + +* Increases throughput of the topic. +* Minimizes interruptions during failover. +* Lowers CPU and network load on Valkey or Redis nodes. +* Scales the message flow to multiple Valkey or Redis nodes. + +Partitions amount is defined through the global [topicSlots](../configuration.md) setting or per instance through `ClusteredTopicOptions.slots()` setting, which overrides the global setting. Slots definition per instance: ```java @@ -338,7 +352,14 @@ Although each ReliableTopic instance is cluster-compatible, it can be connected * Overload of network or data traffic to a single node. * Interruptions during failover. -ReliableTopic partitioning allows to resolve the issues above by connecting to each node and sharding messages between them. Partitions amount is defined through the global [topicSlots](../configuration.md) setting or per instance through `ClusteredTopicOptions.slots()` setting, which overrides the global setting. +ReliableTopic partitioning addresses these challenges by enabling connections to all nodes in cluster and distributing messages effectively. It brings the following benefits: + +* Increases throughput of the topic. +* Minimizes interruptions during failover. +* Lowers CPU and network load on Valkey or Redis nodes. +* Scales the message flow to multiple Valkey or Redis nodes. + +Partitions amount is defined through the global [topicSlots](../configuration.md) setting or per instance through `ClusteredTopicOptions.slots()` setting, which overrides the global setting. Slots definition per instance: ```java diff --git a/docs/integration-with-spring.md b/docs/integration-with-spring.md index 40a3245f7..8a8a799e8 100644 --- a/docs/integration-with-spring.md +++ b/docs/integration-with-spring.md @@ -442,6 +442,7 @@ Compatible with Spring versions below. Spring Cloud Stream | Spring Cloud | Spring Boot -- | -- | -- +4.2.x | 2024.0.x | 3.4.x 4.1.x | 2023.0.x | 3.0.x - 3.3.x 4.0.x | 2022.0.x | 3.0.x - 3.3.x 3.2.x | 2021.0.x | 2.6.x, 2.7.x (Starting with 2021.0.3 of Spring Cloud) diff --git a/docs/observability.md b/docs/observability.md index aad3aa88e..17b4c9099 100644 --- a/docs/observability.md +++ b/docs/observability.md @@ -417,7 +417,7 @@ The following metrics are available: * `redisson.license.active-instances` - A Gauge of the number of active Redisson PRO clients * `redisson.executor-pool-size` - A Gauge of the number of executor threads pool size * `redisson.netty-pool-size` - A Gauge of the number of netty threads pool size -* `netty.eventexecutor.tasks.pending` - Number of pending tasks in Netty event executor +* `redisson.netty-tasks-pending` - A Gauge of pending tasks in Netty event executor **Metrics per Redis or Valkey node**