This is an automated email from the ASF dual-hosted git repository.
liuyu pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/pulsar-site.git
The following commit(s) were added to refs/heads/main by this push:
new 70caae30653 [improve][doc] SEO for Transactions (#683)
70caae30653 is described below
commit 70caae306536082602f2f0c1ca640304d3cfbcd0
Author: Zhang Yuxuan <[email protected]>
AuthorDate: Mon Sep 4 10:40:37 2023 +0800
[improve][doc] SEO for Transactions (#683)
---
docs/txn-advanced-features.md | 1 +
docs/txn-how.md | 23 ++++++++---------------
docs/txn-monitor.md | 1 +
docs/txn-use.md | 7 ++++++-
docs/txn-what.md | 5 +++--
docs/txn-why.md | 3 ++-
6 files changed, 21 insertions(+), 19 deletions(-)
diff --git a/docs/txn-advanced-features.md b/docs/txn-advanced-features.md
index c2f5c6f26b7..8819fcf8fba 100644
--- a/docs/txn-advanced-features.md
+++ b/docs/txn-advanced-features.md
@@ -2,6 +2,7 @@
id: txn-advanced-features
title: Advanced features
sidebar_label: "Advanced features"
+description: Get a comprehensive understanding of advanced features of
transactions in Pulsar.
---
You can use the following advanced features with transactions in Pulsar.
diff --git a/docs/txn-how.md b/docs/txn-how.md
index feae8c4cb01..813bd06abd0 100644
--- a/docs/txn-how.md
+++ b/docs/txn-how.md
@@ -2,6 +2,7 @@
id: txn-how
title: How transactions work?
sidebar_label: "Working principles"
+description: Learn the working principles of transactions in Pulsar.
---
This section describes transaction components and how the components work
together. For the complete design details, see [PIP-31: Transactional
Streaming](https://docs.google.com/document/d/145VYp09JKTw9jAT-7yNyFU255FptB2_B2Fye100ZXDI/edit#heading=h.bm5ainqxosrx).
@@ -42,18 +43,10 @@ The pending acknowledge state is persisted in the pending
acknowledge log (curso
## Data flow
-At a high level, the data flow can be split into several steps:
-
-1. Begin a transaction.
-
-2. Publish messages with a transaction.
-
-3. Acknowledge messages with a transaction.
-
-4. End a transaction.
-
To help you debug or tune the transaction for better performance, review the
following diagrams and descriptions.
+The data flow of a transaction can be split into several steps.
+
### 1. Begin a transaction
Before introducing the transaction in Pulsar, a producer is created and then
messages are sent to brokers and stored in data logs.
@@ -73,7 +66,7 @@ Let's walk through the steps for _beginning a transaction_.
In this stage, the Pulsar client enters a transaction loop, repeating the
`consume-process-produce` operation for all the messages that comprise the
transaction. This is a long phase and is potentially composed of multiple
produce and acknowledgment requests.
-
+
Let's walk through the steps for _publishing messages with a transaction_.
@@ -90,7 +83,7 @@ Let's walk through the steps for _publishing messages with a
transaction_.
In this phase, the Pulsar client sends a request to the transaction
coordinator and a new subscription is acknowledged as a part of a transaction.
-
+
Let's walk through the steps for _acknowledging messages with a transaction_.
@@ -111,7 +104,7 @@ At the end of a transaction, the Pulsar client decides to
commit or abort the tr
When the Pulsar client finishes a transaction, it issues an end transaction
request.
-
+
Let's walk through the steps for _ending the transaction_.
@@ -125,7 +118,7 @@ Let's walk through the steps for _ending the transaction_.
The transaction coordinator starts the process of committing or aborting
messages to all the partitions involved in this transaction.
-
+
Let's walk through the steps for _finalizing a transaction_.
@@ -139,7 +132,7 @@ Let's walk through the steps for _finalizing a transaction_.
The transaction coordinator writes the final transaction status to the
transaction log to complete the transaction.
-
+
Let's walk through the steps for _marking a transaction as COMMITTED or
ABORTED_.
diff --git a/docs/txn-monitor.md b/docs/txn-monitor.md
index a9e2dd38dca..9c9371273d6 100644
--- a/docs/txn-monitor.md
+++ b/docs/txn-monitor.md
@@ -2,6 +2,7 @@
id: txn-monitor
title: How to monitor transactions?
sidebar_label: "Monitoring"
+description: Learn to monitor transactions in Pulsar.
---
You can monitor the status of the transactions in Prometheus and Grafana using
the [transaction metrics](/reference-metrics.md#pulsar-transaction).
diff --git a/docs/txn-use.md b/docs/txn-use.md
index 08f5baa163c..61965ffd535 100644
--- a/docs/txn-use.md
+++ b/docs/txn-use.md
@@ -2,6 +2,7 @@
id: txn-use
title: Get started
sidebar_label: "Get started"
+description: Get started to use Pulsar transaction API.
---
Pulsar transaction is primarily a server-side and protocol-level feature. This
tutorial guides you through every step of how to use the [Pulsar transaction
API](/api/admin/) to send and receive messages in a Java client.
@@ -17,7 +18,11 @@ Currently, [Pulsar transaction API](/api/admin/) is
available in **Pulsar 2.8.0
## Steps
-1. Enable transactions. You can set the following configurations in the
[`broker.conf`](https://github.com/apache/pulsar/blob/master/conf/broker.conf)
or
[`standalone.conf`](https://github.com/apache/pulsar/blob/master/conf/standalone.conf)
file.
+To use Pulsar transaction API, complete the following steps.
+
+1. Enable transactions.
+
+ You can set the following configurations in the
[`broker.conf`](https://github.com/apache/pulsar/blob/master/conf/broker.conf)
or
[`standalone.conf`](https://github.com/apache/pulsar/blob/master/conf/standalone.conf)
file.
```conf
//mandatory configuration, used to enable transaction coordinator
diff --git a/docs/txn-what.md b/docs/txn-what.md
index aaf832f9613..5432733fa26 100644
--- a/docs/txn-what.md
+++ b/docs/txn-what.md
@@ -2,9 +2,10 @@
id: txn-what
title: What are transactions?
sidebar_label: "Concept"
+escription: Get a comprehensive understanding of transactions in Pulsar.
---
-Transactions strengthen the message delivery semantics of Apache Pulsar and
[processing guarantees of Pulsar
Functions](functions-concepts.md#processing-guarantees-and-subscription-types).
The Pulsar Transaction API supports atomic writes and acknowledgments across
multiple topics.
+Transactions strengthen the message delivery semantics of Apache Pulsar and
[processing guarantees of Pulsar
Functions](functions-concepts.md#processing-guarantees-and-subscription-types).
The Pulsar transaction API supports atomic writes and acknowledgments across
multiple topics.
Transactions allow:
@@ -42,7 +43,7 @@ Stream processing on Pulsar is a `consume-process-produce`
operation on Pulsar t
* `Produce`: a sink operator that runs a Pulsar producer writes the resulting
messages to one or multiple Pulsar topics.
-
+
Pulsar transactions support end-to-end exactly-once stream processing, which
means messages are not lost from a source operator and messages are not
duplicated to a sink operator.
diff --git a/docs/txn-why.md b/docs/txn-why.md
index 7c9348eb3ad..0fbc77b1406 100644
--- a/docs/txn-why.md
+++ b/docs/txn-why.md
@@ -2,6 +2,7 @@
id: txn-why
title: Why transactions?
sidebar_label: "Why transactions?"
+description: Learn the use cases and limitations of transactions in Pulsar.
---
Pulsar transactions (txn) enable event streaming applications to consume,
process, and produce messages in one atomic operation. The reason for
developing this feature can be summarized as below.
@@ -15,7 +16,7 @@ produces the result as a message B (B = f(A)), then
exactly-once processing
guarantee means that A can only be marked as consumed if and only if B is
successfully produced, and vice versa.
-
+
The Pulsar transactions API strengthens the message delivery semantics and the
processing guarantees for stream processing. It enables stream processing
applications to consume, process, and produce messages in one atomic operation.
That means, a batch of messages in a transaction can be received from, produced
to and acknowledged by many topic partitions. All the operations involved in a
transaction succeed or fail as one single unit.