Is there a concept like kafka routing key in redis streams? We have a number of microservice instances (let say 10) and we intend to create a consumer group, each consumer is one instance. We want messages of instance n will be read/retrieved only when instance n read/subscribe to the stream (based on some criteria in inside the message itself). is it possible?
1
There are 1 best solutions below
Related Questions in REDIS
- start redis with supervisor
- How to do Mass insertion in Redis using JAVA?
- RedisResponseException: Unknown reply on multi-request
- Redis / Get all keys & values from redis with prefix
- Remove a member from multiple sets in Redis
- Using memcached or Redis on aws-elasticache
- Get Socket Object by Id with node, redis-adapter and socket.io
- how can i save a complex json as string in redis and retrieve it as unescaped legit json object
- How to specify versions on PIP when installing a python package with it's dependencies
- Eloquent model for Redis
- Is exists check required before calling StringSet method of StrackExchange.Redis
- Predis: Pros and Cons of the two cluster strategies
- hmset redis with result from mysqlDB
- does redis cluster support transactions ?
- How change redis to be persistent
Related Questions in REDIS-STREAMS
- What order are the messages returned with the xpending command?
- why the rust consumer could not read redis stream data
- the java send entity to redis stream convert to base64
- Redis Streams to store events for millions of users and retrieve them on user login
- Why is Redis source connector not available for Flink?
- Spring Redis Does Not Delete the Stream Entries
- Block until Complete Count
- Redis, XREADGROUP stream with block for a year, stupid?
- Getting int or float response from redis stream and python
- Count or list all ACKnowledged messages in a redis stream
- Are StackExchange.Redis fire-and-forget calls guaranteed to be delivered in order?
- Redis streams how to route messages
- I want a similar data Structure as a Redis list which also have maximum limit on length as like Redis Stream
- XACK is not deleting the message, even if it is processed successfully?
- Use XREADGROUP to get the id specified
Trending Questions
- UIImageView Frame Doesn't Reflect Constraints
- Is it possible to use adb commands to click on a view by finding its ID?
- How to create a new web character symbol recognizable by html/javascript?
- Why isn't my CSS3 animation smooth in Google Chrome (but very smooth on other browsers)?
- Heap Gives Page Fault
- Connect ffmpeg to Visual Studio 2008
- Both Object- and ValueAnimator jumps when Duration is set above API LvL 24
- How to avoid default initialization of objects in std::vector?
- second argument of the command line arguments in a format other than char** argv or char* argv[]
- How to improve efficiency of algorithm which generates next lexicographic permutation?
- Navigating to the another actvity app getting crash in android
- How to read the particular message format in android and store in sqlite database?
- Resetting inventory status after order is cancelled
- Efficiently compute powers of X in SSE/AVX
- Insert into an external database using ajax and php : POST 500 (Internal Server Error)
Popular Questions
- How do I undo the most recent local commits in Git?
- How can I remove a specific item from an array in JavaScript?
- How do I delete a Git branch locally and remotely?
- Find all files containing a specific text (string) on Linux?
- How do I revert a Git repository to a previous commit?
- How do I create an HTML button that acts like a link?
- How do I check out a remote Git branch?
- How do I force "git pull" to overwrite local files?
- How do I list all files of a directory?
- How to check whether a string contains a substring in JavaScript?
- How do I redirect to another webpage?
- How can I iterate over rows in a Pandas DataFrame?
- How do I convert a String to an int in Java?
- Does Python have a string 'contains' substring method?
- How do I check if a string contains a specific word?
There is no way to reserve or route messages to a specific consumer in Redis: once a
XREADGROUPcommand is issued, the returned messages are bound to the specified consumer - which must be specified upfront.With that being said, Redis allows to change the ownership of a message through the
XCLAIMcommand, once it is read. Thanks to that, you could somewhat mimic reservations / routings by having a specialized dispatcher consumer which continuously reads undelivered messages only (by way of theXREADGROUPcommand along with the special ID>) and assigns them through theXCLAIMcommand to the intended target consumer, based on their content. Each regular consumer reads messages delivered to it but still not acknowledged by way of theXREADGROUPcommand along with the starting ID0, processes each message according to the business logic and finallyXACKit to remove it from the PEL.From the referenced documentation:
The target consumers, on the other side, would only read messages assigned to them (and not the undelivered ones) with the
XREADGROUPcommand.