Rumah > pangkalan data > Redis > Analisis grafik model benang Redis

Analisis grafik model benang Redis

WBOY
Lepaskan: 2022-05-25 21:13:41
ke hadapan
2518 orang telah melayarinya

Artikel ini membawakan anda pengetahuan yang berkaitan tentang Redis, yang terutamanya memperkenalkan isu berkaitan tentang model rangkaian Redis ialah satu rangkaian. Mari kita lihat bersama-sama.

Analisis grafik model benang Redis

Pembelajaran yang disyorkan: Tutorial video Redis

Analisis grafik model benang Redis
Redis ialah urutan tunggal, yang memerlukan Untuk memberi perhatian kepada.

Pertama sekali, kami akan mempunyai klien ini sebenarnya menggunakan alat seperti klien redis untuk menyambung ke pelayan redis sebelum kami.
Jika kami mengintegrasikannya ke dalam java kemudian, pelanggan yang sepadan sebenarnya akan disediakan dalam java.

Kemudian kami akan mempunyai pelayan redis, yang sebenarnya merupakan salah satu redis kami Selepas keseluruhan perkhidmatan dimulakan, ia akan mempunyai proses.
Dalam keluaran kami, ia sebenarnya mempunyai dua perkara secara dalaman.

Pertama sekali, ia akan mempunyai pemultipleks, yang telah kami perkenalkan dalam pelajaran sebelumnya. Ia adalah model tanpa penyekat.
Kemudian ia sebenarnya mempunyai pengalokasi acara fail, yang digunakan khas untuk memperuntukkan beberapa acara.

Di bawah ini, ia akan dibahagikan kepada tiga pemproses berbeza, mari kita lihat setiap satu.

Mula-mula ada pengendali respons sambungan, dan akhirnya ada pengendali permintaan arahan, dan ada pengendali balasan arahan.

Bagaimana untuk memahaminya? Mula-mula mari kita lihat pengendali tindak balas sambungan.

Apabila menyambung kepada pemproses tindak balas, salah satu fungsi utamanya adalah untuk mengekalkan pautan dengan pelanggan kami.
Sebaik sahaja salah satu pelayan redis kami dimulakan, kami sebenarnya akan mempunyai acara baca yang digabungkan dengan responder sambungan kami.
Nama penuhnya sebenarnya dipanggil AE_readable. Anda boleh menganggapnya sebagai tanda, ia akan mempunyai acara sedemikian, dan acara ini akan digabungkan dengan pemproses tindak balas sambungan kami.

Akhir sekali, apabila salah seorang pelanggan kami dan pelayan kami akan membuat sambungan, ini sebenarnya bermakna kami menaip klien redis dalam alat baris arahan pada mulanya, yang pastinya diperlukan pada mulanya mewujudkan sambungan dengan pelayan kami. Apabila membuat sambungan, ia sebenarnya akan menghantar bendera baca, yang sebenarnya adalah masa baca Pada masa ini, dalam pelayan redis kami, ia sebenarnya akan mempunyai soket pelayan.

Soket pelayan sebenarnya sepadan dengan salah satu soket pelanggan kami adalah sebahagian daripada kandungan dalam pengaturcaraan rangkaian, dan komunikasi antara mereka adalah soket. Selepas kami berhubung dengan acara seperti baca, kami kemudian akan menyerahkannya kepada pemultipleks kami untuk diproses.
Jika anda serahkan kepadanya untuk diproses, dia sebenarnya tidak menghalangnya, dia akan memasukkannya ke dalam anak panah seperti kita.

Bagi anak panah ini di sini, kita sebenarnya boleh memanggilnya saluran paip, atau kita juga boleh memanggilnya baris gilir. Ia akan dibuang di sini Selepas dibuang, dunia ini sebenarnya akan sampai kepada penghantar acara fail kami. Apabila pengalokasi ini menyedari bahawa ia adalah acara baca, ia akan sepadan dengan pemproses tindak balas sambungan kami, iaitu, menyerahkannya kepadanya untuk diproses.
Ia adalah bacaan yang sepadan antara satu sama lain.
Pada masa ini, ia sebenarnya boleh menunjukkan bahawa pelanggan dan pelayan kami telah mewujudkan sambungan. Selepas sambungan diwujudkan, jika bendera baca ditetapkan, acara ini sebenarnya akan diserahkan kepada pemproses permintaan arahan kami. Jika arahan ini meminta pemproses, anda boleh menganggapnya sebagai permintaan memproses secara khusus, iaitu permintaan. Kemudian pemproses balasan arahan, anda boleh memahaminya sebagai tindak balas, iaitu respons.

