Skip to Main Content
微服务与事件驱动架构
book

微服务与事件驱动架构

by Adam Bellemare
October 2021
Beginner to intermediate content levelBeginner to intermediate
250 pages
7h 11m
Chinese
Posts & Telecom Press
Content preview from 微服务与事件驱动架构
集成事件驱动型和
请求
响应
型微服务
177
13.5
 在事件驱动的工作流中处理请求
“请求
响应”
API
构成了许多系统之间通信的基础,因此,你需要确保事件驱动型应用程
序能够集成来自此类请求的输入数据。其中一种请求处理方式与处理任何非事件驱动的系
统的方式一样:立即执行所请求的操作并将响应返回给客户端。或者,也可以将请求
转换
为事件,将其注入自己的事件流中,并像处理系统中的任何其他事件一样对其进行处理。
另外,微服务还可以混合执行这些操作,只将对业务重要的请求转换为事件(可以在界限
上下文之外共享),同时同步处理其他请求。图
13-10
展示了这一概念
,稍后将进一步展开
这个内容。
用户图形用户界面(GUI 用户GUI
微服务
微服务
直接处理请求 将请求转换成事件
1) 创建对象
2) 直接在
数据库中
创建对象
2) 创建对
象事件
3) 发布对象
4) 物化流
1) 创建对象
对象流
13-10:直接处理请求与将请求转换成事件
上图的左半部分展示了传统的对象创建操作的执行过程,其结果被直接写入数据库中。上
图的右半部分展示了一个事件优先的解决方案,它将请求解析为事件并发布到对应的事件
流中,然后事件驱动的工作流会进行消费、应用业务逻辑并将其存储在数据库中。
先写入事件流的主要优点是其提供了一个永久的事件记录,并允许所有的服务去物化数
据。然而,其最大的折中是会产生延迟,服务必须等待结果物化到要使用的数据存储中
(“读写”最终一致性)。缓解此问题的一种方法是在成功地将值写入对象流之后将其保留
在内存中,这样就可以在用户端的操作中使用它。但是 ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Start your free trial

You might also like

云原生:运用容器、函数计算和数据构建下一代应用

云原生:运用容器、函数计算和数据构建下一代应用

Boris Scholl, Trent Swanson, Peter Jausovec
Kafka权威指南

Kafka权威指南

Neha Narkhede, Gwen Shapira, Todd Palino
下一代空间计算:AR与VR创新理论与实践

下一代空间计算:AR与VR创新理论与实践

Erin Pangilinan, Steve Lukas, Vasanth Mohan

Publisher Resources

ISBN: 9787115571106