加上加入门德莱

智能系统和环境的数字孪生范式:行业用例

佩图鲁拉吉,詹伟,英寸 计算机进展2020年

2.14 设想数以百万计的软件服务

随着微服务体系结构(MSA)的加速采用,企业级应用程序正被表示为细粒度、松散耦合、网络可访问、可公开发现、支持API、可组合和轻量级服务的动态集合。这一安排将为从分布式微服务中产生下一代软件应用程序奠定一个令人振奋和可持续的基础。Docker容器、容器编排平台和DevOps等闪烁概念的出现,将引领云原生应用与MSA模式的结合实现。不仅是软件服务,还有硬件系统也被称为服务。也就是说,硬件资源是软件定义的,以便结合急需的灵活性、可操作性和可扩展性。简言之,每一个有形的东西都变得智能,每一个设备都变得更智能,每个人都趋向于成为最聪明的人。

一系列令人愉快的进步所带来的颠覆和变革真的令人着迷。为了产生上下文感知、面向服务、事件驱动、知识填充、以人为中心和云托管的应用程序,IT已经果断地触及了每一个大小实体。数据驱动的洞察力和洞察力驱动的企业无疑是新常态。

阅读整章
网址:https://www.sciencedirect.com/science/article/pii/S0065245819300518

管理集装箱化应用程序

瑞克斯特姆, ...朱莉克雷格,英寸 数字企业中的应用性能管理2017年月日

在云端平衡微服务

集装箱运输在微服务越来越多地使用云计算原生web应用程序的体系结构。Docker、CloudFoundry'sGarden和LXC等集装箱化引擎的引入激发了组织利用该服务作为云可伸缩性的一种手段。因此,集装箱化在云提供商中越来越流行。云计算中容器的最大用户之一是谷歌。据估计,谷歌每秒启动3300个容器,24个 一天7小时 一周几天。那是超过2 每周10亿个集装箱。Google在Ubuntu(一个基于Debian的开源Linux操作系统)上运行其容器堆栈,强调的是性能,而不是易用性。

为了利用这种方法,Google开发了Let Me Contain That For You(LMCTFY),它自己的LXC变体。LMCTFY隔离在一台机器上运行的多个应用程序所使用的资源,并通过平衡过度使用的计算机的需求和批处理工作负载来管理工作负载。事实上,容器可以在服务器上更密集地打包,这在云计算中是一个很大的优势,在云计算中,成功或失败是由整体效率来衡量的。因此,亚马逊网络服务和微软也热情地在他们的云主机上拥抱容器。

阅读整章
网址:https://www.sciencedirect.com/science/article/pii/b97801280040188000139

边缘云——推动移动云的边界

迪江,慧君,英寸 移动云计算2018年月日

6.3.4条 案例研究:自动驾驶汽车

我们建立了一个原型演示系统来探索使用微服务体系结构在探索自主车辆所谓的“排”算法的背景下。纵向排列意味着几辆车形成一个物理上的局部链,在沿着道路行驶时保持接近[241]该系统在我们的VC移动试验台上使用了六台VC卡车[190号].每个移动机器人车辆都是一个独立的物联网子系统,既向其他车辆提供事件服务,又连接到其他服务。事件服务包括数据和控制API。例如,车辆有一个事件流报表状态()提供车辆状态,并可能提供加入()离开()这样,领队车辆可以检查安全约束条件,以决定是否批准车辆加入。

排兵要求车辆运动和位置数据(包括速度和加速度)的连续相互通信,并根据需要频繁调整运动,以保持紧密的排。运动数据来自巡航控制,位置数据来自超声波测距仪。数据通过WiFi上的车辆对车辆(V2V)通信进行交换。我们的排控算法使用一个排导车,它将它的运动数据广播到整个簇,而链中的每一个不同的领队车与后面的邻居交换运动信息。排架计算采用PID控制器根据前置状态以及与前置机的间隔距离来计算期望的速度,并利用领队状态进行调整,以保持整个排的串稳定性,从而防止速度振荡。该排收集传感器读数,并以每秒10次的速度调整目标行驶速度。在较低级别,车辆运动控制器驱动巡航控制来调整或保持车辆速度。在我们的演示中,我们操作6辆VC卡车组成一个排。从零速开始,当领队开始移动时,排成功地达到了匀速(0.2m/s)和预设间隔距离(0.7m)的稳定状态,如中所示图6.7.

