You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

42 lines
1.9 KiB

//using Confluent.Kafka;
//using System;
//using System.Collections.Generic;
//using System.Text;
//namespace VOL.Core.KafkaManager.IService
//{
// public interface IKafkaConsumer<TKey, TValue> : IDisposable
// {
// /// <summary>
// /// 订阅回调模式-消费(持续订阅)
// /// </summary>
// /// <param name="Func">回调函数,若配置为非自动提交(默认为否),则通过回调函数的返回值判断是否提交</param>
// /// <param name="Topic">主题</param>
// void Consume(Func<ConsumeResult<TKey, TValue>, bool> Func, string Topic);
// /// <summary>
// /// 批量订阅回调模式-消费(持续订阅)
// /// </summary>
// /// <param name="Func">回调函数,若配置为非自动提交(默认为否),则通过回调函数的返回值判断是否提交</param>
// /// <param name="Topics">主题集合</param>
// void ConsumeBatch(Func<ConsumeResult<TKey, TValue>, bool> Func, List<string> Topics);
// /// <summary>
// /// 批量消费模式-单次消费(消费出当前Kafka缓存的所有数据,并持续监听 300ms,如无新数据生产,则返回(最多一次消费 100条)
// /// </summary>
// /// <param name="Topic">主题</param>
// /// <param name="TimeOut">持续监听时间,单位ms 默认值:300ms</param>
// /// <param name="MaxRow">最多单次消费行数 默认值:100行</param>
// /// <returns>待消费数据</returns>
// List<ConsumeResult<TKey, TValue>> ConsumeOnce(string Topic, int TimeOut = 300, int MaxRow = 100);
// /// <summary>
// /// 单笔消费模式-单行消费
// /// </summary>
// /// <param name="Topic">主题</param>
// /// <param name="TimeOut">持续监听时间,单位ms 默认值:300ms</param>
// /// <returns>待消费数据</returns>
// ConsumeResult<TKey, TValue> ConsumeOneRow(string Topic, int TimeOut = 300);
// }
//}