针对云计算的分布式应用执行制造技术

技术编号:37134019 阅读:16 留言:0更新日期:2023-04-06 21:32
本文公开了利用分布式应用执行的云计算技术。一种示例技术包括接收启动应用的命令,并且作为响应,确定与由应用的各个组件使用的数据类型相对应的执行位置。在确定组件中的一个组件将在本地计算设施中执行之后,该示例技术包括从云计算设施向本地计算设施传输在本地计算设施而不是云计算设施中执行该组件中的该一个组件的请求。在由本地计算设施授权之后,从在本地计算设施处被执行的该组件中的该一个组件请求和接收数据,而无需从云计算设施直接访问本地计算设施处的数据源。直接访问本地计算设施处的数据源。直接访问本地计算设施处的数据源。

【技术实现步骤摘要】
【国外来华专利技术】针对云计算的分布式应用执行

技术介绍

[0001]远程或云计算系统通常利用容纳在数据中心中的大量远程服务器来提供计算、存储、网络或其他计算服务。远程服务器可以通过计算机网络互连以形成一个或多个计算集群。计算集群中的每个远程服务器可以托管一个或多个虚拟机(VM)、容器、虚拟交换机、负载均衡器或用于资源共享的其他类型的虚拟化组件。在操作期间,虚拟化组件可以促进应用在云中的执行,以为用户提供计算服务。

技术实现思路

[0002]提供本
技术实现思路
是为了以简化形式介绍一组概念,这些概念将在下面的具体实施方式中进一步描述。本
技术实现思路
不旨在表示所要求保护的主题的关键特征或必要特征,也不旨在用来限制所要求保护的主题的范围。
[0003]云计算可以是高度可伸缩的,同时初始资本投资较低。然而,当应用消费租户不愿意或不能与云服务提供商合法共享的数据时,将某些应用从本地执行迁移到云可能会很困难。例如,银行可以具有分类帐应用,其消费个人身份、金融事务和其他类型的机密数据。法律要求银行完全控制此类数据,因此可能不愿意或无法与云服务提供商共享此类数据。即使银行愿意共享,所共享的机密数据通常也会被模糊到数据可能缺乏用处的程度。另一方面,云服务提供商可能不愿托管此类机密数据,即使是在模糊的情况下也是如此,因为即使是轻微的此类数据泄露也可能导致重罚。因此,将消费租户机密数据的应用部署到云可能很困难。
[0004]此外,租户对机密数据的严格控制或缺乏共享机密数据的意愿可能会限制甚至阻止消费来自多个租户的机密数据的某些应用的部署。例如,可以开发应用来通过消费来自多个银行的金融事务的数据来检测洗钱计划,以便追踪实体在多个银行之间的资金转移。在另一示例中,可以开发应用以将机器学习应用于检测金融市场中多家银行之间的银行事务模式。然而,一家或多家银行可能不愿意甚至在法律上不允许共享此类数据,从而使此类应用无法操作。
[0005]所公开技术的若干实施例可以通过基于应用的各个组件消费的数据类型,在计算框架中实现基于云的应用的分布式执行来解决上述困难的某些方面。在某些实施例中,计算框架可以包括经由诸如互联网的计算机网络互连到本地计算设施的云计算设施。云计算设施可以由云服务提供商(例如,Amazon.com)操作以提供各种云计算服务。本地计算设施可以在订阅由云计算设施提供的一个或多个云计算服务的租户的控制之下。在其他实施例中,计算框架可以包括附加的云和/或本地计算设施和/或其他适当的计算资源。
[0006]在一个实施例中,当开发在云计算设施中执行的应用时,应用的开发器可以基于每个组件所消费的数据类型将该应用划分成多个组件。例如,该应用可以被配置为基于第二用户的购买或浏览历史数据来生成对第一用户的礼物建议。当设计应用时,开发器可以将应用划分为经由数据交换与第二组件互连的第一组件。第一组件可以被配置为从第一用户接收输入数据以及向第一用户提供输出数据。第二组件可以被配置为编译第二用户的购
买或浏览历史的数据,并且基于购买、浏览的频率或其他适当的标准来产生一个或多个礼物建议。因此,第一组件可以被配置为消费来自第一数据源的数据,即,来自第一用户的输入数据,而第二组件可以被配置为消费来自第二数据源的数据,即,第二用户的购买或浏览历史的数据。
[0007]在标识要由应用的组件消费的数据类型之后,开发器可以进一步确定由组件消费的这种数据的位置。在上面的示例中,开发器可以确定第一数据源可以位于云计算设施处,而第二数据源可以位于本地计算设施处(例如,第二用户的膝上型计算机)。在标识第一和第二数据源的位置之后,开发器可以生成用于执行应用的元数据文件。在一个示例中,元数据文件可以为每个组件标识执行位置、作为输入消费的数据和作为输出提供的数据。因此,在上面的示例中,元数据文件可以标识请求数据将从第一组件传输到第二组件,而建议数据将从第二组件传输到第一组件。在其他示例中,元数据文件还可以指示可以检索各种组件的网络位置以及诸如适当的运行时环境参数的其他执行特性。
[0008]基于元数据文件,计算框架可以被配置为在启动应用时在指定位置处部署应用的各种组件。例如,在执行开始期间,云计算设施中的服务器可以基于元数据文件确定第一组件将在云计算设施中执行,而第二组件将在本地计算设施上执行。作为响应,云计算设施中的服务器可以被配置为以这样的方式向本地计算设施传输用于执行应用的第二组件的请求,即所有通信对于本地计算设施处的可信方(例如,管理员)是语义透明的。在某些示例中,该请求可以包括向本地计算设施传输的数据类型的标识和从本地计算设施接收的数据类型的标识。在其他示例中,该请求还可以包括云和本地计算设施之间的数据传输的语法和可验证的语义。例如,该请求可以标识第一类型的数据之后是向本地计算设施传输/从本地计算设施接收的第二类型的数据。
[0009]根据所公开技术的各方面,本地计算设施可以被配置为在分别在云计算设施和本地计算设施处执行的第一和第二组件之间部署控制层。控制层被配置为授权、指导、监控和追踪部署在云和本地计算设施两者处的应用的各种组件之间的所有通信。在部署期间,在接收到来自云计算设施的请求之后,控制层可以被配置为分析从云计算设施接收和向云计算设施传输的数据的类型,并且基于租户在本地计算设施处配置的策略来确定是否允许这些类型的数据的通信。在上面的示例中,控制层可以确定向云计算设施传输诸如iPhone的建议数据符合本地计算设施中的策略。因此,控制层可以授权在本地计算设施中执行第二组件,以便向云计算设施提供规定的建议数据。
[0010]在操作期间,第一组件可以在云计算设施中执行,并且从在本地计算设施中执行的第二组件请求应用数据。控制层可以被配置为接收、检查、记录和路由分别在云和本地计算设施处执行的第一和第二组件之间的所有通信。因此,在云计算设施中执行的应用的组件不具有到在本地计算设施中执行的应用的其他组件的直接链路。例如,控制层可以被配置为从第一组件接收数据,确定该数据是否与元数据文件一致。在确定接收到的数据与元数据文件一致之后,控制层可以将接收到的数据转发到第二组件。类似地,控制层可以被配置为从第二组件接收去往第一组件的数据,并且检查接收到的数据以确定该数据是否符合元数据文件和租户的其他策略。在确定数据符合元数据文件并且不违反租户的任何策略之后,控制层可以被配置为将数据转发到第一组件。否则,控制层可以阻止或转换(例如,通过匿名化)数据被传输到第一组件、发出警报或执行其他适当的动作。控制层还可以记录此类
通信的所有事件,以用于存档、审计或其他适当的用途。此外,控制层可以完全访问至少部分元数据文件的源代码。
[0011]因此,所公开技术的若干实施例可以允许消费租户的机密数据,同时允许租户保持对此类机密数据的严格控制。通过基于组件消费的数据类型将应用划分为组件,开发器可以指定适当的执行位置,租户可以在这些位置维护对所消费的数据的严格控制。通过在本地计算设施处执行消费机密数据的组件,可以避免与云服务提供商共享此类机密数据。相反,本地计算设施仅向云计算设施传输非机密数据。因此,可以本文档来自技高网
...

