在好例子网,分享、交流、成长!
您当前所在位置:首页Others 开发实例一般编程问题 → Kafka的C#客户端源码下载

Kafka的C#客户端源码下载

一般编程问题

下载此实例
  • 开发语言:Others
  • 实例大小:0.62M
  • 下载次数:2
  • 浏览次数:14
  • 发布时间:2024-03-22
  • 实例类别:一般编程问题
  • 发 布 人:chenxiaolan
  • 文件格式:.zip
  • 所需积分:2

实例介绍

【实例简介】
kafka-net项目是针对Apache Kafka的原生C#客户端实现。它基于kafka-python库的协议部分,并尝试遵循类似的总体类布局。该项目从处理异步请求的低级KafkaConnection对象开始,一直构建到更高级的Producer/Consumer类。

示例:
var options = new KafkaOptions(new Uri("http://SERVER1:9092"), new Uri("http://SERVER2:9092"));
var router = new BrokerRouter(options);
var client = new Producer(router);

client.SendMessageAsync("TestHarness", new[] { new Message("hello world")}).Wait();

using (client) { }

var options = new KafkaOptions(new Uri("http://SERVER1:9092"), new Uri("http://SERVER2:9092"));
var router = new BrokerRouter(options);
var consumer = new Consumer(new ConsumerOptions("TestHarness", router));

foreach (var message in consumer.Consume())
{
    Console.WriteLine("Response: P{0},O{1} : {2}", 
        message.Meta.PartitionId, message.Meta.Offset, message.Value);  
}

该项目是一个正在进行中的作品,包含完整的Producer和Consumer类,因此可以实现与Kafka服务器的消息传递。目前,该项目支持.NET Framework 4.5,并且仅实现了Gzip压缩。
【实例截图】
【核心代码】
文件清单
└── kafka-net-c9bbbe61fd519da5a8a7fcb99035bf2cbc5940d3
    ├── LICENSE
    ├── README.md
    └── src
        ├── kafka-net
        │   ├── BrokerRouter.cs
        │   ├── Common
        │   │   ├── AsyncCollection.cs
        │   │   ├── AsyncLock.cs
        │   │   ├── AsyncManualResetEvent.cs
        │   │   ├── BigEndianBinaryReader.cs
        │   │   ├── BigEndianBinaryWriter.cs
        │   │   ├── ConcurrentCircularBuffer.cs
        │   │   ├── Crc32Provider.cs
        │   │   ├── Extensions.cs
        │   │   ├── KafkaMessagePacker.cs
        │   │   └── ScheduledTimer.cs
        │   ├── Consumer.cs
        │   ├── Default
        │   │   ├── ConsoleLog.cs
        │   │   ├── DefaultKafkaConnectionFactory.cs
        │   │   ├── DefaultPartitionSelector.cs
        │   │   └── DefaultTraceLog.cs
        │   ├── Interfaces
        │   │   ├── IBrokerRouter.cs
        │   │   ├── IKafkaConnection.cs
        │   │   ├── IKafkaConnectionFactory.cs
        │   │   ├── IKafkaLog.cs
        │   │   ├── IKafkaRequest.cs
        │   │   ├── IKafkaTcpSocket.cs
        │   │   ├── IMetadataQueries.cs
        │   │   └── IPartitionSelector.cs
        │   ├── KafkaConnection.cs
        │   ├── KafkaMetadataProvider.cs
        │   ├── kafka-net.csproj
        │   ├── kafka-net.nuspec
        │   ├── KafkaTcpSocket.cs
        │   ├── MetadataQueries.cs
        │   ├── Model
        │   │   ├── BrokerRoute.cs
        │   │   ├── ConsumerOptions.cs
        │   │   ├── KafkaEndpoint.cs
        │   │   └── KafkaOptions.cs
        │   ├── Producer.cs
        │   ├── Properties
        │   │   └── AssemblyInfo.cs
        │   ├── Protocol
        │   │   ├── BaseRequest.cs
        │   │   ├── Broker.cs
        │   │   ├── ConsumerMetadataRequest.cs
        │   │   ├── FetchRequest.cs
        │   │   ├── Message.cs
        │   │   ├── MetadataRequest.cs
        │   │   ├── OffsetCommitRequest.cs
        │   │   ├── OffsetFetchRequest.cs
        │   │   ├── OffsetRequest.cs
        │   │   ├── ProduceRequest.cs
        │   │   ├── Protocol.cs
        │   │   └── Topic.cs
        │   └── Statistics
        │       └── StatisticsTracker.cs
        ├── kafka-net.nuspec
        ├── kafka-net.sln
        ├── kafka-tests
        │   ├── App.config
        │   ├── Fakes
        │   │   ├── BrokerRouterProxy.cs
        │   │   ├── FakeBrokerRouter.cs
        │   │   ├── FakeKafkaConnection.cs
        │   │   └── FakeTcpServer.cs
        │   ├── Helpers
        │   │   ├── IntegrationConfig.cs
        │   │   ├── MessageHelper.cs
        │   │   └── TaskTest.cs
        │   ├── Integration
        │   │   ├── GzipProducerConsumerTests.cs
        │   │   ├── KafkaConnectionIntegrationTests.cs
        │   │   ├── KafkaMetadataProviderUnitTests.cs
        │   │   ├── OffsetManagementTests.cs
        │   │   ├── ProducerConsumerIntegrationTests.cs
        │   │   └── ProducerIntegrationTests.cs
        │   ├── kafka-tests.csproj
        │   ├── packages.config
        │   ├── Properties
        │   │   └── AssemblyInfo.cs
        │   ├── RequestFactory.cs
        │   └── Unit
        │       ├── AsyncCollectionTests.cs
        │       ├── AsyncLockTests.cs
        │       ├── BigEndianBinaryReaderTests.cs
        │       ├── BigEndianBinaryWriterTests.cs
        │       ├── BrokerRouterTests.cs
        │       ├── CircularBufferTests.cs
        │       ├── ConsumerTests.cs
        │       ├── DefaultPartitionSelectorTests.cs
        │       ├── FakeTcpServerTests.cs
        │       ├── KafkaConnectionTests.cs
        │       ├── KafkaEndpointTests.cs
        │       ├── KafkaMetadataProviderTests.cs
        │       ├── KafkaTcpSocketTests.cs
        │       ├── MetadataQueriesTests.cs
        │       ├── ProducerTests.cs
        │       ├── ProtocolBaseRequestTests.cs
        │       ├── ProtocolMessageTests.cs
        │       ├── ProtocolTests.cs
        │       └── ScheduleTimerTests.cs
        ├── StatisticsTestLoader
        │   ├── Configuration.cs
        │   ├── ConsoleLogger.cs
        │   ├── DestinationKafka.cs
        │   ├── IRecordSource.cs
        │   ├── KafkaRecord.cs
        │   ├── packages.config
        │   ├── Program.cs
        │   ├── Properties
        │   │   └── AssemblyInfo.cs
        │   ├── SourcePropertyChanges.cs
        │   └── StatisticsTestLoader.csproj
        └── TestHarness
            ├── App.config
            ├── packages.config
            ├── Program.cs
            ├── Properties
            │   └── AssemblyInfo.cs
            └── TestHarness.csproj

