写点什么

在 Windows Azure 中使用 CQRS

  • 2012-04-12
  • 本文字数:657 字

    阅读完需:约 2 分钟

CQRS 作为一种模式,适合需要高可伸缩性和性能的应用程序,它近来变得越来越流行。Mark Seemann 在文章《 CQRS On Windows Azure 》中,使用示例探究了如何在 Windows Azure 平台中使用这种模式。

CQRS 的意思是命令查询责任分离(Command Query Responsibility Segregation),这个模式所基于的想法是,你能够使用与读取信息不同的模型来更新信息。这让你可以对读取和写入操作区别对待,可能会使用不同的数据访问技术访问不同的数据库,甚至使用其他架构模式像 Eventual consistency Event Sourcing 。文中的一些关键点如下:

  • 总是要假设显示的数据是过期的,并使用 UI 正确地设置期望值(因为屏幕上当前数据无法提供任何保证)。
  • 当从 UI 处理请求的时候,创建一个命令,尽快发送(到队列中)并返回。在 Windows Azure 上,这可以通过在存储队列(Storage queues)上实现一个频道(Channel)做到。
  • 分离工作者的角色,它们可以选取从 UI 发送过来的命令消息并对其进行处理。
  • 让写入操作是幂等的(Idempotent),从而多次重新传送消息,而不会导致数据问题。
  • 使用乐观并发机制——在 Windows Azure 中,这可以通过使用 Etags(CloudBlob.Properties.ETag)做到。
  • 更新视图数据可以在另一个频道(Channel)中异步发生——然后就可以被控制器查询到。
  • 以非规范的方式读取数据,以提升读取的性能。

从总体上了解更多 CQRS 信息的好地方是 Rinat Abdullin 的 CQRS 开始页面。你还可以阅读 Martin Fowler关于这个主题的文章,或者阅读InfoQ 上Arunava Chatterji 写的最新文章《健康的架构

查看英文原文: CQRS With Windows Azure

2012-04-12 09:301833
用户头像

发布了 340 篇内容, 共 145.2 次阅读, 收获喜欢 13 次。

关注

评论

发布
暂无评论
发现更多内容

IDEA使用

xujiangniao

Java IDEA

阿里开源三天就被狂转50w次的《Java面试突击》限时下载!

Java架构师迁哥

新思科技连续五年获Gartner魔力象限应用安全测试领导者殊荣

InfoQ_434670063458

新思科技 Gartner 魔力象限

从事开发5年以上的Java程序员,面试会被问到哪些?

Java架构师迁哥

Java--JVM内存结构

是老郭啊

Java JVM简介 JVM内存结构 JVM运行时数据区

程序员必知的硬核基础知识

Java架构师迁哥

C语言从入门到精通(三)

代码情缘

编程 开发 C语言 编程之路 硬件开发

质量基础设施(NQI)“一站式”服务平台开发搭建

源中瑞-龙先生

NQI 质量基础设施“一站式”

阿里架构师手肛6个月,总结出17W字操作系统、网络教程(导图+笔记)

Java架构师迁哥

iOS APP 架构漫谈

iOSer

ios ios开发 iOS架构

C语言从入门到精通(四)

代码情缘

编程 C语言 变量 编程之路 6月日更

工厂里三个质检车间缩减为一个,飞桨企业版EasyDL助力降本增效

百度大脑

飞桨

a.docker

xujiangniao

Docker

Java中String类的前世今生

卢卡多多

Java string 6月日更

【Redis】概览

awen

redis

深入讲解RxJava响应式编程框架,背压问题的几种应对模式

小Q

Java 学习 编程 架构 面试

2021全球人工智能技术大会开幕 百度王海峰:跨语言沟通正在成为现实

百度大脑

人工智能 沟通 跨语言

C语言从入门到精通(一)

代码情缘

c++ 编程 开发 C语言 硬件开发

轮胎行业遇上AI,百度智能云携手固铂轮胎智能化转型

百度大脑

智能云 轮胎

Python——注释和字符串的拼接

在即

6月日更

去阿里/腾讯/字节面试P7Java岗时,需要掌握哪些技术栈?

Java架构师迁哥

EBean ORM 框架介绍-2.字段加密、更新日志和历史记录

Barry的异想世界

jpa Ebean 字段加密 更新日志 历史记录

架构解析|网易自研新一代大规模分布式传输网

网易云信

分布式 音视频

手滑党福音,意外删除重要文件怎么办?

淋雨

数据恢复 EasyRecovery 文件恢复

深入浅出负载均衡

vivo互联网技术

负载均衡 高可用 服务器 hash

用了这么多年 Gitlab,可能还不了解这些知识

郭旭东

DevOps gitlab 极狐GitLabs

新手模拟实现bind

前端树洞

面试 大前端 js this

外包3年凭借一手“秒杀架构”成功上岸阿里

Java架构师迁哥

备战金九银十,2021年最全999道Java岗高频面试题分享

Java架构师迁哥

2021上半年1000道大厂高频面试题汇总(Java岗)

Java架构师迁哥

C语言从入门到精通(二)

代码情缘

开发 C语言 编程、

在Windows Azure中使用CQRS_.NET_Roopesh Shenoy_InfoQ精选文章