项目简介

在我们构建 SOA 或者 微服务系统的过程中,我们通常需要使用事件来对各个服务进行集成,在这过程中简单的使用消息队列并不能保证数据的最终一致性, CAP 采用的是和当前数据库集成的本地消息表的方案来解决在分布式系统互相调用的各个环节可能出现的异常,它能够保证任何情况下事件消息都是不会丢失的。CAP 基于 .NET Standard 的 C# 库,是一种处理分布式事务的解决方案,具有 EventBus 的功能,兼具轻量级、易使用、高性能等优点。

项目:https://github.com/dotnetcore/CAP/
文档:https://github.com/dotnetcore/CAP/wiki
作者博客:http://www.cnblogs.com/savorboard/


发展史


CAP 于 2017 年 7 月加入 NCC,作者精雕细琢、更新频繁,项目日趋成熟、臻于完美,于上周末成为 NCC 首个星数破千的项目,值得祝贺。为此,经 NCC 授权,由 AlexLEWIS 赠送 CAP 作者杨晓东(Savorboard)先生图书一本。


NCC 简介

NCC 全称 .NET Core Community(同时保有 .NET China Community 的名称,其缩写为 dotnet-china),成立于 2016 年年中。NCC(时名为 .NET Core 中国学习小组)最初项目为微软 ASP.NET Core 文档翻译项目,为第一批学习 ASP.NET Core 的中文圈开发人员提供了巨大便利,后微软逐步文档国际化,该翻译项目完成全部历史使命。后经历多次调整,最终更名为 .NET Core Community,是一个目前包括 12 个成员项目(含 1 个外部项目)、4 个子团队的正不断成长、完善,并正加速前进的 .NET/.NET Core 开源社区组织。

NCC GitHub:https://github.com/dotnetcore
NCC 成员项目一览:http://projects.dotnet-china.org
NCC 公开群:436035237


加入规范

首先项目须满足以下两个规范:

关于加入 NCC 的项目标准

凡加入 NCC 的项目,都需要满足以下标准

  • 使用 .net standatd 开发,可用于 nfx/core 的项目;
  • 具有清晰的 Git 提交记录(git commit log);
  • 具有完整的(覆盖率在65%以上的)单元测试;
  • 具有适当的跑分测试(对于基础设施项目,跑分测试是必须的);
  • 作者持续关注(项目在最近三个月内做过有效更新的);
  • 项目具有一定被关注度(要求项目星数在 50 星以上)
  • 代码优美,思路清晰,说明信息完整,示例代码到位;
  • 文档/Wiki 基本到位(可选);
  • 注释齐全(可选);
  • 有明确的开源许可;
  • 作者德才兼备,虚心谨慎,脚踏实地,积极向上。

  • 根据《例外情况》,可谨慎地对部分项目适当降低标准;
  • 本附加标准不可滥用

关于加入 NCC 的项目的例外情况

满足以下例外情况的一条或多条的项目,允许对其降低标准(即《关于加入 NCC 的项目标准》):

  1. 有足够的用户将该项目用于生产环境,且较长时间未发生问题的:允许适当降低单元测试、跑分测试的标准;
  2. 有足够博客教程、并有实例项目或代码的:允许适当降低文档/Wiki 的标准;
  3. 满足上述第一点或第二点的前提下,其项目 Git 提交记录(git commit log)未能做到清晰的,自获知本《标准》及《例外情况》后能改进的,则以该时间节点起的提交记录作为评估项。
  4. 针对项目优秀但星数较少(少于 50 星)的,须 NCC PMC Team 成员半数以上认可的,可降低星数要求。

加入流程

加入流程分为「提名」和「申请」两类。「申请」分支的流程为:

  1. 申请:在 NCC Home Repo 提交 Issue 以发起申请,内容务必填写详尽
  2. 初步评审:由 .NET Core Community 管理团队(.NET China Community Team)进行初步评审
  3. 技术评审:由 .NET Core Community PMC Team 进行技术评审
  4. 投票:由 NCC 管理团队和 PMC Team 共同投票(管理团队一人一票,PMC Team 一人三票),过半数赞成加入后,项目入列 NCC,并在 15 天内入列「dotNET China 成员项目列表」

我们欢迎更多的优秀项目加入我们,如果你有什么好想法也可以告诉我们,让我们一起努力做好这个社区,如我们口号所言:「Making .NET GREATER together!」。

__EOF__

