現在、OnMessage イベント ハンドラーの Simple/Advanced Consumer の例に従っていますが、パフォーマンスはかなり貧弱です。(1 分あたり 120,000 メッセージ vs (C++ ライブラリを使用すると 1 分あたり 100 万メッセージ)
ビジー ループを実装して .Consume(TimeSpan) を使用するのではなく、OnMessage イベントを待機することで、メッセージを消費する際の遅延が発生する可能性がありますか?
var config = new Config() { GroupId = "example-csharp-consumer" };
using (var consumer = new EventConsumer(config, "127.0.0.1:9092"))
{
consumer.OnMessage += (obj, msg) =>
{
string text = Encoding.UTF8.GetString(msg.Payload, 0, msg.Payload.Length);
Console.WriteLine($"Topic: {msg.Topic} Partition: {msg.Partition} Offset: {msg.Offset} {text}");
};
consumer.Subscribe(new []{"testtopic"});
consumer.Start();
Console.WriteLine("Started consumer, press enter to stop consuming");
Console.ReadLine();
}