移动微服务:构建灵活的普适应用设计理念解析

立即解锁
发布时间: 2025-09-13 01:51:26 阅读量: 3 订阅数: 19 AIGC
### 移动微服务:构建灵活的普适应用设计理念解析 #### 1. 按需绑定微服务 在动态的普适环境中,服务组合的故障往往在发生后才被检测到,从已出现的故障中恢复组合会带来额外的时间和通信成本。按需绑定利用最新的服务信息选择服务提供商,无需额外的环境监控或基础设施维护工作。为了支持可靠的服务组合,并使绑定的服务能顺利无缝地适应上下文变化,对现有按需服务绑定机制进行改进是很有意义的。 为了减少执行延迟,组合过程会选择能够形成最短服务流的服务提供商。此外,每个服务的执行时间也应作为执行延迟的一个因素来考虑。连续服务提供商之间的路由也需要短,以减少调用服务提供商或路由中间执行结果时出现故障的可能性。 - **路径可靠性驱动的选择**:基于路径的健壮性(可靠性)选择服务。路径的健壮性值通过多个标准计算得出,包括每个单独服务的执行时间、服务流的长度以及服务发现期间的路由跳数,这表明剩余执行路径在一段时间内是否可能可靠。 - **按需绑定微服务的概念**:当前的按需绑定方法在服务发现期间将多个功能等效的服务提供商绑定到一个组合过程,并在选择一个服务提供商进行调用后发送令牌消息释放它们。然而,绑定和释放之间的时间间隔虽小,但在此期间许多支持所需功能的服务提供商可能无法用于网络中的其他组合过程。此外,释放服务提供商还会引入流量开销。 为了解决这些问题,提出了一种动态组合覆盖网络,它组织当前参与组合过程的服务提供商。这个动态组合覆盖网络是临时的,仅在组合过程在环境中执行时存在。使用这个覆盖网络,服务提供商仅在需要调用时才被绑定。 #### 2. 服务调用 服务执行过程需要管理可变环境。集中式服务调用虽然在许多解决方案中被研究,但使用中央实体监督服务提供商的执行会限制移动感知能力,从而降低灵活性。分布式服务执行的研究包括以下解决方案: | 方法 | 描述 | 优点 | 缺点 | | --- | --- | --- | --- | | 片段分发 | 将服务组合分解为抽象微服务,并将其作为任务分配给选定的服务提供商,由备份提供商监控执行 | 实现灵活的分散式服务执行 | 服务发现和选择过程仍需中央组合引擎 | | 过程迁移 | 仅划分服务执行过程,将完整组合交给第一个提供商,部分解析后交给后续提供商 | | 难以在目标环境中创建良好的代理网络 | ##### 2.1 片段分发 - [146] 将执行过程分发到一组选定的服务提供商,并维护对其他候选提供商的引用作为备份。备份提供商监控选定提供商的执行,一旦选定提供商失败,备份提供商之一将接管执行过程。 - [51] 针对包含复杂控制逻辑的服务组合,使用依赖表进行分解,将概念性服务组合切片为子过程,每个子过程由一个服务实例实现。 - OSIRIS [160] 将中央概念性组合描述分解为执行片段,并分发给不同的服务提供商,支持复杂控制逻辑,但假设存在一个连续可用的节点来管理并行服务执行。 ##### 2.2 过程迁移方法 - [29] 提出基于分布式代理的服务组合模型,动态选择一组网络实体,将组合过程从一个实体传递到另一个实体。 - WFMS [7] 是一个分散式工作流管理模型,自我描述工作流并将其从一个服务提供商传递到后续服务提供商。 - 延续传递消息 [206] 是一个分散式执行模型,将服务执行过程从原始服务提供商传递到其他提供商,并选择一个节点作为范围管理器处理执行故障。 - 过程实例迁移方法 [207] 将概念性组合的完整控制逻辑分配给每个参与的服务提供商,允许参与者在运行时选择碎片化的粒度,但需要进一步改进以支持分散式组合适应模型。 ##### 2.3 运行时服务公告 过程迁移和片段分发都以分散的方式解决服务调用问题。过程迁移在支持功能服务替换时更灵活,而片段分发可以保护整体数据流不被单个第三方观察。 大多数假设定期服务公告的服务组合方法由于频繁的服务匹配和多跳广播而成本高昂。运行时服务公告区分服务提供商,允许当前参与组合过程的服务提供商分析新服务并决定是否邀请其提供商加入组合。不参与任何组合过程的空闲提供商使用公告消息仅获取本地网络属性的信息,为未来的组合做准备。服务提供商使用单跳广播向网络公告其服务,空闲提供商接收公告消息后,仅计算网络属性,而不调用匹配器启动昂贵的语义服务匹配过程。 下面是服务调用的流程 mermaid 图: ```mermaid graph LR A[服务请求] --> B{选择调用方法} B -->|片段分发| C[分配任务到服务提供商] B -->|过程迁移| D[传递组合过程] C ```
corwn 最低0.47元/天 解锁专栏
买1年送3月
继续阅读 点击查看下一篇
profit 400次 会员资源下载次数
profit 300万+ 优质博客文章
profit 1000万+ 优质下载资源
profit 1000万+ 优质文库回答
复制全文

