接上一篇 Newbe.Claptrap 框架入门,第一步 —— 创建项目,实现简易购物车 ,我们继续要了解一下如何使用 Newbe.Claptrap 框架开发业务.通过本篇阅读,您便可以开始尝试使用 Claptrap 实现业务了. 开篇摘要 本篇,我通过实现 “清空购物车” 的需求来了解一下如何在已有的项目样例中增加一个业务实现. 主要包含有以下这些步骤: 定义 EventCode 定义 Event 实现 EventHandler 注册 EventHandler 修改 Grain 接口 实现 G…
接上一篇 Newbe.Claptrap 框架入门,第一步 -- 开发环境准备 ,我们继续了解如何创建一个 Newbe.Claptrap 项目. Newbe.Claptrap 是一个用于轻松应对并发问题的分布式开发框架.如果您是首次阅读本系列文章.建议可以先从本文末尾的入门文章开始了解. 安装项目模板 打开控制台运行以下命令来安装最新的项目模板: dotnet new --install Newbe.Claptrap.Template 安装完毕后,可以在安装结果中查看到已经安装的项目模板. 创建项…
接上一篇 Newbe.Claptrap 框架入门,第二步 —— 简单业务,清空购物车 ,我们继续要了解一下如何使用 Newbe.Claptrap 框架开发业务.通过本篇阅读,您便可以开始学会添加一个全新的 Claptrap. Newbe.Claptrap 是一个用于轻松应对并发问题的分布式开发框架.如果您是首次阅读本系列文章.建议可以先从本文末尾的入门文章开始了解. 开篇摘要 本篇,我通过实现 “管理库存” 的需求来了解一下如何在已有的项目样例中定义一个 Claptrap. 结合前一篇的基本步骤…
接上一篇 Newbe.Claptrap 框架入门,第三步 —— 定义 Claptrap,管理商品库存 ,我们继续要了解一下如何使用 Newbe.Claptrap 框架开发业务.通过本篇阅读,您便可以开始学会在 Claptrap 框架中使用 Minion 进行异步的业务处理. Newbe.Claptrap 是一个用于轻松应对并发问题的分布式开发框架.如果您是首次阅读本系列文章.建议可以先从本文末尾的入门文章开始了解. 开篇摘要 本篇,我通过实现 “商品下单” 的需求来了解一下如何在已有的项目样例中…
Newbe.Claptrap 框架依托于一些关键性的基础组件和一些可选的辅助组件.本篇我们来介绍一下如何准备一个开发环境. Newbe.Claptrap 是一个用于轻松应对并发问题的分布式开发框架.如果您是首次阅读本系列文章.建议可以先从本文末尾的入门文章开始了解. 必要组件 这些组件是使用本框架进行开发是必须要安装的组件. Docker Desktop Docker Desktop 是以下所有组件运行的基础.开发可以通过以下链接下载对应操作系统的版本并进行安装: https://www.doc…
让我们来实现一个简单的 “电商购物车” 需求来了解一下如何使用 Newbe.Claptrap 进行开发. 业务需求 实现一个简单的 “电商购物车” 需求,这里实现几个简单的业务: 获取当前购物车中的商品和数量 向购物车中添加商品 从购物车中移除特定的商品 安装项目模板 首先,需要确保已经安装了 .NetCore SDK 3.1 .可以点击此处来获取最新的版本进行安装. SDK 安装完毕后,打开控制台运行以下命令来安装最新的项目模板:   dotnet new --install Newbe.Cl…
Newbe.Claptrap 框架非常适合于解决具有并发问题的业务系统.火车票售票系统,就是一个非常典型的场景用例. 本系列我们将逐步从业务.代码.测试和部署多方面来介绍,如何使用 Newbe.Claptrap 框架来构建一个简易的火车票售票系统. 吹牛先打草稿 让我们来首先界定一个这个简易的火车售票系统所需要实现的业务边界和性能要求. 业务边界 该系统仅包含车票的余票管理部分.即查询剩余座位,下单买票减座. 而生成订单信息,付款,流量控制,请求风控等等都不包含在本次讨论的范围中. 业务用例 查…
Newbe.Claptrap 框架中 State 和 Event 应该如何理解?最近整理了一下项目的术语表.今天就谈谈什么是 Event 和 State. Newbe.Claptrap 是一个用于轻松应对并发问题的分布式开发框架.如果您是首次阅读本系列文章.建议可以先从本文末尾的入门文章开始了解. 事件 Event Claptrap 是基于事件溯源的 Actor 模式.事件自然就起到了至关重要的作用. 想要操作 Claptrap 就需要对其传递事件.事件也是改变 Claptrap State 的…
Newbe.Claptrap 框架如何实现多级生命周期控制?最近整理了一下项目的术语表.今天就谈谈什么是 Claptrap Lifetime Scope. 特别感谢 kotone 为本文提供的校对建议! Newbe.Claptrap 是一个用于轻松应对并发问题的分布式开发框架.如果您是首次阅读本系列文章.建议可以先从本文末尾的入门文章开始了解. Claptrap 生命周期按照笔者的看法分为两大类进行阐述:运行时生命周期和设计时生命周期. 运行时生命周期 运行时生命周期是指 Claptrap 系统…
Newbe.Claptrap 框架如何实现 Claptrap 的多样性?最近整理了一下项目的术语表.今天就谈谈什么是 Claptrap Design 和 Claptrap Factory. 特别感谢 kotone 为本文提供的校对建议! Newbe.Claptrap 是一个用于轻松应对并发问题的分布式开发框架.如果您是首次阅读本系列文章.建议可以先从本文末尾的入门文章开始了解. Claptrap Design 实现 Claptrap 的高可定制性 Claptrap 拥有较高的可定制性.开发者可以…