Wymagania: Niedawno pojawił się MessagePack, framework serializacyjny, który jest wydajnym formatem serializacji binarnej. Pozwala wymieniać dane między wieloma językami, takimi jak JSON. Ale jest szybszy i mniejszy. Małe liczby całkowite kodowane są jako pojedynczy bajt, a typowy krótki ciąg wymaga tylko jednego dodatkowego bajtu oprócz samego łańcucha.
MessagePack jest obsługiwany przez ponad 50 języków programowania i środowisk. Strona internetowa:Logowanie do linku jest widoczne.
Krótko mówiąc: to narzędzie do serializacji i deserializacji obiektów, podobnie jak Newtonsoft.Json, z tą różnicą, że jest narzędziem do serializacji i deserializacji obiektówWydajność, szybkość i użycie są znacznie wyższe niż w serializacji JSON, a wadą jest słaba czytelność (nie można tego intuicyjnie postrzegać jako treść JSON).。
MessagePack dla C #(.NET, .NET Core, Unity, Xamarin):Logowanie do linku jest widoczne.
Niezwykle szybki serializator MessagePack dla C#. Jest 10 razy szybszy niż MsgPack-Cli i przewyższa inne serializery C#. MessagePack for C# posiada również wbudowane wsparcie dla kompresji LZ4 – niezwykle szybkiego algorytmu kompresji. Wydajność ma znaczenie, zwłaszcza w aplikacjach takich jak gry, rozproszone obliczenia, mikroserwisy czy buforowanie danych.
Wykres porównawczy wyników wygląda następująco:
Benchmark z BenchmarkDotNet dla kodu:
Wymienione pakiety przedstawiają się następująco:
Wyniki testów są następujące:
MessagePack rzeczywiście jest szybszy niż protobuf-net serializacja, deserializacja, ponieważ deserializacja wymaga konwersji heksadecimalnej na bajt[] in, serializacja powinna być szybsza.
(Koniec)
|