.NET Core Community 首个千星项目诞生:CAP的更多相关文章

  1. .NET Core Community 第二个千星项目诞生:Util

    本文所有打赏将全数捐赠于 NCC(NCC 的资金目前由 倾竹大人 负责管理),请注明捐赠于 NCC.捐赠情况将由倾竹大人另行公示. 项目简介 作为一款旨在提升小型团队开发输出能力.提高团队效率.降低项 ...

  2. .NET Core Community 第四个千星项目诞生:微服务框架 Surging

    本文所有打赏将全数捐赠于 NCC(NCC 的资金目前由 倾竹大人 负责管理),请注明捐赠于 NCC.捐赠情况将由倾竹大人在此处公示. 提及 .NET 微服务,我们脑海中浮现的一系列印象中,总有 Sur ...

  3. .NET Core Community 第三个千星项目诞生:爬虫 DotnetSpider

    本文所有打赏将全数捐赠于 NCC(NCC 的资金目前由 倾竹大人 负责管理),请注明捐赠于 NCC.捐赠情况将由倾竹大人在此处公示. DotnetSpider 至力于打造一个轻量化.高效率.易开发.可 ...

  4. 首次GitHub千星项目提交维护成功 留念

    现在有点激动,可能有混乱的地方.请大家见谅. 一直觉得千星项目,对我来说是一个遥不可及的地方.没想到第一次在GitHub上 提交Pull Request 就成功了,并且是一个千星项目. 虽然 只是提出 ...

  5. .NETCore 千星项目模块化开发框架 SimplCommerce 详解

    SimplCommerce 是 github 上过千星的.netcore 商城示例项目,本文详解他的模块化框架现实思路,其业务(如产品.订单)不作介绍.因作者文笔水平很差,它又很值得学习和推荐,就算不 ...

  6. 千星项目.Net Core 2.1移植填坑记--OpenAuth.Core诞生

    背景 很早就有把OpenAuth.Net----最好用的.net权限管理工作流框架(好吧!我在吹牛

  7. XamarinEssentials教程首选项Preferences判断项目是否存在

    XamarinEssentials教程首选项Preferences判断项目是否存在 首选项也可以称为偏好设置.它以键值对的形式保存数据,适用于用户少量数据的存储.例如,将用户的个性化设置保存后,每次打 ...

  8. 首个hybird商业项目踩坑总结

    该文章是一个系列文章,是本人在Android开发的漫漫长途上的一点感想和记录,我会尽量按照先易后难的顺序进行编写该系列.该系列引用了<Android开发艺术探索>以及<深入理解And ...

  9. 中小研发团队架构实践之生产环境诊断工具WinDbg 三分钟学会.NET微服务之Polly 使用.Net Core+IView+Vue集成上传图片功能 Fiddler原理~知多少? ABP框架(asp.net core 2.X+Vue)模板项目学习之路(一) C#程序中设置全局代理(Global Proxy) WCF 4.0 使用说明 如何在IIS上发布,并能正常访问

    中小研发团队架构实践之生产环境诊断工具WinDbg 生产环境偶尔会出现一些异常问题,WinDbg或GDB是解决此类问题的利器.调试工具WinDbg如同医生的听诊器,是系统生病时做问题诊断的逆向分析工具 ...

随机推荐

  1. MyEclipse安装Eclipse Memory Analyzer插件以及使用例子

    一 :安装 1.Memory Analyzer 插件下载地址:http://www.eclipse.org/mat/downloads.php 2.将下载的文件解压到MyEclipse的  dropi ...

  2. java使用io创建文件与删除文件的工具类

    java中对于文件的操作,是再常见不过了.以下代码是自己代码中所用到的工具类,仅供参考. import java.io.File; import java.io.IOException; /** * ...

  3. Java的LockSupport工具,Condition接口和ConditionObject

    在之前我们文章(关于多线程编程基础和同步器),我们就接触到了LockSupport工具和Condition接口,之前使用LockSupport工具来唤醒阻塞的线程,使用Condition接口来实现线程 ...

  4. 【R语言系列】作图入门示例一

    假设有如下数据,我们使用plot函数作图 月龄 体重 月龄 体重  1 4.4 9 7.3 3 5.3 3 6.0 5 7.2 9 10.4 2 5.2 12 10.2 11 8.5 3 6.1 R语 ...

  5. 2017-2018-1 20155214&20155216 实验四:外设驱动程序设计

    2017-2018-1 20155214&20155216 实验四:外设驱动程序设计 实验四外设驱动程序设计-1 实验要求: 学习资源中全课中的"hqyj.嵌入式Linux应用程序开 ...

  6. 201621123062《java程序设计》第十周作业总结

    1. 本周学习总结 1.1 以你喜欢的方式(思维导图或其他)归纳总结异常相关内容. 思维导图: 2. 书面作业 本次PTA作业题集异常 2.1. 常用异常 结合题集题目7-1回答 2.1.1 自己以前 ...

  7. 201421123042 《Java程序设计》第12周

    1. 本周学习总结 1.1 以你喜欢的方式(思维导图或其他)归纳总结多流与文件相关内容. 2. 面向系统综合设计-图书馆管理系统或购物车 使用流与文件改造你的图书馆管理系统或购物车. 2.1 简述如何 ...

  8. 《高级软件测试》云平台Jira的配置

    首先点击进入以下网址: https://www.atlassian.com/ondemand/signup/form?product=jira-software.ondemand 填写好信息,Star ...

  9. raid5 阵列硬盘离线数据恢复成功案例

    数据恢复故障描述: 某研究院 DELL 磁盘阵列崩溃,内置15块1TB硬盘搭建的RAID5阵列.一开始有一块硬盘离线,在更换新硬盘进行同步的过程中,第二块磁盘指示灯报警,同步失败,阵列无法正常工作. ...

  10. EasyUI中, datagrid用loadData方法绑定数据。

    $("#dg").datagrid("loadData", { , " }, { "ck": "1", &qu ...