Dit artikel is een spiegelartikel van machinevertaling, klik hier om naar het oorspronkelijke artikel te gaan.

Bekijken: 1417|Antwoord: 0

[Bron] .NET/C# is geoptimaliseerd met de prestaties van StackExchange.Redis

[Link kopiëren]
Geplaatst op 23-12-2024 21:37:10 | | | |
Vereisten: Over het algemeen gebruiken .NET-ontwikkelaars de StackExchange.Redis-bibliotheek om Redis-operaties te lezen en te schrijven, en vandaag controleerde ik de netwerkverbinding en ontdekte dat de StackExchange.Redis-bibliotheek singleton-modus gebruikt en daadwerkelijk vier TCP-lange verbindingen met de Redis-server tot stand brengt.

Zoek online en zoek internetgebruikers om te antwoorden"Standaard maakt elke ConnectionMultiplexer-instantie in StackExchange.Redis minstens 2 verbindingen per cache aan. Eén voor interactiecommando's en één voor het publiceren/abonneren van berichten.

Als je het publicatie/subpubliceer-abonnementsfunctie niet gebruikt, kun je het daadwerkelijk uitschakelen om het gebruik van de verbinding te optimaliseren.

Met het CLIENT LIST-commando in de Redis-server kun je alle clientverbindingen zien,Voor de optimalisatie wordt de onderstaande figuur getoond



De combinatie van de clientvlaggen, betekent het volgende:

A: verbinding wordt zo snel mogelijk gesloten
b: de client wacht in een blokkeringsoperatie
c: verbinding wordt gesloten na het schrijven van het volledige antwoord
d: een bekeken toetsen is aangepast - EXEC zal falen
e: de cliënt wordt uitgesloten van het mechanisme voor uitzetting van de cliënt
i: de cliënt wacht op een VM I/O (verouderd)
M: de klant is een meester
N: geen specifieke vlagset
O: de client is een client in MONITOR-modus
P: de klant is een Pub/Sub-abonnee
r: de client staat in readonly modus tegen een clusterknoop
S: de client is een replica-knoopverbinding met deze instantie
u: de client is gedeblokkeerd
U: de client is verbonden via een Unix-domeinsocket
x: de client bevindt zich in een MULTI/EXEC-context
T: De client heeft sleuteltracking ingeschakeld om client-side caching uit te voeren
T: de client raakt de LRU/LFU van de sleutels die hij benadert niet aan
R: de client tracking target client is ongeldig
B: de client schakelde broadcast-trackingmodus in
Hoe schakel ik abonnementsverbindingen voor publicatie/subpubliceren uit?

Optie 1

Wijzig de .NET-code als volgt:

Optie 2 (aanbevolen)

Wijzig de verbindingsstring direct als volgt:

Na voltooiing van de wijziging voer je het programma opnieuw uit en zie je dat de verbinding met het publiceren van het abonnement is gesloten, zoals weergegeven in de volgende figuur:



Voordat: 4 TCP-verbindingen werden gevestigd, en daarna: 2 TCP-verbindingen.

Referentie:

De hyperlink-login is zichtbaar.
De hyperlink-login is zichtbaar.
De hyperlink-login is zichtbaar.





Vorig:Angular code obfuscatie versleuteling eenvoudig gemaakt
Volgend:.NET/C# testcode voor meerdere Main-methodoplossingen
Disclaimer:
Alle software, programmeermaterialen of artikelen die door Code Farmer Network worden gepubliceerd, zijn uitsluitend bedoeld voor leer- en onderzoeksdoeleinden; De bovenstaande inhoud mag niet worden gebruikt voor commerciële of illegale doeleinden, anders dragen gebruikers alle gevolgen. De informatie op deze site komt van het internet, en auteursrechtconflicten hebben niets met deze site te maken. Je moet bovenstaande inhoud volledig van je computer verwijderen binnen 24 uur na het downloaden. Als je het programma leuk vindt, steun dan de echte software, koop registratie en krijg betere echte diensten. Als er sprake is van een inbreuk, neem dan contact met ons op via e-mail.

Mail To:help@itsvse.com