public static void Main()
var person = new Person { Name = "John Doe", Age = 30 };
var personProto = new PersonProto { Name = "John Doe", Age = 30 };
byte[] messagePackBytes = MessagePackSerializer.Serialize(person);
Console.WriteLine($"MessagePack Size: {messagePackBytes.Length} bytes");
using var protoStream = new MemoryStream();
Serializer.Serialize(protoStream, personProto);
byte[] protoBytes = protoStream.ToArray();
Console.WriteLine($"Protobuf Size: {protoBytes.Length} bytes");
string jsonText = System.Text.Json.JsonSerializer.Serialize(person);
byte[] jsonBytes = System.Text.Encoding.UTF8.GetBytes(jsonText);
Console.WriteLine($"System.Text.Json Size: {jsonBytes.Length} bytes");
string newtonJson = JsonConvert.SerializeObject(person);
byte[] newtonBytes = System.Text.Encoding.UTF8.GetBytes(newtonJson);
Console.WriteLine($"Newtonsoft.Json Size: {newtonBytes.Length} bytes");
public string Name { get; set; }
public int Age { get; set; }
public string Name { get; set; }
public int Age { get; set; }