Acest articol este un articol oglindă al traducerii automate, vă rugăm să faceți clic aici pentru a sări la articolul original.

Vedere: 1417|Răspunde: 0

[Sursă] .NET/C# este optimizat cu performanța StackExchange.Redis

[Copiază linkul]
Postat la 2024-12-23 21:37:10 | | | |
Cerințe: În general, dezvoltatorii .NET folosesc biblioteca StackExchange.Redis pentru a citi și scrie operații Redis, iar astăzi am verificat legătura de rețea și am descoperit că biblioteca StackExchange.Redis folosește modul singleton și stabilește de fapt 4 legături TCP lungi cu serverul Redis.

Caută online și găsește internauți care să răspundă"Implicit, fiecare instanță ConnectionMultiplexer din StackExchange.Redis creează cel puțin 2 conexiuni per cache. Unul pentru comenzi de interacțiune și unul pentru publicarea/abonarea mesajelor.

Dacă nu folosești funcția de abonament pub/sub publishing, poți chiar să o dezactivezi pentru a optimiza utilizarea conexiunii.

Folosind comanda CLIENT LIST din serverul Redis, poți vedea toate conexiunile clientului,Înainte de optimizare, figura de mai jos este prezentată



Combinația de steaguri client înseamnă următoarele:

R: conexiunea trebuie închisă cât mai curând
B: Clientul așteaptă într-o operațiune de blocare
c: conexiunea trebuie închisă după scrierea întregului răspuns
d: o cheie monitorizată a fost modificată - EXEC va eșua
e: clientul este exclus din mecanismul de evacuare a clientului
i: clientul așteaptă un VM I/O (depreciat)
M: clientul este un maestru
N: nu există un set specific de steaguri
O: clientul este un client în modul MONITOR
P: clientul este abonat Pub/Sub
r: clientul este în modul doar de citire împotriva unui nod de cluster
S: clientul este o conexiune de nod replică către această instanță
U: Clientul este deblocat
U: clientul este conectat printr-un socket de domeniu Unix
x: clientul se află într-un context MULTI/EXEC
T: Clientul a activat urmărirea cheilor pentru a efectua caching pe partea clientului
T: clientul nu va atinge LRU/LFU al tastelor la care are acces
R: clientul țintă care urmărește clientul este invalid
B: clientul a activat modul de urmărire broadcast
Cum pot dezactiva conexiunile de abonament pentru publicații publicate/subreddituri?

Opțiunea 1

Modifică codul .NET astfel:

Opțiunea 2 (recomandată)

Modificați șirul de conexiune direct astfel:

După ce modificarea este finalizată, rulați din nou programul și puteți vedea că conexiunea de publicare a abonamentului a fost închisă, așa cum se arată în figura următoare:



Înainte: au fost stabilite 4 conexiuni TCP, iar după: 2 conexiuni TCP.

Referință:

Autentificarea cu hyperlink este vizibilă.
Autentificarea cu hyperlink este vizibilă.
Autentificarea cu hyperlink este vizibilă.





Precedent:Criptarea prin obfuscarea codului Angular facilitată
Următor:Cod de testare .NET/C# pentru multiple soluții de metodă principală
Disclaimer:
Tot software-ul, materialele de programare sau articolele publicate de Code Farmer Network sunt destinate exclusiv scopurilor de învățare și cercetare; Conținutul de mai sus nu va fi folosit în scopuri comerciale sau ilegale, altfel utilizatorii vor suporta toate consecințele. Informațiile de pe acest site provin de pe Internet, iar disputele privind drepturile de autor nu au legătură cu acest site. Trebuie să ștergi complet conținutul de mai sus de pe calculatorul tău în termen de 24 de ore de la descărcare. Dacă îți place programul, te rugăm să susții software-ul autentic, să cumperi înregistrarea și să primești servicii autentice mai bune. Dacă există vreo încălcare, vă rugăm să ne contactați prin e-mail.

Mail To:help@itsvse.com