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

Vaade: 26039|Vastuse: 2

[Allikas] .net/c# Xml, Json, Hessian, Protokollipuhvrite serialiseerimise võrdlus

[Kopeeri link]
Postitatud 13.04.2018 13:23:31 | | | |
Lühike sissejuhatus

See blogi võrdleb peamiselt Xml, Jsoni, Hessiani ja protokollipuhvrite serialiseerimise ja deserialiseerimise jõudlust, jättes kõrvale Xml-i ja Jsoni põhikontseptsioonid.
Hessian: Hessian on kerge onhttp-i kaugjuhtimise tööriist, mis pakub RMI funktsionaalsust, kasutades binaarset RPC protokolli ja sisseehitatud serialiseerimisvõimalusi.
Protokollipuhvrid: Google'i andmevahetuse formaat, mis on keelest sõltumatu ning kuna tegemist on binaarformaadiga, on see palju kiirem kui xml kasutamine andmevahetuseks ning seda saab kasutada andmesideks hajutatud rakenduste vahel või andmevahetuseks heterogeensetes keskkondades. Tõhusa ja ühilduva binaarse andmeedastuse formaadiga saab seda kasutada paljudes valdkondades, nagu võrguedastus, konfiguratsioonifailid, andmete salvestamine jne. Google pakub Java, C++, Python rakendusi ning nüüd on olemas ka selliste keelte nagu C# rakendused internetis.

Serialiseerimine ja deserialiseerimine

XML: Kasuta .Net-iga kaasas olevat XmlSerializerit.
Json: See kasutab ServiceStack.Texti, mis on jõudluslikum kui Newtonsoft.Json, kuid kiireim peaks olema fastJSON.net.
Hessian: Kasutades HessianCSharp teeki, allalaaditud nugetist.
Protokolli puhvrid: kasutades protobuf-net'i, allalaaditud nugetist.
Järgnevalt on testis kasutatud üksused.

Testmasinas kasutatud i7HQ 2.6HZ protsessor.
Siin on testi tulemused
Serialiseerimine


Deserialiseerimine


Baitide pikkus pärast seriaaliseerimist


Räägime esmalt serialiseerimisest, siin testitakse seda vastavalt 100, 1000, 10000 ja 100000 korda, ordinaaat on lõpetamisaeg, ühik millisekundid, näed, et kui testida 10000 korral, on nelja tüüpi seriaalistamise ajakulu väga väike, kõik 200 millisekundi jooksul, pärast 100000 korda kuni 100000 korda, hakkavad kõik kasvama, kõige hullem on Xml, parim on protokollipuhvrid, aga kui see jääb 10000 korda, Hessian on parem kui protokollipuhvrid.
10 000 deserialiseerimise puhul pole suurt vahet, kuid 10 000 korral näeme juba, et Hessian võtab rohkem aega ja 100 000 korral ületab Hessian otse Xml-i, mis paneb mind alati arvama, et minu koodiga on probleem ja parim jõudlus on ikkagi protokollipuhvrid.
Serialiseeritud baiti pikkus on mõistetavalt Xml-is kõige pikem, sest fail sisaldab palju lõpusilte (),</Name> ja Protocol Buffers on endiselt parim.

Ülaltoodud graafiku põhjal võime peaaegu kiiresti järeldada, et protokollipuhvrid on parim, kuid arvan, et peame seda siiski põhjalikult hindama järgmistest aspektidest:
1. Loetavus: Xml ja Json on pärast seriaaliseerimist mõlemad tekstid ning loetavus on väga hea, näiteks kui keskel on viga, saame vahetatud andmeid hõlpsasti vaadata ja isegi andmeid testimiseks simuleerida; Nii Hessiani kui ka protokollipuhvrid on binaarsed ning sisu on pärast seriaaliseerimist loetamatu, mis mõjutab süsteemi tõrkeotsingut teatud määral.
2. Mitmekülgsus: XML ja JSON on juba vanad andmevahetusformaadid ning need on kaks formaati üldiste süsteemide vaheliseks andmevahetuseks. Nii Hesseni kui ka protokolli puhvrid on suhteliselt ebapopulaarsed ja neid kasutatakse vähem.
3. Mugavus: Hessian on tegelikult täielik RPC raamistik, määratle liides serveri poolel ja rakenda liides, kopeeri liides kliendile. Pärast väikest kodeerimist saame kutsuda serveri poolt nagu lokaalset meetodit, mida teistes kolmes tööriistas pole, ja jõudlus pole halb.





Eelmine:Windows installib .net/c# teenuseprogrammi
Järgmine:StreamReaderi lahendus segaste märkide jaoks failide lugemisel
 Üürileandja| Postitatud 31.08.2023 20:57:23 |
MessagePack ja protobuf-net jõudluse võrdlusalused
https://www.itsvse.com/thread-10655-1-1.html
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