图6.7

图6.7.车辆排班微服务间的通信。

微服务体系结构。我们根据分布式微服务体系结构构建了系统,如中所示图6.7.车辆提供的服务被分解为微服务,这些服务以单独的排和状态报告微服务的形式收集相关但松散耦合的服务部分。在现实世界中,除了制造商提供的这些排班服务外,未来的自动化车辆可能还拥有由第三方提供的各种其他微服务,并且每种服务都可以部署在不同的微服务中。

API网关。每辆车都有自己的API网关,它聚合了服务,使微服务的不同部署或管理微服务的独立协议演化变得更简单。此外,API网关可以为配置和实施访问控制策略提供灵活和细粒度的位置。由于排班微服务可以控制关键的安全特性,如车速,并且由于访问的适当性可能取决于非排班微服务自身“拥有”的上下文,因此网关可以是实施强制执行的最合适位置。

容器。机器人车辆配备了运行Hypervisor(KVM)的计算机[164]),这使我们能够灵活地部署微服务。它还为微服务的隔离提供了一个安全边界,这对于速度控制的排队微服务可能特别重要。

通过这个例子,我们展示了微服务架构同样适用于移动物联网系统。在本例中,每辆车都是一个独立的物联网子系统,具有自己的API网关和微服务,其他车辆可以连接到该车并调用其服务。例如,车辆A可提供一个名为“的事件通道车辆a.asu.edu/sensors/LIDAR/scan“曝光它的激光雷达点云框架,以便其他车辆可以分享它的视觉。在这种情况下,对服务api的访问控制对于车辆的安全至关重要。例如,允许像排控微服务这样的可信应用程序控制车辆的运动,而拒绝其他应用程序或外部请求。这可以通过API网关在每辆车上实施的访问控制策略来实现,这种策略可以在部署排班微服务时生成。

阅读整章
网址:https://www.sciencedirect.com/science/article/pii/b97801280964130089

应用程序编程接口和连接的系统

瑞克斯特姆, ...朱莉克雷格,英寸 数字企业中的应用性能管理2017年月日

示例API用例:微服务和应用程序编程接口

微服务是具有API依赖关系的最新应用程序的一个很好的示例。从业务支持的角度来看,微服务体系结构加快新功能和特性的上市时间,因为组件化的外形因素支持应用程序/服务创建的构建块方法。从IT的角度来看,它们支持基于负载的响应式扩展。从发展的角度来看,它们很适合敏捷的与许多公司运行的单一企业应用程序相比,开发和修改速度更快。

通常与集装箱化使用诸如码头工人,容器-基于微服务它们是可移植的,因为它们能够在任何支持Docker的服务器上运行,通常是基于Linux的服务器。在微服务体系结构中,单片应用程序被分解成小服务(或者,新代码作为小服务开发),每个微服务执行一组特定的任务并作为自己的进程运行(请参见图11.2).

图11.2.微服务体系结构支持基于负载的响应式扩展。它们还可以加快新服务的交付,加快新功能和功能的上市时间。

通常被吹捧为适合敏捷业务的新架构模型,微服务形式的软件组件可以通过api连接在一起(编排)。然后,编排的服务作为工作流执行,其方式与传统事务和应用程序的运行方式基本相同(请参见图11.3).

图11.3.微服务通过应用程序编程接口连接编成应用程序/事务。

微服务交付的所有好处都取决于连接它们的api的性能。microservices体系结构用成百上千个基于API的连接取代了单片(或分布式)应用程序交付。从这个角度来看,性能和/或可用性问题必然会发生;唯一的问题是什么时候。这些挑战突出了对集成的生产级网关和APM解决方案的需求,这些解决方案能够支持API连接服务的执行。

