CAP
- CAP docs看到更多详细资料。
- CAP 视频教程,学习如何在项目中集成CAP。
- GitHub源码:https://github.com/dotnetcore/cap
示例代码:https://github.com/dotnetcore/CAP/tree/master/samples
最低配置
CAP至少要你配置一个消息队列和一个事件存储,如果你想快速开始你可以使用下面的配置:
var builder = WebApplication.CreateBuilder(args);builder.Services.AddCap(x =>{x.UseInMemoryMessageQueue(); //配置一个消息队列x.UseInMemoryStorage(); //配置一个事件存储});
自定义配置
在 AddCap 中 CapOptions 对象是用来存储配置相关信息,默认情况下它们都具有一些默认值,有些时候你可能需要自定义。
/// <summary>/// 可用于配置系统的所有选项/// </summary>public class CapOptions{public CapOptions(){//成功消息的过期时间(秒),24*3600 秒(1天后)SucceedMessageExpiredAfter = 24 * 3600;//失败消息的过期时间(秒),15*24*3600 秒(15天后)FailedMessageExpiredAfter = 15 * 24 * 3600;//配置每次重试的间隔时间FailedRetryInterval = 60;//重试的最大次数FailedRetryCount = 50;//消费者线程并行处理消息的线程数ConsumerThreadCount = 1;ProducerThreadCount = 1;Extensions = new List<ICapOptionsExtension>();//用于给消息指定版本来隔离不同版本服务的消息,常用于A/B测试或者多服务版本的场景Version = "v1";//默认的消费者组的名字DefaultGroupName = "cap.queue." + Assembly.GetEntryAssembly()?.GetName().Name.ToLower();//收集器删除已经过期消息的时间间隔CollectorCleaningInterval = 300;UseDispatchingPerGroup = false;}}
