.net中ddd设计模式之domainServices与redis构建redisServices的讨论
来源:互联网 发布:java开发简历项目描述 编辑:程序博客网 时间:2024/06/05 12:46
今天下午和部门马爷讨论了一下.net中ddd设计模式之domainServices与redis构建redisServices,起因是我们在构建OrderCode订单编码的唯一性,由于模仿微信支付中的随机数构建在高并发是会出现重复的现象,所以引入redis的计数器系统(参见小Z的redis自增序列)。其中我和马爷讨论的问题是在ddd的domainservices中并不能完全完成订单创建的功能,ordercode在项目的基础设施中的redisServices中完成。那么问题来了,redisServices中就必须通过继承重写domainServices的方法去完成订单创建的功能。如此,基础设施必须引用domainServices,马爷的想法是domainServices不该引用基础设施,领域服务该独立。这点小Z是赞同的,只是这样我们就要比较别扭的在基础设施中引用领域服务,虽然觉得有些变扭,因为基础设施本来就是单给webAPI引用的,小Z的想法是能不能移入领域服务。马爷的想法是理论上可以,实际操作上也有问题,即redisServices其实没有业务功能,并且会产生大量的schema定义,而且在细节上不怎么好抽象成接口,所以目前的做法还是维持现状。
当然最后我们的观点是redis已经是我们架构中不可获取的一部分,至少目前是这样的,以后是不是换成其他的nosql或者组件是另说,因为redis毕竟解决了一部分sqlserver或者说是关系型数据库的性能瓶颈,和一些不必要的数据不进行持久化的设计。
不知道各位在实际应用中遇没遇到相似的问题?我们可以探讨探讨。
0 0
- .net中ddd设计模式之domainServices与redis构建redisServices的讨论
- DDD设计模式结构图
- 设计模式之迭代器模式,C++下的讨论
- 与别人关于设计模式的一段讨论
- 设计模式之——访问模式(讨论篇:java的动态绑定与双分派)
- 传统三层向DDD的转变及以DDD为开发模式的设计开发步骤
- .NET应用架构设计—工作单元模式(摆脱过程式代码的重要思想,逆袭DDD)
- .NET应用架构设计—工作单元模式(摆脱过程式代码的重要思想,代替DDD实现轻量级业务)
- 基于DDD的.NET开发框架 - ABP分层设计
- 基于DDD的.NET开发框架 - ABP模块设计
- 我把Black_Cat与Walaqi等关于"设计模式"之"工厂方法""抽象工厂"的讨论整理如下,以方
- 设计模式讨论之abstract factory篇
- 设计模式之构建Builder
- .NET领域驱动设计—看DDD是如何运用设计模式颠覆传统架构
- Redis与Reactor设计模式
- .NET与设计模式
- .NET与设计模式
- 设计模式学习之构建者模式
- 基于jenkins 打tag,基于tag构建,版本管理
- sql注入及防止SQL注入
- JAVA——Properties中如何将流中的数据存储到集合中
- Spring MVC 页面渲染( render view )
- HDU 1671 Phone List (字典树)
- .net中ddd设计模式之domainServices与redis构建redisServices的讨论
- 普通二叉树转二叉链表(孩子兄弟表示法)
- 文件上传限制
- python不使用type(obj) is **来判断变量的类型
- shell实现ftp命令示例
- 网站移动端自适应匹配搜索引擎优化
- yii框架之简单的验证码实现
- Codeforces 513G2 Inversions problem (dp)
- iOS 支付 [支付宝、银联、微信]