相关推荐

郑天昊

首席网络架构师
拥有超过15年的工作经验。曾就职于某大厂,主导AWS云服务的网络架构设计和优化工作,后在一家创业公司担任首席网络架构师,负责构建公司的整体网络架构和技术规划。
最低0.47元/天 解锁专栏
买1年送3月
百万级 高质量VIP文章无限畅学
千万级 优质资源任意下载
千万级 优质文库回答免费看

最新推荐

自定义监控新姿势:SQLTracker插件开发实战指南(附SDK下载链接)

![自定义监控新姿势:SQLTracker插件开发实战指南(附SDK下载链接)](https://img-blog.csdnimg.cn/direct/f10ef4471cf34e3cb1168de11eb3838a.png) # 摘要 SQLTracker插件是一款面向分布式系统中SQL性能监控与追踪的扩展工具,旨在提升数据库操作的可观测性与调优效率。本文围绕SQLTracker插件的设计与实现,系统阐述了监控系统的核心原理、插件架构设计、关键技术实现路径及其在实际场景中的应用价值。文章首先分析了分布式监控的基本逻辑与SQL追踪机制,继而详细介绍了插件在SQL拦截、上下文绑定、调用链组

异步调用与回调机制实现:miniRPC进阶开发技巧与事件驱动模型设计

![minirpc:RPC,C,便携式,小型,嵌入式系统](https://itexamanswers.net/wp-content/uploads/2019/08/67.png) # 摘要 本文围绕异步调用与回调机制在miniRPC框架中的设计与实现展开系统研究。首先介绍了异步调用的基本原理与实现策略,分析了事件循环、任务调度机制及其在miniRPC中的具体实现方式。随后,深入探讨了回调机制的设计结构、生命周期管理及其在RPC通信中的集成应用。进一步地,本文结合事件驱动模型,研究了事件总线的构建与跨服务通信的实现方式。最后,针对异步调用与回调机制在实际应用中可能出现的性能瓶颈与稳定性问

【Qt本地数据库构建】:使用SQLite存储历史温度数据详解

![【Qt本地数据库构建】:使用SQLite存储历史温度数据详解](https://duythanhcse.wordpress.com/wp-content/uploads/2013/06/31_sqlite_0.png) # 摘要 本文围绕基于Qt与SQLite数据库的温度数据存储与处理系统展开研究,系统介绍了SQLite数据库的核心特性、数据类型与SQL语法,并详细阐述了其在Qt开发平台中的集成方式。文章重点探讨了温度数据模型的设计与实现过程,包括数据库初始化、数据操作及性能优化策略。同时,结合Qt的数据可视化能力,分析了温度趋势图的绘制、数据导出与异常处理机制。最后,通过完整项目实

【Weibull进阶实战】:三参数模型如何精准匹配复杂工程场景?

![【Weibull进阶实战】:三参数模型如何精准匹配复杂工程场景?](https://community.jmp.com/t5/image/serverpage/image-id/47573i462746AE4105B48C?v=v2) # 摘要 Weibull三参数模型因其在描述寿命、强度及环境数据方面的灵活性和适应性,广泛应用于可靠性工程、材料科学和可再生能源等多个领域。本文系统阐述了Weibull分布的基本理论及其三参数扩展形式,深入探讨了参数估计方法、模型拟合评估标准及其实现技术。结合多个工程实际案例,分析了该模型在寿命预测、结构安全评估与风速建模中的关键应用。同时,本文介绍了

模块化开发实战:AvalonDock与Prism框架整合构建桌面应用终极方案

![模块化开发实战:AvalonDock与Prism框架整合构建桌面应用终极方案](https://docs.devexpress.com/WindowsForms/images/docking2017-customization-dialog127346.png) # 摘要 本文围绕模块化开发与桌面应用架构设计展开,重点研究AvalonDock与Prism框架的整合机制及其在实际开发中的应用。深入分析了AvalonDock的布局系统与窗口管理机制、Prism框架的模块化结构与依赖注入原理,并探讨了两者集成时面临的关键技术挑战。文章提出了基于Prism的功能模块划分策略与接口设计方法,设

LBM网格划分策略揭秘:如何在精度与资源之间找到最佳平衡点?

![10_Rev尺度_REV多孔介质_格子Boltzmann_LBM_多孔介质_源码.rar](https://public.fangzhenxiu.com/fixComment/commentContent/imgs/1687451361941_0ssj5j.jpg?imageView2/0) # 摘要 LBM(格子玻尔兹曼方法)网格划分是复杂流体模拟与工程计算中的关键技术环节,直接影响模拟精度、计算效率与资源消耗。本文系统梳理了LBM网格划分的基本概念与核心挑战,深入分析了各类网格类型及其对数值稳定性和误差控制的影响机制。研究涵盖了从固定网格到自适应网格细化(AMR)等多种划分策略的

Fluent湍流模型调试终极指南:为什么你的结果总不收敛?

![Fluent湍流模型调试终极指南:为什么你的结果总不收敛?](https://d3i71xaburhd42.cloudfront.net/685c7657ea29f0c582b278597ef87aea31b56c8f/2-Figure1-1.png) # 摘要 本文系统探讨了Fluent中湍流模型的基本概念、理论基础、设置调参及收敛性优化策略。首先介绍了湍流的本质特性与主流数值模拟方法的适用性差异,分析了常见湍流模型(如Spalart-Allmaras、k-ε、k-ω及其SST变体)的适用场景与计算表现。随后详细阐述了在Fluent中合理配置湍流模型的关键参数与流程,并针对收敛性问

从采集到决策:ABB RTU在配电网状态感知中的10大挑战与突破

![ABBRTU配电网络自动化应用](https://dahuawiki.com/images/thumb/e/e0/NewGUIScheduleRecord2.png/1000px-NewGUIScheduleRecord2.png) # 摘要 配电网状态感知是实现智能电网运行与管理的基础,而ABB RTU在其中发挥着核心作用。本文系统分析了配电网状态感知的基本原理与关键数据采集要求,深入解析了ABB RTU的功能模块及其在分布式边缘节点中的部署架构。针对RTU在实际应用中面临的挑战,包括数据采集实时性、通信稳定性、环境适应性及边缘计算能力瓶颈,本文探讨了相应的技术突破与创新实践,如高

Matlab RCWA并行计算加速实战:从方案设计到落地实践全流程揭秘

![rcwa.rar_RCWA软件_matlab RCWA_光栅衍射效率_相位光栅_衍射效率](https://media.springernature.com/lw1200/springer-static/image/art%3A10.1038%2Fs41598-018-30284-1/MediaObjects/41598_2018_30284_Fig1_HTML.png) # 摘要 本文围绕Matlab中RCWA(严格耦合波分析)技术的并行化展开研究,系统分析了RCWA算法的基本原理及其在周期结构电磁场分析中的应用。针对传统串行计算效率低下的问题,本文深入探讨了RCWA算法的并行化

GPU加速实战:大气廓线反演算法性能提升10倍的实现路径

![GPU加速实战:大气廓线反演算法性能提升10倍的实现路径](https://www.intel.com/content/dam/developer/articles/technical/gpu-quicksort/gpu-quicksort-code-2.jpg) # 摘要 本文围绕GPU加速技术在大气廓线反演中的应用展开系统研究,介绍了大气辐射传输模型与反演算法的理论基础,分析了传统串行算法在计算效率与内存访问方面的瓶颈。基于GPU的并行架构与CUDA编程模型,本文提出针对反演算法的并行化重构策略,并探讨了内存布局优化、数据传输机制以及数值稳定性的实现方法。通过构建性能评估体系,验