Kemudian mungkin kita kena pergi pada sisi pelanggan, contohnya kita kena tetapkan nilai kan? Jika anda menetapkan nilai, sebagai contoh, tetapkan nama ***, ia sebenarnya adalah arahan.
Untuk arahan ini, salah satu jenis dunianya sebenarnya ialah bacaan. Kemudian ia dilemparkan ke pemultipleks melalui soket pelayan Selepas mendapatnya, ia dimasukkan ke dalam baris gilir kami dan kemudian diserahkan kepada penghantar acara fail.

Selepas mendapat penghantar acara fail ini, ia akan membuat penghakiman dan ia akan menilai bahawa acara padanan dibaca. Apabila ia adalah acara baca pada masa ini, pemproses permintaan arahan kami akan diminta untuk memproses arahan kami. Dia akan mengenalinya Dia akan menyedari bahawa yang sekarang adalah nama yang ditetapkan, jadi dia akan melakukan proses. Dia mahu menyimpan kandungan yang ditetapkan oleh pengguna kami dan menyimpan nilai utama ini dalam ingatan kami. Ini sebenarnya adalah pemprosesan permintaan arahan, iaitu permintaan.

Apabila ia diproses, ia kemudiannya akan menetapkan putih, iaitu pengecam bertulis. Jika logo ini ditulis di sini, kita sebenarnya boleh menggunakannya sebagai respons. Kerana selepas salah satu permintaan kita sebenarnya diproses, selepas kita selesai memasukkan arahan, kita mungkin melihat ok, bukan? Jika ini ok, ia sebenarnya bersamaan dengan sekeping kandungan yang ditulis semula kepada kami oleh salah satu pemproses balasan arahan kami. Jadi dia akan menggunakan tanda yang ditulis oleh tulis. Dengan cara ini, salah satu teg bertulis kami sebenarnya akan digabungkan dengan pemproses balasan arahan kami. Bagi penulisan, nama penuhnya sebenarnya adalah jenis acara yang dipanggil AE_writable.

Baiklah, kemudian pada pelanggan kami, kami sebenarnya perlu melakukan tulis balik. Tidak mengapa, atau apabila kami menyoal senarai dan kami ingin memaparkan semua kandungan dalam senarai, ia sebenarnya adalah kes tulis balik. Kami mahu memaparkan kandungan di bahagian bawah konsol, iaitu jenis acara seperti tulis. Ia kemudiannya diserahkan kepada pemultipleks kami dan kemudian dilemparkan ke salah satu baris gilir kami, yang diperuntukkan kepada salah satu penghantar acara fail kami. Kali ini acara web kami akan dipadankan. Acara web dipadankan.

Seterusnya, pemproses balasan arahan kami akan melakukan tulis balik. Ia akan mengambil OK kami, atau nombor senarai yang kami perolehi, kandungan senarai itu, dan sebagainya. Selagi terdapat beberapa kandungan yang perlu dipaparkan, ia akan digunakan sebagai respons, iaitu kandungan respons akan ditulis semula kepada salah seorang pelanggan kami dan dipaparkan pada klien. Dalam keseluruhan model semasa kami, sebenarnya terdapat dua peristiwa berbeza, satu dipanggil boleh dibaca dan satu lagi dipanggil boleh ditulis.

Sudah tentu, apa yang kami sediakan sekarang hanyalah satu pelanggan Jika kami mempunyai berbilang pelanggan, prinsip mereka akan sama. Ini sebenarnya adalah model keluaran benang. Ia mungkin sukar difahami apabila anda mula-mula bersentuhan dengannya, tetapi tidak mengapa. Gambar ini sebenarnya boleh membantu semua orang mendalami niat ini.

Kemudian keseluruhan prosesnya boleh difahami dengan mengikuti apa yang saya katakan. Untuk memudahkan pemahaman semua, kami lukiskan gambar di sini untuk memberi contoh.

Analisis grafik model benang Redis

Andaikan kita mempunyai KTV sekarang, dan KTV ini adalah redis.

Kemudian ramai pelanggan yang ingin menyanyi, pasti ada pekerja dalam KTV kami.
Kategori pertama ialah penyambut tetamu di pintu, dan kategori kedua ialah pengurus lobi.
Penyambut tetamu di pintu sebenarnya adalah pemultipleks, dan pengurus lobi sebenarnya adalah pengedar fail.

Kemudian, pelanggan kami mesti mempunyai beberapa permintaan yang sepadan, atau keperluan yang sepadan Pada masa ini, mereka mesti meminta penyambut tetamu kami di pintu dan membiarkan penyambut tetamu di pintu melakukan beberapa perkara yang mudah.
Mungkin dia ingin melihat jenis aktiviti yang pengguna ingin sertai, sama ada ada kupon, dll.

