Enable Section Summary TOC for small pages
This commit is contained in:
@@ -2,6 +2,7 @@
|
||||
|
||||
[[binders]]
|
||||
= Binder Implementations
|
||||
:page-section-summary-toc: 1
|
||||
|
||||
The following binder implementations are available:
|
||||
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
[[kafka-streams-binder]]
|
||||
= Kafka Streams Binder
|
||||
:page-section-summary-toc: 1
|
||||
|
||||
|
||||
|
||||
@@ -7,4 +7,5 @@ In addition, this guide explains the Kafka Streams binding capabilities of Sprin
|
||||
|
||||
[[apache-kafka-binder]]
|
||||
= Apache Kafka Binder
|
||||
:page-section-summary-toc: 1
|
||||
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
[[admin-client-config-customization]]
|
||||
= Customizing AdminClient Configuration
|
||||
:page-section-summary-toc: 1
|
||||
|
||||
As with consumer and producer config customization above, applications can also customize the configuration for admin clients by providing an `AdminClientConfigCustomizer`.
|
||||
AdminClientConfigCustomizer's configure method provides access to the admin client properties, using which you can define further customization.
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
[[consumer-producer-config-customizer]]
|
||||
= Customizing Consumer and Producer configuration
|
||||
:page-section-summary-toc: 1
|
||||
|
||||
If you want advanced customization of consumer and producer configuration that is used for creating `ConsumerFactory` and `ProducerFactory` in Kafka,
|
||||
you can implement the following customizers.
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
[[custom-kafka-binder-health-indicator]]
|
||||
= Custom Kafka Binder Health Indicator
|
||||
:page-section-summary-toc: 1
|
||||
|
||||
Kafka binder activates a default health indicator when Spring Boot actuator is on the classpath.
|
||||
This health indicator checks the health of the binder and any communication issues with the Kafka broker.
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
[[kafka-error-channels]]
|
||||
= Error Channels
|
||||
:page-section-summary-toc: 1
|
||||
|
||||
Starting with version 1.3, the binder unconditionally sends exceptions to an error channel for each consumer destination and can also be configured to send async producer send failures to an error channel.
|
||||
See https://cloud.spring.io/spring-cloud-static/spring-cloud-stream/current/reference/html/spring-cloud-stream.html#spring-cloud-stream-overview-error-handling[this section on error handling] for more information.
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
[[overview]]
|
||||
= Overview
|
||||
:page-section-summary-toc: 1
|
||||
|
||||
The following image shows a simplified diagram of how the Apache Kafka binder operates:
|
||||
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
[[kafka-tombstones]]
|
||||
= Tombstone Records (null record values)
|
||||
:page-section-summary-toc: 1
|
||||
|
||||
When using compacted topics, a record with a `null` value (also called a tombstone record) represents the deletion of a key.
|
||||
To receive such messages in a Spring Cloud Stream function, you can use the following strategy.
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
[[usage]]
|
||||
= Usage
|
||||
:page-section-summary-toc: 1
|
||||
|
||||
To use Apache Kafka binder, you need to add `spring-cloud-stream-binder-kafka` as a dependency to your Spring Cloud Stream application, as shown in the following example for Maven:
|
||||
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
[[accessing-kafka-streams-metrics]]
|
||||
= Accessing Kafka Streams Metrics
|
||||
:page-section-summary-toc: 1
|
||||
|
||||
Spring Cloud Stream Kafka Streams binder provides Kafka Streams metrics which can be exported through a Micrometer `MeterRegistry`.
|
||||
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
[[manually-starting-kafka-streams-processors]]
|
||||
= Manually starting Kafka Streams processors
|
||||
:page-section-summary-toc: 1
|
||||
|
||||
Spring Cloud Stream Kafka Streams binder offers an abstraction called `StreamsBuilderFactoryManager` on top of the `StreamsBuilderFactoryBean` from Spring for Apache Kafka.
|
||||
This manager API is used for controlling the multiple `StreamsBuilderFactoryBean` per processor in a binder based application.
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
[[overview]]
|
||||
= Overview
|
||||
:page-section-summary-toc: 1
|
||||
|
||||
Spring Cloud Stream includes a binder implementation designed explicitly for https://kafka.apache.org/documentation/streams/[Apache Kafka Streams] binding.
|
||||
With this native integration, a Spring Cloud Stream "processor" application can directly use the
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
[[state-cleanup]]
|
||||
= State Cleanup
|
||||
:page-section-summary-toc: 1
|
||||
|
||||
By default, no local state is cleaned up when the binding is stopped.
|
||||
This is the same behavior effective from Spring Kafka version 2.7.
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
[[kafka-streams-topology-visualization]]
|
||||
= Kafka Streams topology visualization
|
||||
:page-section-summary-toc: 1
|
||||
|
||||
Kafka Streams binder provides the following actuator endpoints for retrieving the topology description using which you can visualize the topology using external tools.
|
||||
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
[[usage]]
|
||||
= Usage
|
||||
:page-section-summary-toc: 1
|
||||
|
||||
For using the Kafka Streams binder, you just need to add it to your Spring Cloud Stream application, using the following maven coordinates:
|
||||
|
||||
|
||||
@@ -3,6 +3,7 @@
|
||||
|
||||
[[spring-cloud-stream-binder-pulsar-reference]]
|
||||
= Spring Cloud Stream Pulsar Binder Reference Guide
|
||||
:page-section-summary-toc: 1
|
||||
Soby Chacko; Chris Bono; Alexander Preuß; Jay Bryant; Christophe Bornet
|
||||
:doctype: book
|
||||
:source-highlighter: prettify
|
||||
@@ -17,4 +18,5 @@ Soby Chacko; Chris Bono; Alexander Preuß; Jay Bryant; Christophe Bornet
|
||||
|
||||
[[reference-guide]]
|
||||
= Reference Guide
|
||||
:page-section-summary-toc: 1
|
||||
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
[[advanced-listener-container-configuration]]
|
||||
= Advanced Listener Container Configuration
|
||||
:page-section-summary-toc: 1
|
||||
|
||||
To set listener container properties that are not exposed as binder or binding properties, add a single bean of type `ListenerContainerCustomizer` to the application context.
|
||||
The binder and binding properties will be set and then the customizer will be called.
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
[[advanced-queue/exchange/binding-configuration]]
|
||||
= Advanced Queue/Exchange/Binding Configuration
|
||||
:page-section-summary-toc: 1
|
||||
|
||||
From time to time, the RabbitMQ team add new features that are enabled by setting some argument when declaring, for example, a queue.
|
||||
Generally, such features are enabled in the binder by adding appropriate properties, but this may not be immediately available in a current version.
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
[[binder-detection]]
|
||||
= Binder Detection
|
||||
:page-section-summary-toc: 1
|
||||
|
||||
Spring Cloud Stream relies on implementations of the Binder SPI to perform the task of connecting (binding) user code to message brokers.
|
||||
Each Binder implementation typically connects to one type of messaging system.
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
[[consumer-groups]]
|
||||
= Consumer Groups
|
||||
:page-section-summary-toc: 1
|
||||
|
||||
While the publish-subscribe model makes it easy to connect applications through shared topics, the ability to scale up by creating multiple instances of a given application is equally important.
|
||||
When doing so, different instances of an application are placed in a competing consumer relationship, where only one of the instances is expected to handle a given message.
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
[[deploying-stream-applications-on-cloudfoundry]]
|
||||
= Deploying Stream Applications on CloudFoundry
|
||||
:page-section-summary-toc: 1
|
||||
|
||||
On CloudFoundry, services are usually exposed through a special environment variable called https://docs.cloudfoundry.org/devguide/deploy-apps/environment-variable.html#VCAP-SERVICES[VCAP_SERVICES].
|
||||
|
||||
@@ -7,6 +8,7 @@ When configuring your binder connections, you can use the values from an environ
|
||||
|
||||
[[binder-implementations]]
|
||||
= Binder Implementations
|
||||
:page-section-summary-toc: 1
|
||||
|
||||
The following is the list of available binder implementations
|
||||
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
[[destination-binders]]
|
||||
= Destination Binders
|
||||
:page-section-summary-toc: 1
|
||||
|
||||
Destination Binders are extension components of Spring Cloud Stream responsible for providing the necessary configuration and implementation to facilitate
|
||||
integration with external messaging systems.
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
[[multiple-binders]]
|
||||
= Multiple Binders on the Classpath
|
||||
:page-section-summary-toc: 1
|
||||
|
||||
When multiple binders are present on the classpath, the application must indicate which binder is to be used for each destination binding.
|
||||
Each binder configuration contains a `META-INF/spring.binders` file, which is a simple properties file, as shown in the following example:
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
[[spring-cloud-stream-overview-application-model]]
|
||||
= Application Model
|
||||
:page-section-summary-toc: 1
|
||||
|
||||
A Spring Cloud Stream application consists of a middleware-neutral core.
|
||||
The application communicates with the outside world by establishing _bindings_ between destinations
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
[[spring-cloud-stream-overview-binder-abstraction]]
|
||||
= The Binder Abstraction
|
||||
:page-section-summary-toc: 1
|
||||
|
||||
Spring Cloud Stream provides Binder implementations for https://github.com/spring-cloud/spring-cloud-stream-binder-kafka[Kafka] and https://github.com/spring-cloud/spring-cloud-stream-binder-rabbit[Rabbit MQ].
|
||||
The framework also includes a test binder for integration testing of your applications as spring-cloud-stream application. See <<Testing>> section for more details.
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
[[spring-cloud-stream-overview-connecting-multiple-application-instances]]
|
||||
= Connecting Multiple Application Instances
|
||||
:page-section-summary-toc: 1
|
||||
|
||||
While Spring Cloud Stream makes it easy for individual Spring Boot applications to connect to messaging systems, the typical scenario for Spring Cloud Stream is the creation of multi-application pipelines, where microservice applications send data to each other.
|
||||
You can achieve this scenario by correlating the input and output destinations of "`adjacent`" applications.
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
[[spring-cloud-stream-overview-instance-index-instance-count]]
|
||||
= Instance Index and Instance Count
|
||||
:page-section-summary-toc: 1
|
||||
|
||||
When scaling up Spring Cloud Stream applications, each instance can receive information about how many other instances of the same application exist and what its own instance index is.
|
||||
Spring Cloud Stream does this through the `spring.cloud.stream.instanceCount` and `spring.cloud.stream.instanceIndex` properties.
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
[[spring-cloud-stream-overview-persistent-publish-subscribe-support]]
|
||||
= Persistent Publish-Subscribe Support
|
||||
:page-section-summary-toc: 1
|
||||
|
||||
Communication between applications follows a publish-subscribe model, where data is broadcast through shared topics.
|
||||
This can be seen in the following figure, which shows a typical deployment for a set of interacting Spring Cloud Stream applications.
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
[[producers-and-consumers]]
|
||||
= Producers and Consumers
|
||||
:page-section-summary-toc: 1
|
||||
|
||||
The following image shows the general relationship of producers and consumers:
|
||||
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
[[provided-messageconverters]]
|
||||
= Provided MessageConverters
|
||||
:page-section-summary-toc: 1
|
||||
|
||||
As mentioned earlier, the framework already provides a stack of `MessageConverters` to handle most common use cases.
|
||||
The following list describes the provided `MessageConverters`, in order of precedence (the first `MessageConverter` that works is used):
|
||||
|
||||
Reference in New Issue
Block a user