阅读整章
网址:https://www.sciencedirect.com/science/article/pii/b97801280040188000115

移动云卸载模型

迪江,慧君,英寸 移动云计算2018年月日

微服务

微服务[100] [179] [261] [214]是独立开发和部署的最小功能服务模块,以及微服务体系结构是一种由微服务组成的分布式软件模块的体系结构,微服务是从成功的现场实践中演变而来的软件工程模式,而不是一种发明的原则。微服务的主要特点包括:小型的、集中的、自包含的组件化服务、松散耦合的体系结构、清晰的上下文边界、与软件体系结构一致的开发团队、分散的治理、针对失败的设计等。这些体系结构特征带来了许多好处,如异构技术的集成能力、连续交付、弹性、可扩展性,最终形成快速演化的体系结构。

微服务模式主要在基于web的大型应用环境中讨论,而物联网系统的研究较少。很有趣看他们有很多相似的特征[70] [172]首先,它们有一个类似的松散耦合架构。一个典型的物联网系统将集成来自不同供应商的许多设备和软件组件,每个设备和组件都有自己的生命周期。其次,大多数物联网系统需要集成在不同硬件设备上实现的异构软件组件。为了应对快速发展的技术,其中一些可能会在不受系统其他部分影响的情况下进行更改或更新。第三,物联网系统中不同软件模块之间的通信通常基于定义良好的面向消息的接口(restapi),这类似于调用服务。第四,他们都试图在实地维持最低限度的部署和管理工作。服务越小,卸载就越容易。尤其是在物联网设备上,它比智能手机更受资源限制,因此可能需要将任务转移到其他设备上。此外,物联网设备的数量可能远大于手机,这就导致了可扩展性研究课题的负担。

阅读整章
网址:https://www.sciencedirect.com/science/article/pii/b978012809641300077

智能系统和环境的数字孪生范式:行业用例

佩图鲁拉吉,龟甲苏里亚纳亚南,英寸 计算机进展2020年

1 介绍

软件定义的云基础设施和数十个集成平台的出现,以及一系列领先的数字技术,如机器和深度学习、流分析、微服务架构(MSA)、容器管理解决方案、分布式和分散的物联网架构、fog或边缘数据分析,5G通信等为全球企业和城市带来了各种数字化颠覆、创新和变革。全球各地建立和维持更智能城市的国家,都拥有改变游戏规则的技术和工具的更快成熟和稳定性。随着ICT(信息和通信技术)领域的不断进步和成就,建立更智能城市的速度和智慧确实值得称赞。由于实现智能城市的异构和多种技术的到来和使用,复杂性不断上升。因此,复杂性缓解和增值技术的采用有助于规划者、决策者和管理者在克服这些复杂因素方面得心应手,从而快速、轻松地创建以人为本、可扩展、适应性强、知识驱动、充满创新、云计算和安全的城市。

重工业机械、数十种个人和专业设备、一群人形机器人和飞行无人机、令人眼花缭乱的国防设备、医疗器械、高度复杂的机械,如卫星、火箭发射器、推土机等,制造业和医疗器械的家族不断壮大,消费电子产品的广泛使用正呈指数级增长。除了额外的能力和能力之外,额外的智能被天生地嵌入到各种机器和设备中,以便在它们指定的操作、产品和输出中优雅地智能化。设备生态系统不断发展,不仅为企业带来了突破性的自动化,也为人们的日常决策、交易和行为带来了一系列突破性的自动化。随着一些流行的小型化技术,设备变得纤细和光滑,时尚和方便,和多方面。为了提供先进的服务,大量的模块在内部和外部都与设备相连。有单板计算机(SBC),它们是嵌入式的和联网的。

通过特定目的和不可知的集成和协调,设备正在变得智能化。设备被表示为支持API的服务。设备被表示为可互操作、可公开发现、可网络访问和可组合的服务。由于设备的多样性和异构性,所有设备的复杂性都会随着服务的启用而大大降低。设备及其功能隐藏在服务api后面。设备集成(无缝和自发)与附近和遥远的基于云的应用程序和数据存储的其他设备的集成导致上下文感知应用程序的实现。

