摘要: DDD是Domain driven design(领域驱动设计)的简称,是一种软件设计和开发的方法论,特别适用于复杂业务领域软件设计和开发。本文算是《领域驱动设计》这本书的读书笔记,加上自己的一些读后感。网上有很多这本书的读书笔记,但是都是别人的,不如自己总结的理解深刻。建议大家在读这本书时结合《实现领域驱动设计》一起看,同时,一定要去实际建模和编码,理论联系实际才能得其精髓。 阅读全文
posted @ 2017-09-08 00:10 倒骑的驴 阅读(12030) 评论(1) 推荐(1) 编辑
摘要: 本文为《DDD》系列文章的导读,DDD系列blog记录了社区系统的DDD实践过程中的读书笔记、问题、解决方式、思考过程、心得。希望通过社区系统的DDD实践,挖掘出一些DDD的常见例子,抛砖引玉,共同进步。 阅读全文
posted @ 2017-09-07 23:11 倒骑的驴 阅读(25432) 评论(0) 推荐(8) 编辑
摘要: 最近在做订单及支付相关的系统,在订单表的设计阶段,团队成员就‘订单状态’数据库字段设计有了一些分歧,网上也有不少关于这方面的思考和探讨,结合这些资料和项目的实际情况,拟对一些共性问题进行更深一层的思考,笔耕在此,和大家一起探讨。 阅读全文
posted @ 2017-08-17 22:06 倒骑的驴 阅读(20198) 评论(29) 推荐(50) 编辑
摘要: 一次线上环境omm问题排查及解决示例。 阅读全文
posted @ 2017-07-27 19:06 倒骑的驴 阅读(4490) 评论(0) 推荐(0) 编辑
摘要: 在做业务系统设计时,很多时候需要理清业务领域,做出正确的划分。而往往开发人员为了抽象而抽象,忽略了业务核心点,本末倒置,过度抽象,适得其反。本文实际业务系统设计案例的讨论中得出一个心得:抓住业务核心,避免过度抽象。 阅读全文
posted @ 2017-07-20 00:19 倒骑的驴 阅读(6143) 评论(20) 推荐(12) 编辑
摘要: Disruptor可以用于生产者/消费者传递数据的快速通道,那么是否可以用于大文件拆分这个实际的case呢?借助其高效的传递,理论上应当可以提升性能。此文便是此想法的落地实现和验证。 阅读全文
posted @ 2017-07-02 22:36 倒骑的驴 阅读(5239) 评论(1) 推荐(0) 编辑
摘要: 本文旨在介绍Disruptor3.0的实现细节,首先从整体上描述了Disruptor3.0的核心类图,Disruptor3.0 DSL(领域专用语言)的实现类图,并以Disruptor官方列举的几大特性作为行文思路,看看Disruptor3.0是如何实现这些特性的:内存预加载、消除‘伪共享’、序号栅栏和序号配合使用来消除锁和CAS、批处理效应的具体实现等。 阅读全文
posted @ 2017-06-24 17:09 倒骑的驴 阅读(12264) 评论(0) 推荐(2) 编辑
摘要: 本文翻译自LMAX关于Disruptor的论文,同时加上一些自己的理解和标注。Disruptor是一个高效的线程间交换数据的基础组件,它使用栅栏(barrier)+序号(Sequencing)机制协调生产者与消费者,从而避免使用锁和CAS,同时还组合使用预分配内存机制、缓存行机制(cache line)、批处理效应(batch effect)来达到高吞吐量和低时延的目标。目前Disruptor版本已经迭代至3.0,本论文是基于Disruptor1.0写就,在新版本中,相对与1.0版本,其核心设计思想没有变,只是实现细节有所调整和优化,因此,此论文仍然很有研读意义。 阅读全文
posted @ 2017-06-19 23:13 倒骑的驴 阅读(10831) 评论(3) 推荐(1) 编辑
摘要: 大文件拆分问题涉及到io处理、并发编程、生产者/消费者模式的理解,是一个很好的综合应用场景,为此,花点时间做一些实践,对相关的知识做一次梳理和集成,总结一些共性的处理方案和思路,以供后续工作中借鉴。 本文将尝试由浅入深的方式表述大文件拆分的问题及不同解决方案,给出的方案不一定是最优解,也并非线上环境论证过的靠谱方式,目的只是在于通过该问题融会贯通io、多线程等基础知识理论。生产环境请慎用。 本文不会逐行讲解代码实现,而注重在方案设计及思路探讨上,会在文末附上源码demo git地址。 阅读全文
posted @ 2017-05-21 17:31 倒骑的驴 阅读(18691) 评论(3) 推荐(4) 编辑
摘要: java中常用的文件写入方式有:FileChannel,BufferedOutputStream,FileOutputStream,BufferedWriter,FileWriter;本文通过简单的实验讨论不同文件大小写入场景下,何种写入方式的效率最高,以及可能遇到的一些问题。 阅读全文
posted @ 2017-05-16 23:58 倒骑的驴 阅读(16122) 评论(4) 推荐(2) 编辑