前言 今天讲一下事件驱动,这个不是领域驱动设计里的事件源(Event Source), 这个以后再讲,今天主要讲一下如何用事件来解耦,主要的原因是我们有个项目有个功能我觉得用事件的方式比较好,正好写篇博客,就不用专门给他们讲了。 解耦 说到解耦,我们很熟悉分层设计,比如上层依赖于抽象,不依赖 ...
前言 上一篇讲了事件,以及为什么要使用事件,主要是为了解耦,但是有同学就问了,同步如果订阅事件的人太多,比如 亿人都关心上头条的事,那么RaiseEvent得等 亿人都处理完,那得多久呀,从此再也不敢发事件了。 举个例子,你在网上下单,下完单要通知库房,甚至要通知供应商补货,如果都是同步的话,消费者还不等急死呀,实际上你在电商网站上下个单, 一般你很快就能到订单页面,那个页面告诉你: 兄弟,订单已 ...
2015-02-12 16:46 8 4532 推荐指数:
前言 今天讲一下事件驱动,这个不是领域驱动设计里的事件源(Event Source), 这个以后再讲,今天主要讲一下如何用事件来解耦,主要的原因是我们有个项目有个功能我觉得用事件的方式比较好,正好写篇博客,就不用专门给他们讲了。 解耦 说到解耦,我们很熟悉分层设计,比如上层依赖于抽象,不依赖 ...
前言 上一篇说到为什么要使用事件驱动,但是只有概念是不够的,我们要代码呀!记得脸书的老总说过: "Talk is cheap, Show me the code!" 实现思路 发出事件 事件顾名思义就是一件事情发生了,比如我要上头条,这不是一个事件,这事一个Command ...
的DDD原则。 这是“领域驱动设计实践之路”系列的第二篇文章,分析了如何应用事件来分离软件核心复杂度 ...
本篇是“事件驱动的微服务”系列的第二篇,主要讲述事件驱动设计。如果想要了解总体设计,请看第一篇"事件驱动的微服务-总体设计" 程序流程 我们通过一个具体的例子来讲解事件驱动设计。 本文中的程序有两个微服务,一个是订单服务(Order Service), 另一个是支付服务(Payment ...
上一篇:《IDDD 实现领域驱动设计-SOA、REST 和六边形架构》 阅读目录: CQRS-命令查询职责分离 EDA-事件驱动架构 Domin Event-领域事件 Long-Running Process(Saga)-长时处理 ...
Netty是一款异步的事件驱动的网络应用程序框架,支持快速地开发可维护的高性能的面向协议的服务器和客户端。 使用Netty你可以并不是很需要网络编程、多线程处理、并发等专业Java知识的积蓄。 Netty的架构方法和设计原则是:每个小点都和它的技术性内容一样重要,穷其精妙 ...
上一篇文件浅析了Netty中的事件驱动过程,这篇主要写一下异步相关的东东。 首先,什么是异步了? 异步的概念和同步相对。当一个异步过程调用发出后,调用者不能立刻得到结果。实际处理这个调用的部件在完成后,通过状态、通知和回调来通知调用者。 异步的好处是不会造成阻塞,在高并发情形下会更稳定和更高 ...
本篇文章着重于浅析一下Netty的事件处理流程,Netty版本为netty-3.6.6.Final。 Netty定义了非常丰富的事件类型,代表了网络交互的各个阶段。并且当各个阶段发生时,触发相应的事件交给pipeline中定义的handler处理。 举个例子,如下一段简单的代码 ...