对于这样的设备和产品,有几个重要的目标需要实现。首先,我们必须更深入、果断地了解他们能做什么,以及如何、如何在日常基础上使用它们所涉及的内部和外部风险,它们在不同的情况下如何行动和反应,如果联系在一起可以获得什么样的利益,它的绩效水平和健康状况如何等等。,在实际生产之前。第二个方面是,制造商和最终用户希望连续不断地获得产品状态信息,因为产品数据极大地有助于为产品的下一个版本/发布设计一个可行的和未来的计划。多台机器、大量的数据源、不同的涉众和分布式应用程序不断地与产品交互,以便对产品有一个全面和未来的看法。产品的预防性和预测性维护可以通过实时数据采集和处理来完成,这有助于及时提取可操作的见解。实现设备的远程监控、测量、营销、管理和维护。

数字双胞胎是物理设备的虚拟复制品[1]这些数据科学家和IT专业人员可以在实际设备被实际构建和部署之前运行模拟。数字孪生技术已经超越制造业,并开始与一些新兴技术融合,如物联网、数据湖、人工智能(AI)和数据分析。我们主要关注这个新技术范式的当前和未来用例。

阅读整章
网址:https://www.sciencedirect.com/science/article/pii/S006524581930049X

智能系统和环境的数字孪生范式:行业用例

维迪亚洪古德,森蒂尔库马尔阿鲁纳恰兰,英寸 计算机进展2020年

10 结论

从技术的角度来看,一个成功的长期产品在市场上的关键,主要取决于个人如何利用未来和灵活的技术,选择正确的核心架构模式,如MSA(微服务架构),容器编排平台,如Kubernetes,IMDBG和更多即将推出的技术。

随着物联网和智能光网络越来越普及,边缘计算将获得与之成正比的牵引力。数字孪生对企业业务将具有战略意义,因为企业迫切希望节省数据管理成本,对隐私和安全有更严格的控制,减少互联网负载和减少延迟。edge、云和数字孪生兄弟的结合在物联网和IIoT领域都非常有效。边缘对云不构成威胁。各行业愿意通过虚拟孪生概念实现设备虚拟化,并通过分析模型进入预测孪生模型,以缩短上市时间。为了设计下一代IIoT和IoT应用程序,组织必须花一些时间和精力来接受数字孪生模型。

阅读整章
网址:https://www.sciencedirect.com/science/article/pii/S0065245819300580

移动云服务模型

迪江,慧君,英寸 移动云计算2018年月日

3.4.1条 从事物到分布式微服务

自不到三十年前web发明以来,云计算和web服务应用程序的设计方式(所使用的技术和技术)已经发生了巨大的变化,最近有一种方法被称为微服务体系结构[261]获得了一些著名的追随者,包括Netflix、Linkedin和Amazon[262].

微服务是独立开发和部署的最小功能软件模块。微服务体系结构是通过组合机制部署和连接的微服务的组合。基于微服务的系统的理想特性包括:将较大的服务分解为小的、集中的、自包含的服务、松散耦合和清晰的执行上下文边界。由于这些特性,微服务通常可以部署在称为容器的可移植轻量级执行环境中。甚至云基础设施本身的服务也可以用这种方式开发和部署[156]。从转向微服务的方法中,很多令人兴奋的地方来自于他们对系统和过程质量改进的承诺:改进了系统结构与团队和业务的一致性,更容易使用异构技术集成软件组件,更容易进行系统演化,简化连续交付,提高了弹性和可扩展性[100][214].

阅读整章
网址:https://www.sciencedirect.com/science/article/pii/b978012809641300041

在隐私敏感环境中为数字Me构建云服务

罗伯特艾克曼, ...安德烈亚斯沃特曼,英寸 大数据和云的软件架构2017年月日

12.1 介绍

