「第二部:容器和微服务架构」(6) 逻辑架构与物理架构

简介: 「第二部:容器和微服务架构」(6) 逻辑架构与物理架构

在这一点上,停止并讨论逻辑体系结构和物理体系结构之间的区别,以及这如何应用于基于微服务的应用程序的设计是很有用的。


首先,构建微服务不需要使用任何特定的技术。例如,Docker容器并不强制创建基于微服务的体系结构。这些微服务也可以作为普通进程运行。微服务是一种逻辑架构。


此外,即使微服务可以物理地实现为单个服务、进程或容器(为了简单起见,这是eShopOnContainers的初始版本中采用的方法),在构建大型由数十个甚至数百个服务组成的复杂应用程序。

这就是应用程序的逻辑架构和物理架构之间的区别。系统的逻辑架构和逻辑边界不一定将一对一映射到物理或部署架构。它可能发生,但通常不会。


尽管您可能已经确定了某些业务微服务或有界上下文,但这并不意味着实现它们的最佳方法总是为每个业务微服务创建单个服务(如ASP.NET Web API)或单个Docker容器。有一条规则说每个业务微服务都必须使用单个服务或容器实现,这太僵化了。因此,业务微服务或有界上下文是

一种逻辑体系结构,可能与物理体系结构重合(或不重合)。重要的一点是,业务微服务或有界上下文必须是自治的,允许代码和状态独立地进行版本控制、部署和扩展。


如图4-8所示,目录业务微服务可以由多个服务或流程组成。这些服务可以是多个ASP.NET Web API服务,也可以是使用HTTP或任何其他协议的任何其他类型的服务。更重要的是,这些服务可以共享相同的数据,只要这些服务对于同一个业务领域是一致的。


具有多个物理服务的业务微服务


示例中的服务共享相同的数据模型,因为Web API服务的目标是与搜索服务相同的数据。因此,在业务微服务的物理实现中,您将拆分该功能,以便可以根据需要放大或缩小每个内部服务。也许Web API服务通常需要比搜索服务更多的实例,反之亦然。

简而言之,微服务的逻辑体系结构并不总是与物理部署体系结构一致。在本指南中,每当我们提到微服务时,我们指的是可以映射到一个或多个(物理)服务的业务或逻辑微服务。在大多数情况下,这将是一个单一的服务,但可能更多。

相关文章
|
10月前
|
Cloud Native Serverless API
微服务架构实战指南:从单体应用到云原生的蜕变之路
🌟蒋星熠Jaxonic,代码为舟的星际旅人。深耕微服务架构,擅以DDD拆分服务、构建高可用通信与治理体系。分享从单体到云原生的实战经验,探索技术演进的无限可能。
微服务架构实战指南:从单体应用到云原生的蜕变之路
|
存储 移动开发 JavaScript
快应用推广连接底层技术与架构以及如何结合自身系统分销的推广逻辑和技术对接-优雅草卓伊凡|果果|Ant
快应用推广连接底层技术与架构以及如何结合自身系统分销的推广逻辑和技术对接-优雅草卓伊凡|果果|Ant
339 4
快应用推广连接底层技术与架构以及如何结合自身系统分销的推广逻辑和技术对接-优雅草卓伊凡|果果|Ant
|
人工智能 搜索推荐 数据安全/隐私保护
快应用推广联盟分销逻辑及技术架构深度解析-优雅草卓伊凡|果果|Ant
快应用推广联盟分销逻辑及技术架构深度解析-优雅草卓伊凡|果果|Ant
448 2
|
缓存 Cloud Native Java
Java 面试微服务架构与云原生技术实操内容及核心考点梳理 Java 面试
本内容涵盖Java面试核心技术实操,包括微服务架构(Spring Cloud Alibaba)、响应式编程(WebFlux)、容器化(Docker+K8s)、函数式编程、多级缓存、分库分表、链路追踪(Skywalking)等大厂高频考点,助你系统提升面试能力。
1630 0
|
Cloud Native Serverless 流计算
云原生时代的应用架构演进:从微服务到 Serverless 的阿里云实践
云原生技术正重塑企业数字化转型路径。阿里云作为亚太领先云服务商,提供完整云原生产品矩阵:容器服务ACK优化启动速度与镜像分发效率;MSE微服务引擎保障高可用性;ASM服务网格降低资源消耗;函数计算FC突破冷启动瓶颈;SAE重新定义PaaS边界;PolarDB数据库实现存储计算分离;DataWorks简化数据湖构建;Flink实时计算助力风控系统。这些技术已在多行业落地,推动效率提升与商业模式创新,助力企业在数字化浪潮中占据先机。
817 12
|
监控 Kubernetes Cloud Native
基于阿里云容器服务Kubernetes版(ACK)的微服务架构设计与实践
本文介绍了如何基于阿里云容器服务Kubernetes版(ACK)设计和实现微服务架构。首先概述了微服务架构的优势与挑战,如模块化、可扩展性及技术多样性。接着详细描述了ACK的核心功能,包括集群管理、应用管理、网络与安全、监控与日志等。在设计基于ACK的微服务架构时,需考虑服务拆分、通信、发现与负载均衡、配置管理、监控与日志以及CI/CD等方面。通过一个电商应用案例,展示了用户服务、商品服务、订单服务和支付服务的具体部署步骤。最后总结了ACK为微服务架构提供的强大支持,帮助应对各种挑战,构建高效可靠的云原生应用。
|
关系型数据库 MySQL Docker
《docker高级篇(大厂进阶):5.Docker-compose容器编排》包括是什么能干嘛去哪下、Compose核心概念、Compose使用三个步骤、Compose常用命令、Compose编排微服务
《docker高级篇(大厂进阶):5.Docker-compose容器编排》包括是什么能干嘛去哪下、Compose核心概念、Compose使用三个步骤、Compose常用命令、Compose编排微服务
1041 24
|
传感器 监控 安全
智慧工地云平台的技术架构解析:微服务+Spring Cloud如何支撑海量数据?
慧工地解决方案依托AI、物联网和BIM技术,实现对施工现场的全方位、立体化管理。通过规范施工、减少安全隐患、节省人力、降低运营成本,提升工地管理的安全性、效率和精益度。该方案适用于大型建筑、基础设施、房地产开发等场景,具备微服务架构、大数据与AI分析、物联网设备联网、多端协同等创新点,推动建筑行业向数字化、智能化转型。未来将融合5G、区块链等技术,助力智慧城市建设。
875 1
|
人工智能 安全 Java
微服务引擎 MSE:打造通用的企业级微服务架构
微服务引擎MSE致力于打造通用的企业级微服务架构,涵盖四大核心内容:微服务技术趋势与挑战、MSE应对方案、拥抱开源及最佳实践。MSE通过流量入口、内部流量管理、服务治理等模块,提供高可用、跨语言支持和性能优化。此外,MSE坚持开放,推动云原生与AI融合,助力企业实现无缝迁移和高效运维。
835 1

热门文章

最新文章