This is an automated email from the ASF dual-hosted git repository.

aaronai pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/rocketmq-clients.git


The following commit(s) were added to refs/heads/master by this push:
     new 493ffbf  Add docs about client id (#202)
493ffbf is described below

commit 493ffbf25e9a811cc3854bdbcb87267cbf5b21dd
Author: Aaron Ai <[email protected]>
AuthorDate: Tue Aug 30 14:05:20 2022 +0800

    Add docs about client id (#202)
---
 docs/design.md | 11 +++++++++++
 1 file changed, 11 insertions(+)

diff --git a/docs/design.md b/docs/design.md
index e38d2d4..a8dad53 100644
--- a/docs/design.md
+++ b/docs/design.md
@@ -49,6 +49,17 @@ There are four types of client.
 * Simple consumer: the simplest consumer, providing methods to receive 
messages and change invisible time for messages.
 * Pull consumer: for streaming, it allows to get route info manually and 
select message queues to bind for pulling message.
 
+### Client Identifier
+
+Client identifier provides indentity information for each client event within 
the same process. A typical client identifier: `macbook-pro@90009@0@2dyeb8lep`, 
which could be divided into 4 parts by the separator `@`.
+
+1. `macbook-pro`: hostname of device;
+2. `90009`: process identifier;
+3. `2`: client index within current process;
+4. `2dyeb8lep`: the unique string within process.
+
+>**Note**: Implementations of client identifier by different languages may 
vary slightly, but the uniqueness is the first principle that must be followed.
+
 ### Message Identifier
 
 Message identifer provides identity information for each message stored in 
broker, which means producer can not get the message identifier until it is 
sent out successfully.

Reply via email to