我是 Kafka 和 Avro 序列化和反序列化的新手。我在 .NET 中有以下类定义
public class Game
{
public string Name { get; set; }
public string Category { get; set; }
public async Task<int> GetPlayCount()
{
return (await new RestService().GetGamesAsync()).Where(result => result.Name == this.Name).Count();
}
}
我有多个生产者,它们为网关生成不同类型的请求。每个请求都有不同的请求参数,这些参数将根据 public class GWRequestData
{
public string GWSerialNumber {get;set;}
public string RequestId {get;set;}
public int ServiceId {get;set;}
public int HandlerId {get;set;}
public object[] RequestParams {get;set;}
}
和 object[]
的组合在 ServiceId
中定义。有一个消费者与网关连接的系统交互,通过它我们可以向网关发送请求。
现在我想为上述数据结构以 HandlerId
文件的形式生成 Avro 模式定义,以便所有 GWRequest 必须由生产者发布在一个主题上。我找不到在 Avro 中定义 .avsc
的任何线索。
感谢您的帮助。