Rumah  >  Artikel  >  pangkalan data  >  Pengenalan dan pelaksanaan fungsi terbitkan dan langgan Redis

Pengenalan dan pelaksanaan fungsi terbitkan dan langgan Redis

WBOY
WBOYasal
2023-05-10 20:55:342531semak imbas

Redis ialah sistem storan struktur data dalam memori sumber terbuka yang popular yang menyokong pelbagai struktur data, termasuk rentetan, cincang, senarai, set dan set tersusun. Sebagai tambahan kepada struktur data asas ini, Redis juga menyediakan banyak fungsi lanjutan, salah satunya ialah fungsi terbitkan dan langgan. Artikel ini akan memperkenalkan fungsi terbitkan dan langgan Redis, termasuk prinsip asasnya dan cara melaksanakannya dalam Redis.

1. Prinsip asas penerbitan dan langgan Redis

Terbitkan dan langgan ialah model pemesejan di mana penerbit tidak menghantar mesej terus kepada pelanggan, tetapi menghantar mesej ke saluran (saluran) . Pelanggan mendengar saluran tertentu untuk mendapatkan mesej yang dihantar oleh penerbit. Dalam Redis, model ini dipanggil publish-subscribe.

Di Redis, penerbit menghantar mesej ke saluran tertentu dan saluran ini dilanggan oleh pelanggan. Apabila penerbit menghantar mesej ke saluran, semua pelanggan saluran akan menerima mesej tersebut. Model ini berguna untuk aplikasi dengan keperluan masa nyata yang tinggi, seperti bilik sembang dan analisis data masa nyata.

2. Pelaksanaan penerbitan dan langgan Redis

Redis menyediakan beberapa arahan untuk menyokong model penerbitan dan langganan. Mari kita lihat penggunaan dan pelaksanaan khusus bagi arahan ini.

  1. Arahan PUBLISH

Arahan PUBLISH digunakan untuk menghantar mesej ke saluran yang ditentukan. Sintaksnya adalah seperti berikut:

TERBITKAN mesej saluran

di mana saluran ialah nama saluran dan mesej ialah mesej yang akan dihantar. Contohnya, untuk menghantar mesej ke saluran bernama "berita", anda boleh menggunakan arahan berikut:

TERBITKAN berita "Hello, dunia!"

  1. Arahan LANGGAN

Arahan LANGGAN digunakan untuk melanggan satu atau lebih saluran. Sintaksnya adalah seperti berikut:

LANGGAN saluran [saluran …]

Sebagai contoh, untuk melanggan dua saluran bernama "berita" dan "cuaca", anda boleh menggunakan arahan berikut:

LANGGAN cuaca berita

Apabila mesej baharu diterbitkan ke mana-mana saluran yang dilanggan, Redis akan menghantar mesej itu kepada pelanggan dan pelanggan boleh memproses mesej itu.

  1. Arahan NYAHLANGGAN

Arahan NYAHLANGGAN digunakan untuk menyahlanggan satu atau lebih saluran. Sintaksnya adalah seperti berikut:

NYAH LANGGAN [saluran [saluran …]]

Sebagai contoh, untuk berhenti melanggan saluran bernama "berita", anda boleh menggunakan arahan berikut:

NYAHKAN LANGGAN berita

Apabila pelanggan menyahlanggan saluran, Redis tidak akan menghantar mesej untuk saluran itu lagi.

  1. Arahan PLANGGAN

Arahan PLANGGAN digunakan untuk melanggan satu atau lebih saluran melalui corak. Sintaksnya adalah seperti berikut:

PLAT LANGGAN [corak …]

Di mana, corak ialah ungkapan kad bebas, contohnya, "berita.*" boleh memadankan semua saluran yang namanya bermula dengan "berita .".

  1. Arahan PUNSUBSCRIBE

Arahan PUNSUBSCRIBE digunakan untuk membatalkan satu atau lebih saluran yang dilanggan melalui mod. Sintaksnya adalah seperti berikut:

PUNSUBSCRIBE [corak [corak …]]

Contohnya, untuk berhenti melanggan corak bernama "berita." dan "cuaca." Saluran , anda boleh menggunakan arahan berikut:

PUNSUBSCRIBE berita. cuaca.

Apabila pelanggan melanggan saluran menggunakan corak, Redis akan memadankan semua nama saluran yang memuaskan ungkapan kad bebas , dan kemudian hantar mesej daripada saluran ini kepada pelanggan.

3. Contoh penerbitan dan langgan Redis

Berikut ialah contoh mudah yang menunjukkan cara menggunakan model penerbitan dan langganan Redis.

  1. Buka dua tetingkap konsol dan sambung ke pelayan Redis masing-masing:

redis-cli

  1. Gunakan dalam tetingkap pertama arahan LANGGAN melanggan ke saluran bernama "news":

SUBSCRIBE news

  1. Gunakan arahan PUBLISH dalam tetingkap kedua untuk menghantar mesej ke saluran bernama "news" Mesej:

TERBITKAN berita "Helo, dunia!"

  1. Anda boleh melihat dalam tetingkap pertama bahawa mesej telah diterima:

1) "message"
2) "news"
3) "Hello, world!"

Dalam contoh ini, kami membuat langganan saluran bernama "news" Subscriber dan kemudian menggunakan arahan PUBLISH dalam tetingkap lain untuk menghantar mesej kepada saluran. Selepas pelanggan menerima mesej, cetaknya ke konsol.

Kesimpulan

Artikel ini memperkenalkan fungsi penerbitan dan langganan Redis, termasuk prinsip asas dan kaedah pelaksanaannya dalam Redis. Berbanding dengan baris gilir mesej lain, fungsi penerbitan dan langgan Redis adalah sangat mudah, mudah digunakan dan dilaksanakan, serta mempunyai kelebihan daya pemprosesan tinggi dan kependaman rendah. Dengan menggunakan fungsi terbitkan-langganan Redis, anda boleh membina aplikasi masa nyata yang berkuasa dengan mudah, seperti bilik sembang, pemprosesan data masa nyata, dsb.

Atas ialah kandungan terperinci Pengenalan dan pelaksanaan fungsi terbitkan dan langgan Redis. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn