前言
今天,我们很高兴宣布 CAP 发布 3.1 版本正式版。同时我们也很高兴的告诉你 CAP 在 GitHub 已经突破了 4000 Star.
CAP 3000 Star 还是去年8月份的时候,最近一年涨了 1000 Star,几乎没有宣传的情况下我觉得还是可以,最开心的是这新增的 1000 中有一半以上的都是老外关注的,说明已经走出国门了。国产项目因为有很多原因其实走出国门是非常不容易的,这其实是我最想看到的结果。
另外一个让我觉得走出国门的原因是有老外主动给 CAP 写博客 以及在Youtube录制视频了,这些都是我不曾想到的。
自从上次 CAP 3.0 版本发布 以来,已经过去了大半年的时间,关注的朋友可能知道,在这些的时间里,也发布了几个小的 Bug 修复版本,修复了在 3.0 版本中的一些Bug,得到了很多的好评,非常感谢大家一直以来对CAP的支持。
简介
可能有些人还不知道 CAP 是什么,老规矩来一个简介。
CAP 是一个用来解决微服务或者分布式系统中分布式事务问题的一个开源项目解决方案(https://github.com/dotnetcore/CAP)同样可以用来作为 EventBus 使用,目前已经3岁多了,已经应用到了很多的公司和项目中,
想对 CAP 更多了解的同学可以看下官方文档。
本次在 CAP 3.1 版本中我们主要带来了以下新特性:
- 增加了对 AWS 的 SQS 的支持
- 存储移除了对 Dapper 的依赖
- 更加完善的文档支持以及英文文档中的语法修复
- 增加对 Visual Studio 源码调试的支持
- 更新依赖的 NuGet 包到最新版本
- 一些 Bug 修复
下面我们就来逐一看一下这些新的特性。
增加了对 AWS 的 SQS 的支持
AWS(亚马逊云)是目前全球市场份额最大的云计算厂商,世界上有越来越多的公司在使用亚马逊提供的各项云服务,另外其在中国的市场份额也在增加,所以我们在这个版本决定对其提供支持。
我们主要是对 AWS 提供的 SNS 和 SQS 服务在 CAP 中进行整合,SNS 提供了 Topic 的功能,SQS 是对 Topic 进行订阅及消费。
你可以在文档中看到更多介绍:https://cap.dotnetcore.xyz/user-guide/zh/transport/aws-sqs/
集成方式:
services.AddCap(x =>
{
...
x.UseAmazonSQS(RegionEndpoint.CNNorthWest1);
});
注意:你的 IAM 账户需要具有创建 SNS 以及 SQS 等的权限,如果你是运行在 EC2 中,则需要 EC2 的角色具有相应的权限。
移除了对 Dapper 的依赖
由于 CAP 的 Storage 项目依赖了 Dapper,所以对于不想使用 Dapper 的项目或者是Dapper版本和CAP的依赖性不兼容的项目带来了一些困扰,所以我们在此版本替换为了直接的 ado.net。
在这里感谢 @cBear 同学对此特性进行的贡献。另外也帮助我们修复了一些Bug。
移除Dapper依赖项的项目包括:
DotNetCore.CAP.MySql
DotNetCore.CAP.SqlServer
DotNetCore.CAP.PostgreSql
完善文档及英文语法修复
这个版本我们修复以及完善了一些文档内容,包括新增了 Amazon SQS 的文档。
同时我们对英文文档进行了大量的语法修正,非常感谢 @mzorec 对此进行的修正。
增加对 Visual Studio 源码调试的支持
我们在很久之前已经提供了对 SourceLink 的支持,但当时我们的符号服务器使用的是 SymbolSource.org,对于集成体验不是太好,这个版本我们进行了一些改进。
NuGet.org 从18年底提供了对符号文件(snupkg)/服务器的支持,符号文件我们都知道是 Visual Studio 用来对源码进行调试的,配合 SourceLink 就可以定位到 GitHub的源码了,所以我们在此版本将我们的符号文件修改为了 snupkg 并且转到到了 NuGet.org,希望能够帮助到需要的同学。
你可以在这里看到如何在 Visual Studio 中 使用 snupkg 提供调试体验。
其他
其他的一些改进项目包括:
1、我们将所有的 nuget 的依赖包都升级到了最新版本。 特别需要注意的是 MySqlConnector 我们升级到了 1.0,有使用到 Pomelo.EntityFrameworkCore.MySql 的同学需要注意目前它还不支持1.0版本。
2、修复了一些已知的Bug,你可以在这里看到。
总结
以上,就是本版本中支持的一些新特性,感谢大家的支持,我们很开心能够帮助到大家
。大家在使用的过程中遇到问题希望也能够积极的反馈,帮助CAP变得越来越好。
如果你喜欢这个项目,可以通过下面的连接点击 Star 给我们支持。
如果你觉得本篇文章对您有帮助的话,感谢您的【推荐】。
如果你对 .NET Core 有兴趣的话可以关注我,我会定期的在博客分享我的学习心得。