12

I have several services in Azure and i would like to sync changes between them using some kind of pub/sub service.

I am looking into Redis and Azure Service Bus.

The data to be synced is very simple - mostly strings up to 100 characters

I would like to know what is the preferred choice for me - or if i am in the right direction..

My requirements are simple:

  1. Low latency - Many small operations
  2. optional - be able to install the solution on-premise and not in Azure
Haim Turjeman
  • 139
  • 1
  • 4
  • This question is off-topic for StackOverflow, as it is very broad and opinion-soliciting. No right answer; just opinions. Also: "high speed and low latency" is wide-open to interpretation, and could possibly be satisfied by either choice. Same goes for "simple enough". No idea what "data is very simple" means. And both solutions are available on-premises. – David Makogon Feb 01 '16 at 02:08
  • 1
    I have edited the question but i still think is on-topic. I would like to hear opinions.. that's the point, learn from others who know better than me and hear all kind of opinions to help me make the right decision. – Haim Turjeman Feb 01 '16 at 02:16
  • 2
    I agree - it can make a lively discussion. But... That's the thing: StackOverflow isn't the place to discuss opinions and have lively discussions. There's no objective answer that can be posted here. And your edits don't make it any less off-topic. – David Makogon Feb 01 '16 at 02:25

1 Answers1

16

Don't use Redis for this. Redis PubSub isn't reliable (it's fire-and-forget). What would happen if no one is listening when Redis publishes a message? It's lost forever, and this means that your services won't be synchronized...

Maybe you didn't hear about Azure Pack. It's not a full Azure on-premises, but it includes Service Bus. It should be no issue if you use it from the public or private cloud.

Note that you might be able to implement reliable messaging using Redis, but not on top of default pubsub.

A possible alternative to both Redis and Service Bus should be RabbitMQ.

Matías Fidemraizer
  • 63,804
  • 18
  • 124
  • 206
  • 1
    This answer could do woth an update since redis supports reliable messaging through streams now. – TSR Aug 29 '22 at 21:57