基于 Azure 的微服务扩展与响应式编程实践
1. 微服务扩展基础
Azure 容器服务曾是使用 DC/OS、Docker Swarm 或 Google Kubernetes 对 Linux 或 Windows 容器进行扩展和编排的优秀解决方案。不过自 2020 年 1 月 31 日起,Azure 容器将不再可用,微软转而投资 Azure Kubernetes 服务(AKS),更多信息可访问: https://docs.microsoft.com/en-us/azure/aks/ 。
2. 服务设计扩展
在设计或实现微服务时,有几个关键组件需要考虑,合理的服务设计结合基础设施扩展,能充分发挥微服务架构的强大功能,创造巨大的业务价值。
- 数据持久化模型设计
- 传统关系型数据库 :在传统应用中,一直依赖关系型数据库来持久化用户数据。关系型数据库起源于 70 年代,以结构化方式存储持久信息,便于查询和数据维护,遵循 ACID 模型,读写操作使用相同的数据模型。
- 读写分离模型(CQRS) :在微服务时代,现代应用需要超大规模扩展。当在单个数据库中混合读写操作时,在高扩展性需求下会出现复杂问题。因为读操作通常需要比写操作更快,且读操作可使用不同过滤条件返回单行或结果集,而写操作通常涉及单行或单列,耗时较长。因此,将基本数据模型拆分为读写两部分,即 CQRS 架构,能简化操作并便于分别优化
超级会员免费看
订阅专栏 解锁全文

被折叠的 条评论
为什么被折叠?



