课程咨询: 400-996-5531 / 投诉建议: 400-111-8989
认真做教育 专心促就业
我们在前几期的文章中给大家简单介绍了微服务架构开发的用法以及优缺点等内容,而本文我们就再来了解一下,微服务数据管理架构模式都有哪些类型。
1、CQRS设计模式
CQRS是跨微服务查询的重要模式之一。我们可以使用CQRS设计模式,以避免复杂的查询,摆脱低效的连接。CQRS是命令和查询责任隔离的意思。本质上,这种模式实现了数据库读取和更新操作的分离。
为了隔离命令和查询,好的做法是用2个数据库物理地分离读和写数据库。此时,如果我们的应用程序是读密集型的,也就是读比写多,我们就可以通过定义自定义数据模式来优化查询。
物化视图模式是实现读数据库的一个很好的例子。因为通过这种方式,我们可以用预定义的细粒度数据来避免复杂的连接和映射,进行查询操作。
通过这种隔离,对于读数据库和写数据库,我们甚至可以使用不同的数据库类型,如使用NoSQL文档数据库进行读取,使用关系数据库进行CRUD操作。
2、事件源模式
我们已经学习了CQRS模式,该模式主要是与事件源模式一起使用。当搭配使用CQRS与事件源模式时,主要的理念是将事件存储到写数据库中,这将是作为真相来源的事件数据库。
之后,CQRS设计模式的读数据库通过非规范化表提供数据的物化视图。当然,这个物化视图的读数据库消费了来自写数据库的事件,并将它们转换为非规范化的视图。
事件源模式改变了数据保存至数据库的操作。它不是将数据的新状态保存到数据库,而是将所有事件按数据事件发生的顺序保存到数据库。这个事件数据库称为事件存储。
它不更新数据记录的状态,而是将每个修改追加到一个事件的顺序表中。因此,事件存储成为数据的真实来源。之后,这些事件存储通过物化视图转换为读数据库。这种转换操作可以通过发布/订阅模式来处理,实现方式是用消息代理系统发布事件。
【免责声明】本文系本网编辑部分转载,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。如涉及作品内容、版权和其它问题,请在30日内与管理员联系,我们会予以更改或删除相关文章,以保证您的权益!更多内容请加danei0707学习了解。欢迎关注“达内在线”参与分销,赚更多好礼