Apache Kafka®¶
Apache Kafka® is an open-source stream-processing software platform developed by LinkedIn and donated to the Apache Software Foundation, written in Scala and Java.
CAP has supported Kafka® as message transporter.
Configuration¶
To use Kafka transporter, you need to install the following extensions from NuGet:
PM> Install-Package DotNetCore.CAP.Kafka
Then you can add memory-based configuration items to the ConfigureServices method of Startup.cs.
public void ConfigureServices(IServiceCollection services) { // ... services.AddCap(x => { x.UseKafka(opt=>{ //KafkaOptions }); // x.UseXXX ... }); }
Kafka Options¶
The Kafka configuration parameters provided directly by the CAP are as follows:
| NAME | DESCRIPTION | TYPE | DEFAULT |
|---|---|---|---|
| Servers | Broker server address | string | |
| ConnectionPoolSize | connection pool size | int | 10 |
Kafka MainConfig Options¶
If you need more native Kakfa related configuration items, you can set it with the MainConfig configuration option:
services.AddCap(capOptions => { capOptions.UseKafka(kafkaOption=> { // kafka options. // kafkaOptions.MainConfig.Add("", ""); }); });
MainConfig is a configuration dictionary, you can find a list of supported configuration items through the following link.
https://github.com/edenhill/librdkafka/blob/master/CONFIGURATION.md