|
|
Közzétéve: 2023-9-30 22:10:36
|
|
|
|

Követelmények: A ASP.NET Core által használt mikroszolgáltatás architektúrája alapján néhány szolgáltatás infrastruktúra (alap szolgáltatások), amelyeknek gyakran kell kommunikálniuk egy adott szolgáltatással, és a nagy teljesítmény és az alacsony késleltetés különösen fontos.
A MemoryPack protokoll használatával az adatok sorializálása két előnnyel bír a JSON használatával szemben: gyors serializáció és kis tartalomátvitel, ami javítja a teljesítményt.
Szemle:
Az interfészt 200 000-szer hívták MemoryPack és JSON segítségével, és az eredmények a következők voltak:
A MemoryPack 29 895 milliszekundumot igényel A JSON 34 283 milliszekundumot vesz igénybe
Mivel én vagyokHelyi teszt szerint a különbség nem nagyon észrevehetőAmikor a kereszt-host hívások növekszenek, a mezők és az adatmennyiség nő, úgy gondolom, hogy a szakadék egyre nyilvánvalóbb lesz.
ASP.NET Core konfiguráció támogatja a MemoryPack protokollt
Mivel az objektumot a MemoryPack protokollal szeriázik, majd az HTTP protokollon keresztül továbbítják, ASP.NET a Core-nak támogatnia kell a MemoryPack protokollt, és új MemoryPackInputFormatter osztályt hoznak létre, a kód a következő:
Ezután az MvcOptions támogatja a MemoryPack protokollt a következő kóddal:
Definiáljunk egy szállítóobjektumot a következő UserProfile kóddal:
A vezérlő módszer egy interfészt ad hozzá a következő kóddal:
A konzol a Refitet használja HTTP kérések küldésére
Egy konzolalkalmazás a MemoryPack-et használja objektumok sorializálására és HTTP kérések küldésére interfészekhez, a következő kóddal:
A teszt a következő:
Amikor a MemoryPackSerializer-t használjuk egy objektum serializálására, a következő kód hibát ad:
A System.Object nincs regisztrálva ebben a szolgáltatóban Ez egy MemoryPack hiba kellene legyen, amelyet az alábbiak szerint módosítva:
(Vége)
|
Előző:Windows 11 File Explorer akad, beragadt megoldásKövetkező:.NET/C# új jellemző rekordtípus
|