互联性和普适计算是即将到来的数字化时代的关键组成部分。为了支持这一点,并灵活地跟上新出现的需求,软件正在不断地从全面的桌面应用程序转移到与其他服务互连并利用用户数据提供增值体验的较小服务。这种转变引起了服务用户和服务开发人员的担忧。对于服务开发人员来说,这种设计和体系结构的变化需要设计可伸缩的系统,这些系统可以独立开发和维护。这反映在当前许多软件项目中使用的microservices范例中。微服务体系结构,单个服务贡献了域功能的一小部分。这种微服务体系结构的主干是由提供不同平台功能的独立运行的基本服务构建的。这样的架构为数百万用户提供服务。为了扩大规模,使用云计算技术提供必要的可伸缩性和弹性。由此产生的体系结构可以基于大量的用户数据将不同的服务组合成增值服务。对于服务用户来说,使用增值服务需要向许多不同但部分互联的服务提供个人数据。其中每一个都可以存储数据的副本,并与它们使用的服务共享。这要求用户放弃对其数据的控制,并在各种服务中不断更改其数据。

在本章中,我们将讨论一个以用户为中心的系统体系结构,而不是提供商驱动的服务。为了创建这样的体系结构,我们为开发人员提供了一种模型驱动和生成的方法,支持现有服务的重用,不同数据模型之间的自动转换,以及促进服务组合、用户数据访问控制和用户数据管理的生态系统的集成。为此,我们通过示例激发对灵活组合云服务的需求(第节12.2),在我们确定此类架构的挑战之前(第节12.3). 之后,我们介绍了准备工作(第节)12.4),介绍系统体系结构的概念构建块(第节)12.5),并解释代码生成如何促进组合增值服务的开发(第节)12.6). 后续章节讨论相关工作(第12.7)以及我们的方法(第节)12.8). 最后,我们总结这一贡献(第节)12.9).

阅读整章
网址:https://www.sciencedirect.com/science/article/pii/b978012805467300120

5G驱动程序

斯特凡罗默, ...凯瑟琳穆利根,英寸 5G核心网2020年

2.3.2条 本地云

在过去的几年里,云计算本地架构引起了人们的广泛兴趣,而服务运营商试图模仿所谓的超规模计算(如Facebook、Google、Amazon)所获得的效率,这一领域的兴趣也大大提高。简单地说,web规模应用中使用的架构和技术(基于服务的接口、微服务、容器等)为网络基础设施带来了弹性、健壮性和部署灵活性方面的好处。云原生应用程序和基础设施不应被视为是尚未完全启动和运行的云转换之上的另一个复杂程度;相反,它应该被视为当今电信业正在进行的云转型的自然演变。

因此,云本地策略允许服务提供商通过支持DevOps等实践来加快新服务的开发和部署,而快速扩展或缩小服务的能力允许实时优化资源利用率,以响应流量峰值和一次性事件。

有几种云本地设计原则适用于所有安装,包括:

基础设施不可知:云原生应用程序是独立的,不受任何底层基础设施和资源的影响。

软件分解和生命周期管理:软件被分解成更小、更易于管理的部分,利用微服务体系结构。可以使用CaaS(容器即服务)环境单独部署、缩放和升级每个部件。

弹性:在传统应用程序中,硬件的平均无故障时间(MTBF)一直是衡量恢复能力的基本指标。在云计算中,我们依赖于使用自动伸缩和修复的软件组件的分布和独立性。这意味着应用程序中的故障只会导致暂时的容量损失,而不会升级到完全重新启动和服务丢失。

状态优化设计:我们如何管理状态取决于状态/数据的类型和状态的上下文。因此,没有“一刀切”的方式来处理状态和数据,但应该在性能、弹性和灵活性之间取得平衡。

编排和自动化:云本地应用程序的一个巨大好处是通过例如基于Kubernetes的CaaS层来提高自动化程度。CaaS能够自动扩展微服务,自动修复失败的容器,并在大规模部署之前进行软件升级,包括金丝雀测试(小规模测试)。

阅读整章
网址:https://www.sciencedirect.com/science/article/pii/B9780081030097000028