sql >> Database >  >> NoSQL >> Redis

Wat is Redis pubsub en hoe gebruik ik het?

Publiceren/abonneren is een vrij eenvoudig paradigma. Zie het alsof je een talkshow op een radiostation draait. Dat is PUBLICEREN. Je hoopt dat ten minste één of meer mensen je kanaal oppikken om naar je berichten op de radioshow te luisteren (ABONNEER) en misschien zelfs wat dingen te doen, maar je praat niet rechtstreeks met mensen .

Laten we plezier hebben met redis-cli!

redis 127.0.0.1:6379> PUBLISH myradioshow "Good morning everyone!"
(integer) 0
redis 127.0.0.1:6379> PUBLISH myradioshow "How ya'll doin tonight?"
(integer) 0
redis 127.0.0.1:6379> PUBLISH myradioshow "Hello? Is anyone listening? I'm not wearing pants."
(integer) 0

Merk op dat er geen klanten zijn die de berichten op uw "myradioshow"-kanaal ontvangen (dat is de 0 in het antwoord). Niemand luistert. Open nu nog een redis-cli (of laat voor meer plezier een vriend zijn redis-cli openen en verbinding maken met je server) en ABONNEER op het kanaal:

redis 127.0.0.1:6379> SUBSCRIBE myradioshow
Reading messages... (press Ctrl-C to quit)
1) "subscribe"
2) "myradioshow"
3) (integer) 1

Ga terug naar je originele redis-cli en ga verder met je show:

redis 127.0.0.1:6379> PUBLISH myradioshow "Next caller gets a free loaf of bread!"
(integer) 1

Merk je op dat "1" aan het einde? Je hebt een luisteraar! Als magie, in je SUBSCRIBE-d terminal:

1) "message"
2) "myradioshow"
3) "Next caller gets a free loaf of bread!"

Natuurlijk wil je in werkelijkheid waarschijnlijk dingen doen die nuttiger zijn dan je klanten vertellen over je broekloze levensstijl, zoals het starten van evenementen op je server of het uitvoeren van een soort van taken/klussen. Misschien toch niet! :)




  1. Kan mongodb worden gebruikt als een ingesloten database?

  2. Versleuteling gebruiken om uw MongoDB-gegevens te beschermen

  3. Gegevenscompressie inschakelen in MongoDB 3.0

  4. Java Mongodb nummer lange query