【技术保护点】

【技术特征摘要】
【国外来华专利技术】1.一种用于计算框架中的分布式应用执行的方法,所述计算框架具有经由计算机网络被互连到云计算设施并且被安全边界分开的租户的本地计算设施,所述方法包括:在所述云计算设施处接收启动针对所述租户的应用的命令,所述应用包括经由数据被彼此互连的多个组件;响应于接收到所述命令,针对所述各个组件确定与由所述各个组件消费的数据的类型相对应的执行位置;以及响应于确定所述组件中的一个组件要在所述本地计算设施中被执行,从所述云计算设施向所述本地计算设施传输用以在所述本地计算设施而不是所述云计算设施中执行所述组件中的所述一个组件的请求;以及在响应于所述请求而由所述本地计算设施授权以执行所述组件中的所述一个组件之后,从在所述本地计算设施处被执行的所述组件中的所述一个组件请求和接收数据,而无需从所述云计算设施直接访问所述本地计算设施处的数据源,所述组件中的所述一个组件从所述数据源消费数据。2.根据权利要求1所述的方法,还包括:响应于确定所述组件中的另一组件要在所述云计算设施中被执行,在所述云计算设施处执行所述应用的所述组件中的所述另一组件;以及其中请求数据包括:利用所执行的所述组件中的所述另一组件来请求来自在所述本地计算设施处被执行的所述组件中的所述一个组件的数据,以用于由所述云计算设施处的所述组件中的所述应用的另一组件消费。3.根据权利要求1所述的方法,还包括:响应于确定所述组件中的另一组件要在所述云计算设施中被执行,在所述云计算设施处执行所述应用的所述组件中的所述另一组件;从在所述本地计算设施处被执行的所述组件中的所述一个组件接收所请求的所述数据;以及在所述云计算设施处利用所述组件中的所述另一组件来处理所接收的所述数据以产生对所述租户的输出。4.根据权利要求1所述的方法,其中确定所述执行位置包括:从所述云计算设施中的数据存储库取回与所述应用相对应的元数据文件,所述元数据文件包括数据,所述数据标识所述应用的所述各个组件以及基于由所述各个组件消费的数据的所述类型而被选择的对应的执行位置;以及基于所述元数据文件中的所述数据,选择针对所述各个组件的所述执行位置。5.根据权利要求1所述的方法,其中:数据的所述类型包括具有第一重要等级的第一类型和具有对所述租户低于所述第一重要等级的第二重要等级的第二类型;以及确定所述执行位置包括:当所述各个组件具有所述第一重要等级时,选择所述本地计算设施以用于执行所述各个组件;以及当所述各个组件具有低于所述第一重要等级的所述第二重要等级时,选择所述云计算设施以用于执行所述各个组件。
6.根据权利要求1所述的方法,其中传输用以执行所述组件中的所述一个组件的所述请求包括传输标识以下项的请求:所述组件中的所述一个组件、所述组件中的所述一个组件从中消费数据的所述数据源、以及要从所述组件中的所述一个组件被传输到所述云计算设施的数据...

【专利技术属性】
技术研发人员:S
申请(专利权)人:微软技术许可有限责任公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1