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

duhengforever pushed a commit to branch develop
in repository https://gitbox.apache.org/repos/asf/rocketmq.git


The following commit(s) were added to refs/heads/develop by this push:
     new 1ef1af6  [ISSUE #3728] docs: Make the 'Uses of keys' entry in the 
document 'Best practices' more complete. (#3729)
1ef1af6 is described below

commit 1ef1af6a995ce61d434af52e2f498c9f3559e7d0
Author: 彭小漪 <[email protected]>
AuthorDate: Sat Jan 8 21:42:03 2022 +0800

    [ISSUE #3728] docs: Make the 'Uses of keys' entry in the document 'Best 
practices' more complete. (#3729)
---
 docs/en/best_practice.md | 13 +++++++++++++
 1 file changed, 13 insertions(+)

diff --git a/docs/en/best_practice.md b/docs/en/best_practice.md
index c50c5df..e9d0ee4 100755
--- a/docs/en/best_practice.md
+++ b/docs/en/best_practice.md
@@ -17,6 +17,19 @@ Since it is a hash index, make sure that the key is as 
unique as possible to avo
    String orderId = "20034568923546";   
    message.setKeys(orderId);   
 ```
+If you have multiple keys for a message, please concatenate them with 
'KEY_SEPARATOR' char, as shown below:
+```java
+   // order id 
+   String orderId = "20034568923546";
+   String otherKey = "19101121210831";
+   String keys = new StringBuilder(orderId)
+           
.append(org.apache.rocketmq.common.message.MessageConst.KEY_SEPARATOR)
+           .append(otherKey).toString();
+   message.setKeys(keys);
+```
+And if you want to query the message, please use `orderId` and `otherKey` to 
query respectively instead of `keys`, 
+because the server will unwrap `keys` with `KEY_SEPARATOR` and create 
corresponding index.
+In the above example, the server will create two indexes, one for `orderId` 
and one for `otherKey`.
 #### 3 Log print
 Print the message log when send success or failed, make sure to print the 
SendResult and key fields. 
 Send messages is successful as long as it does not throw exception. Send 
successful will have multiple states defined in sendResult.

Reply via email to