

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# 按交易分解
<a name="decompose-transactions"></a>

在分布式系统中，应用程序通常必须调用多个微服务才能完成一项业务事务。为避免延迟问题或两阶段提交问题，您可以根据事务对微服务进行分组。如果您认为响应时间很重要，并且不同的模块在打包后不会形成整体结构，则这种模式是合适的。下表说明了使用此模式的优势和劣势。


****  

| 优点 | 缺点 | 
| --- | --- | 
|  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_cn/prescriptive-guidance/latest/modernization-decomposing-monoliths/decompose-transactions.html) |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_cn/prescriptive-guidance/latest/modernization-decomposing-monoliths/decompose-transactions.html)  | 

在下图中，保险单体根据交易分解为多个微服务。

![\[通过交易分解单体\]](http://docs.aws.amazon.com/zh_cn/prescriptive-guidance/latest/modernization-decomposing-monoliths/images/decompose-by-transaction.png)


在保险系统中，索赔申请通常在提交后标记给客户。这意味着，如果没有*客户*微服务，理赔服务就不可能存在。*销售*和*客户*打包在一个微服务包中，业务交易需要与两者进行协调。