
设计模式
amongdata
关注技术管理、企业架构、业务架构等,曾就职于思科(CRDC)、网易、阿里等企业
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
微服务设计模式(系列)-分布式事务(Saga模式)
这里写自定义目录标题Saga Saga 每个Saga由一系列sub-transaction Ti 组成 每个Ti 都有对应的补偿动作Ci,补偿动作用于撤销Ti造成的结果 可以看到,和TCC相比,Saga没有“预留”动作,它的Ti就是直接提交到库。 Saga可能的行为 T1, T2, T3, …, Tn T1, T2, …, Tj, Cj,…, C2, C1,其中0 < j < n Saga的 恢复策略 backward recovery,向后恢复,补偿所有已完成的事务,如果任一子事务失败原创 2020-05-26 12:08:48 · 1301 阅读 · 0 评论 -
微服务设计模式(系列)-微服务拆分
软件模式-微服务拆分:按业务能力分解微服务场景基于业务分解的原则 场景 如果你正准备将你的单体架构(Monolithic architecture)应用改造为微服务架构,并希望使用微服务架构将应用程序构造为一组松耦合的服务。那么第一个要面对的问题就是如何进行服务的拆分。 上图展示了微服务的架构优势,主要包括两方面: 简化测试并允许独立部署 将工程组织结构化为一组小型(6-10名成员)的自治团队,每个团队负责一个或多个服务 这些好处不会自动得到保证。相反,它们只能通过合理的服务分解为实现。 服务必须足够翻译 2020-05-25 19:49:37 · 590 阅读 · 0 评论 -
回調模式小結(一)
<br /><br />目的:<br />在形如func(){ head head head... act(); tail tail tail...}<br />的代碼中,常常會出現 act 并不是特定的某個動作,可能需要外界定制,如void main(){ int a = 2, b = 3; double r=a + b; printf("%lf/n", r);}<br />第 4 行的運算式可能是 a-b, a * b, 或者 sqrt(a*a + b*b)转载 2011-04-29 21:21:00 · 672 阅读 · 0 评论 -
模板模式
来源: http://www.tnove.com/?p=59 之前学过软件设计模式,但没有在工程中用过,所以基本学过的都快忘光了。这几天看到模板模式,网上搜了下主要是介绍Java 的, 所以我也来记录下C++下面我对模板模式的理解 当你实现一个算法的时候,通常不希望将实现信息暴露给外部和给外部使用,包括将会被继承的类。 但是,算法有要有扩充性,可以针对不同的信息实现不同的结果。怎么办原创 2011-04-29 22:19:00 · 995 阅读 · 0 评论