See artikkel on masintõlke peegelartikkel, palun klõpsake siia, et hüpata algse artikli juurde.

Vaade: 4002|Vastuse: 2

[Allikas] ASP.NET Core (24) põhineb Refit'il, MemoryPack kõrgtasemel kommunikatsioonil

[Kopeeri link]
Postitatud 2023-9-30 22:10:36 | | | |
Nõuded: ASP.NET Core'i mikroteenuste arhitektuuri põhjal on mõned teenused infrastruktuur (põhiteenused), mis peavad sageli suhtlema kindla teenusega, ning kõrge jõudlus ja madal latentsus on eriti olulised.

MemoryPacki protokolli kasutamisel andmete seriaalimiseks on kaks eelist võrreldes JSON-iga: kiire seriaaliseerimine ja väike sisuülekanne, mis parandab jõudlust.

Läbivaatamine:

MessagePack ja protobuf-net jõudluse võrdlusalused
https://www.itsvse.com/thread-10655-1-1.html

.net/c# Xml, Json, Hessian, Protokollipuhvrite serialiseerimise võrdlus
https://www.itsvse.com/thread-4675-1-1.html

Liidest kutsuti 200 000 korda MemoryPacki ja JSONi abil ning tulemused olid järgmised:



MemoryPack võtab 29 895 millisekundit
JSON võtab aega 34 283 millisekundit

Kuna ma olenKohaliku testi puhul pole väga märgatavKui hostidevahelised kõned suurenevad väljad ja andmemaht suureneb, usun, et lõhe on ilmsem.

ASP.NET Core konfiguratsioon toetab MemoryPack protokolli

Kuna objekt serialiseeritakse MemoryPack protokolli abil ja saadetakse seejärel HTTP protokolli kaudu, ASP.NET Core peab toetama MemoryPack protokolli ning luuakse uus MemoryPackInputFormatter klass, on kood järgmine:

Seejärel lisab MvcOptions toe MemoryPack protokollile, kasutades järgmist koodi:

Defineeri transpordiobjekt järgmise UserProfile koodiga:


Kontrolleri meetod lisab liidese järgmise koodiga:

Konsool kasutab HTTP-päringute saatmiseks Refiti

Konsoolirakendus kasutab MemoryPacki objektide serialiseerimiseks ja HTTP-päringute saatmiseks liidestele, kasutades järgmist koodi:

Test on järgmine:



Kui kasutatakse MemoryPackSerializerit objekti serialiseerimiseks, annab järgmine kood vea:


System.Object ei ole selles teenusepakkujas registreeritud

See peaks olema MemoryPacki viga, muudetud järgmiselt:

(Lõpp)





Eelmine:Windows 11 failihalduri tõrge, lahendus on kinni jäänud
Järgmine:.NET/C# uus funktsioonikirje tüüp
 Üürileandja| Postitatud 2023-10-1 08:06:35 |
System.Object ei ole selles teenusepakkujas registreeritud

See probleem on seotud Refitiga, järgmiselt:




 Üürileandja| Postitatud 2024-12-31 21:47:28 |
Laadi fail alla Refitiga, et saada vastusevoog (Märkus:Kogu allalaaditud failivoog ei laadita mällu



Disclaimer:
Kõik Code Farmer Networki poolt avaldatud tarkvara, programmeerimismaterjalid või artiklid on mõeldud ainult õppimiseks ja uurimistööks; Ülaltoodud sisu ei tohi kasutada ärilistel ega ebaseaduslikel eesmärkidel, vastasel juhul kannavad kasutajad kõik tagajärjed. Selle saidi info pärineb internetist ning autoriõiguste vaidlused ei ole selle saidiga seotud. Ülaltoodud sisu tuleb oma arvutist täielikult kustutada 24 tunni jooksul pärast allalaadimist. Kui sulle programm meeldib, palun toeta originaaltarkvara, osta registreerimist ja saa paremaid ehtsaid teenuseid. Kui esineb rikkumist, palun võtke meiega ühendust e-posti teel.

Mail To:help@itsvse.com