前言:
在发布完:开源:Taurus.DTC 微服务分布式事务框架,支持 .Net 和 .Net Core 双系列版本,之后想想,好像除了事务外,感觉里面多了一个任务发布订阅的基础功能。
本想既然都有了基础发布订阅功能了,那要不要顺带加上延时发布功能呢?加上了会不会让事务组件不纯了?
经过一翻深思,是在其上补上功能,还是,重新写一个组件,起初起名是个难题,因为 DTC 也可以是 Distributed Task Cxxxxx, 组件重名了?
经过一翻英文大作战,找到了:Distributed Task Scheduler,简写可以是DTS了,才开始重启一个组件。
于是就有了这个Taurus.DTS 任务组件,而且功能除了原有的即时任务发布订阅,和本来想加上的延时任务,后面又补上了基于Cron表达式的定时任务,和广播群发任务。
经过一翻大作战,有 Taurus.DTC 的基础代码作底层支持,花了大几天,解决了各种疑难杂症之后,终于出来了。
1、开源地址:
https://github.com/cyq1162/Taurus.DTS
2、Nuget 包引用ID:
由于 CYQ.Data Orm 组件本身支持10多种数据库,因此提供的包,只根据消息队列的需要分拆提供。
默认Taurus.DTS 支持同时使用 RabbitMQ 和 Kafka 两种消息队列。
如果一个项目中只用RabbitMQ,则引入 Tarurus.DTS.RabbitMQ,减少对 Kafka 的依赖包。
编绎的版本:支持太多,发布是个苦力活:
.Net 系列:由于引用依赖关系(RabbitMQ最低是 4.0,Kafka最低是 4.5); .Net Core系列、支持 2.1 到 8.0 版本及以后。 Standard 标准库:支持2.1 及以后。
3、Taurus.DTS 微服务分布式任务框架基础说明:
基础说明:
1、框架分为: Client(客户端,即任务发起端)和 Server(服务端,即方法订阅方)。 2、框架支持:即时任务、延时任务、Cron表达式任务定时任务、广播任务,四种方式。 3、项目需要配置的参数:1、数据库(可选);2、MQ(必选)。
数据存储:
可选择数据库(MSSQL、MySql、Oracle、PostgreSql 等 CYQ.Data 所支持的10多种数据库之一)
MSSQL配置示例如下:
{ "ConnectionStrings": { "DTS.Server.Conn": "server=.;database=MSLog;uid=sa;pwd=123456" } }