20 directories, 105 files

网友评论

发表评论

(您的评论需要经过审核才能显示)

查看所有0条评论>>

小贴士

感谢您为本站写下的评论,您的评论对其它用户来说具有重要的参考价值,所以请认真填写。

  • 类似“顶”、“沙发”之类没有营养的文字,对勤劳贡献的楼主来说是令人沮丧的反馈信息。
  • 相信您也不想看到一排文字/表情墙,所以请不要反馈意义不大的重复字符,也请尽量不要纯表情的回复。
  • 提问之前请再仔细看一遍楼主的说明,或许是您遗漏了。
  • 请勿到处挖坑绊人、招贴广告。既占空间让人厌烦,又没人会搭理,于人于己都无利。

关于好例子网

本站旨在为广大IT学习爱好者提供一个非营利性互相学习交流分享平台。本站所有资源都可以被免费获取学习研究。本站资源来自网友分享,对搜索内容的合法性不具有预见性、识别性、控制性,仅供学习研究,请务必在下载后24小时内给予删除,不得用于其他任何用途,否则后果自负。基于互联网的特殊性,平台无法对用户传输的作品、信息、内容的权属或合法性、安全性、合规性、真实性、科学性、完整权、有效性等进行实质审查;无论平台是否已进行审查,用户均应自行承担因其传输的作品、信息、内容而可能或已经产生的侵权或权属纠纷等法律责任。本站所有资源不代表本站的观点或立场,基于网友分享,根据中国法律《信息网络传播权保护条例》第二十二与二十三条之规定,若资源存在侵权或相关问题请联系本站客服人员,点此联系我们。关于更多版权及免责申明参见 版权及免责申明

;
报警