博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
CQRS微服务架构模式
阅读量:7240 次
发布时间:2019-06-29

本文共 603 字,大约阅读时间需要 2 分钟。

​什么是微服务?

    这是维基百科里面的定义:“微服务是面向服务架构(SOA)架构风格的一种变体,它将应用程序构建为一系列松散耦合的服务。在微服务体系结构中,服务应该是细粒度的,协议应该是轻量级的。将应用程序分解为不同的小型服务的好处是它提高了模块性,使应用程序更易于理解,开发和测试。它还使小型自主小组能够独立开发,部署和扩展各自的服务,从而实现并行发展。它还允许通过持续的重构来实现单个服务的体系结构。基于微服务的体系结构使连续递送和部署。”

我们分析下细粒度/协议轻量级:

    首先粒度是什么? 是系统分解成小部分的程度。这里说细粒度,那么服务必然是更小模块,所以也就有上面说的易理解、开发、测试等。不过事物都有两面性,那缺点呢,应用进行细粒度拆分,意味着服务的数量增加,那么服务的管理、治理难度就增加 调用通信变得烦琐,而又要考虑到性能问题,所以这里才有提出了协议轻量级的概念。

 

什么是CQRS?

    将应用程序分为两部分:命令端和查询端。命令端处理程序创建,更新和删除请求,并在数据更改时发出事件。查询端通过针对一个或多个物化视图执行查询来处理查询,这些物化视图通过订阅数据更改时发出的事件流而保持最新。

 关于这种模式查看:

示例:

简单架构

示例源码

有任何问题随时与我联系,期待您的反馈。 

Email: 

转载于:https://www.cnblogs.com/sky233/p/7795402.html

你可能感兴趣的文章
【BFS】POJ 3414
查看>>
团队作业——Beta冲刺3
查看>>
equal height
查看>>
一个appium 博客
查看>>
关于windows下安装mysql数据库出现中文乱码的问题
查看>>
有人认为,“中文编程”是解决中国程序员编程效率的秘密武器,请问它是一个“银弹”么?...
查看>>
053、overlay是如何隔离的?(2019-03-20周三)
查看>>
python+selenium常见问题解决方式
查看>>
看来人工智能不可阻挡,将和网络与计算机一样服务于各行各业!
查看>>
Python之路--------->Python-字符编码
查看>>
Sql学习内容
查看>>
微信公众号教程(2)微信公众平台后台介绍
查看>>
微信公众号教程(5)自动回复操作案例
查看>>
ACE服务端编程2:ACE跨平台之数据类型和宽字符
查看>>
Git操作reset --hard失误
查看>>
正则表达式与re模块
查看>>
map&reduce
查看>>
createrepo -g /enp/comps.xml .
查看>>
taskkill /f /t /im processName
查看>>
aix vg lv pv
查看>>