Kemudian pengambil tempahan di depan pintu, jika yakin pelanggan mahu menyanyi, boleh kata sila pergi ke belakang, ada laluan di belakang. Petikan ini sebenarnya adalah satu barisan anda beratur untuk pergi ke laluan ini. Apabila anda berjalan ke dalam, ia adalah dewan perniagaan untuk keseluruhan KTV kami. Akan ada pengurus lobi di dewan perniagaan Pengurus lobi akan mengendalikan permintaan sebenar daripada salah seorang pelanggan kami.

Kemudian dalam salah satu KTV kami, kami sebenarnya akan mempunyai kotak Setiap kotak akan mengendalikan pengguna dan mengendalikan permintaan yang berbeza daripada pelanggan. Di dalam kotak kami, akan ada tiga wanita muda atau adik lelaki muda, yang akan mengendalikan keperluan yang berbeza untuk pengguna.

Sebagai contoh, yang pertama membuka pintu khusus untuk pelanggan. Tindakan membuka pintu adalah sama dengan mewujudkan pautan antara salah seorang pelanggan kami dan pelepasan. Sekali pintu terbuka, boleh masuk kan? Selepas dia masuk, wanita muda ini tidak lagi bertanggungjawab untuk kerjanya yang sepadan. Dia akan menyerahkannya kepada salah seorang pekerja bawahan kami.

Sebagai contoh, jika pelanggan meminta lagu, orang yang meminta lagu itu akan diminta melakukan beberapa pemprosesan yang sepadan. Penyelesaian kepada masalah ini adalah dengan menghidupkan komputer untuk memesan dan memilih lagu. Selepas memilih lagu, anda perlu membalas kepada pelanggan. Anda ada satu perkara, bukan? Anda juga perlu menyerahkan beberapa mikrofon kepada pelanggan, jadi pada masa ini akan ada pemberitahuan bahawa terdapat seorang wanita muda, dan wanita muda ini akan memberikan mikrofon kepada pelanggan. Anda boleh pergi menyanyi sekarang. Kami telah memesan lagu ini untuk anda.

Pada masa ini, keseluruhan aksi pelanggan meminta lagu dan nyanyian di KTV sebenarnya sudah selesai. Ini sebenarnya sepadan dengan operasi yang dilakukan oleh pelanggan yang kami nyatakan dalam model benang keluaran sebelum ini. Mula-mula, sambungan diwujudkan, kemudian permintaan diproses, dan kemudian salah satu permintaan dijawab. Terdapat tiga langkah secara keseluruhan.

Di kawasan kami, keseluruhan pengurus lobi dan pemberitahuan permintaan lagu mereka sebenarnya dikendalikan secara dalaman oleh kami. Itu berdasarkan salah satu kotak kami. Bagi kotak, dalam redis kita, bolehkah kita menggunakannya sebagai ingatan, kerana operasi seperti penyimpanan dan bacaan dalam redis sebenarnya berdasarkan ingatan. Jadi ia sangat cepat jika ia dalam ingatan.

Jika anda berada di bilik peribadi kami, anda boleh menyanyi di bilik peribadi, memesan buah-buahan, minum bir, dll. Malah, jika semua operasi berdasarkan salah satu kotak dalaman kami, siri tindakannya, dsb., sebenarnya akan diselesaikan dengan cepat.

Ini sebenarnya boleh menjadi pemahaman mudah untuk salah satu model rangkaian kami. Untuk redis kami, ia sebenarnya adalah mod satu benang. Mengapa menggunakan model satu benang sangat pantas?

Sebenarnya, ada dua perkara utama.
Perkara pertama ialah salah seorang penyambut tetamu pintu kami sebenarnya adalah pemultipleks. Bagi pemultipleks ini, ia berdasarkan model tidak menyekat, jadi ia diproses dengan cepat. Ia tidak akan menunggu jawapan satu demi satu kerana mod penyekatan sebelumnya. Kini setelah model seperti pemultipleks IO digunakan, prestasi pemprosesannya sebenarnya sangat, sangat pantas.

Bahagian lain ialah pengurus lobi kami sebenarnya beroperasi berdasarkan ingatan. Untuk operasi ingatan tulen, ia sebenarnya akan menjadi sangat, sangat pantas.

Semestinya selepas menggunakan satu utas, salah satu fungsinya juga telah disebut Jika satu utas digunakan, ia boleh mengelakkan multi-threading. Kerana jika anda mempunyai berbilang urutan, anda boleh menggunakan salah satu suis konteksnya. Setelah ditukar, ia mungkin menyebabkan beberapa masalah. Di samping itu, beberapa kerugian yang sepadan juga boleh dielakkan. Oleh itu, apabila kita menggunakan model batang, konkurensi dan kecekapannya sangat, sangat tinggi.

Pembelajaran yang disyorkan: Tutorial video Redis

Atas ialah kandungan terperinci Analisis grafik model benang Redis. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:csdn.net
Kenyataan Laman Web ini
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
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan