CN114586000A - 提供以用户为中心的应用 - Google Patents

提供以用户为中心的应用 Download PDF

Info

Publication number
CN114586000A
CN114586000A CN201980101892.5A CN201980101892A CN114586000A CN 114586000 A CN114586000 A CN 114586000A CN 201980101892 A CN201980101892 A CN 201980101892A CN 114586000 A CN114586000 A CN 114586000A
Authority
CN
China
Prior art keywords
user
service
application
centric
edge
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN201980101892.5A
Other languages
English (en)
Inventor
A·亨特
M·A·路易斯
M·S·阿斯雷亚
S·A·摩根
S·D·沃尔
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hewlett Packard Development Co LP
Original Assignee
Hewlett Packard Development Co LP
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hewlett Packard Development Co LP filed Critical Hewlett Packard Development Co LP
Publication of CN114586000A publication Critical patent/CN114586000A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources
    • G06F9/5072Grid computing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/50Indexing scheme relating to G06F9/50
    • G06F2209/503Resource availability

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

根据本公开的方面,提供了用于提供包括多个服务模块的以用户为中心的应用的方法和装置,该方法包括标识与本地网络中的多个边缘设备中的每一个相关联的可用资源,标识本地网络的第一设备,第一设备供应用户输入服务,标识本地网络的第二设备,第二设备接收输出事件并呈现输出事件以供用户消费,对于每个服务模块,每个服务模块提供以用户为中心的应用的一部分功能性并具有相关联的资源请求,基于相关联的资源请求和所标识的可用资源将服务模块部署到边缘设备,并配置在部署的服务模块、第一设备和第二设备之间的数据流,以实现以用户为中心的应用。

Description

提供以用户为中心的应用
背景技术
诸如台式PC、膝上型计算机、平板计算机和电话之类的个人计算设备是用于以用户为中心的计算的常见设备。它们结合了用于用户输入、用户输出和用于执行应用软件的机制。PC的常见应用包括电子邮件、文字处理、照片观看/编辑、web浏览、观看数字电视、幻灯片演示/编辑、视频或音频会议、计算机辅助设计、PC游戏以及观看/编辑社交媒体。这些PC应用大多涉及由人类用户生成或管理并且由人类用户在其PC上消费的数据内容。
物联网(IoT)设备正在成为家庭、公共场所和商业场所中的普遍存在。IoT设备通常捕获数据,并将其发送以在中央云数据中心中进行处理。以数据为中心的计算的常见应用包括家庭安全、工厂自动化、医疗保健监视、建筑运营、零售和库存运营、物流和智能城市应用。例如,数据可能在工厂中被捕获,并被发送到中央数据中心,以监视工厂的高效运营和/或检测故障状况。大多数情况下,数据是由机器生成/捕获和消费的。
附图说明
从下面结合附图的详细描述中,本公开的各种特征将是清楚的,附图一起图示了本公开的特征,并且其中:
图1图示了根据本公开示例的提供以用户为中心的应用的***;
图2图示了根据本公开示例的图1的***中的边缘设备和IoT设备的布置;
图3图示了根据本公开示例的图1的***中的边缘设备和IoT设备的进一步布置;
图4图示了根据本公开示例的应用;
图5示出了根据本公开示例的方法;和
图6是根据本公开示例的计算机***的示意性框图。
具体实施方式
在以下描述中,出于解释的目的,阐述了某些示例的许多具体细节。说明书中对“示例”或类似语言的引用意味着结合该示例描述的特定特征、结构或特性被包括在至少该一个示例中,但不一定被包括在其他示例中。
虽然个人计算设备提供的能力和应用对许多用户而言仍然重要,但是存在与拥有和维护这样的设备相关联的成本。对于不太频繁用这些应用的用户而言,PC成本可能令人望而却步。
已经使得诸如办公应用、电子邮件、图像处理等很多常用的应用可用作在云服务器上执行的web应用,并且允许经由能够通过web浏览器应用提供对云的访问的任何设备来使用这些应用。然而,由于向中央云数据中心的数据传输的成本和带宽限制,对于某些用例(例如视频处理)而言,使用云应用可能是复杂的。与云服务器的通信可能引入延迟,这对于某些用例而言是不可接受的。此外,对于许多用户而言,与在大型互联网公司运营的云服务器上存储个人数据和文档相关联的隐私问题正变得越来越重要。
类似地,在IoT领域中,传输IoT设备捕获的数据可能引起成本、带宽和隐私问题。为了解决这点,计算***可以在将数据传输到云数据中心之前或者代替于将数据传输到云数据中心而捕获和分析数据。这些计算***包括edge、mist或fog计算***,但是在本文将被称为以数据为中心的计算***。以数据为中心的计算***可以被设计为边缘计算设备和边缘传感器和致动器的集群。
IoT设备可以包括智能电视、智能扬声器等。智能电视可以允许在智能电视的处理资源上安装和运行应用。用户可以使用连接到智能电视的有线或无线I/O***设备(诸如蓝牙键盘或红外遥控器)与安装的应用进行交互。此外,智能电视可以供应能够访问云应用的web浏览器。
智能扬声器可能无法在用户位置处执行任意应用。然而,可以启用可能与某些以用户为中心的应用(诸如天气预报或简单的游戏)重叠的各种技能。然而,这些技能是由在中央云服务器中执行的软件提供的,并且因此可能遭受上面讨论的延迟、带宽和隐私问题。
用于以数据为中心的应用的边缘计算平台可以为将部署到边缘节点的应用软件提供框架,并且从而允许在本地执行消费IoT传感器数据的功能,同时依赖云服务进行管理、分析和存储。这允许在将结果上传到云之前,在IoT设备本地以低延迟做出关于IoT传感器数据的决策。然而,该平台可能严重依赖云来例如定义功能将在其上运行的设备以及它们之间的数据流。该平台可能不适合以用户为中心的应用,在这些应用中,可用的设备取决于个体用户的可变环境,而不是基于云的定义。
本文描述的某些示例提供了允许将用于以人类为中心的输入和输出的IoT组件与为以数据为中心的应用设计的平台技术相组合的方法和设备,以仿真在PC上运行的应用的本地功能性。以用户为中心的应用可以作为多个面向服务的应用模块来提供,这些模块配置数据流并在必要时执行本地计算,以向用户提供类PC的功能性。在以用户为中心的应用中,应用的功能基本上由用户作用于输入机制并响应于输出机制来控制,诸如当用户响应于游戏的状态来控制游戏的进程及其结果时。因此,以用户为中心的应用能够基于用户与该应用的交互向用户提供特定的功能性。这与上面讨论的其中可以在没有任何用户交互的情况下生成、处理和上传数据的边缘计算平台中以数据为中心的应用形成对照。
根据所描述的方法,软件应用被部署到以数据为中心的集群。该应用包括一组服务模块和服务描述符。服务模块可以被部署到集群中的计算设备上的多个执行服务(根据描述符中的执行要求和执行点处的本地可用性)。通过向集群添加另外的计算设备,环境的用户或所有者可以扩展对于部署在那里的应用可用的计算资源。
部署的服务模块可以彼此进行请求和请求集群中已经部署的其他服务,诸如IoT设备提供的用户接口服务。例如,集群中的视频相机可能供应视频流服务,并且智能电视可能供应视频显示服务。如果根据服务描述符的要求,多于一个服务可用于满足服务请求,则可以根据各种策略来建立服务绑定,这些策略包括最小延迟、最大带宽或用户/环境的历史偏好、或者所学习的使用模式。
通过配置网络中在部署的应用服务模块和IoT设备提供的用户接口服务之间的数据流,可以复制在个人计算设备上执行的传统的以用户为中心的应用的行为。以用户为中心的应用可以是来自一组的一个,该组包括但不限于:电子邮件、文字处理、照片观看/编辑、web浏览、观看数字电视、幻灯片演示/编辑、视频或音频会议、计算机辅助设计、PC游戏以及观看/编辑社交媒体。
例如膝上型计算机之类的个人计算设备包括:一组输入传感器,诸如键盘、跟踪板和麦克风;一组输出致动器,诸如显示器和扬声器;处理资源;和网络接口。处理资源可以用于执行应用软件,以在显示器上显示图形用户接口,并且通过扬声器生成声音。用户能够经由输入传感器与用户接口进行交互,例如通过在键盘上键入文本或者使用跟踪板指引光标。所执行的应用还可以经由网络接口和公共互联网与公共云中运行的应用和数据服务交换数据。
图1图示了根据本公开示例的***100,其能够向用户提供与个人计算设备所提供的体验等同的体验。在图1中所示的示例中,边缘集群112包括经由网络通信耦合的多个边缘计算节点120a、120b、120c和边缘中枢节点114。虽然边缘中枢节点114被图示为不同于边缘计算节点120a-120c,但是在一些示例中,中枢节点功能性可以由边缘计算节点120a-120c中的任何一个来提供。替代地,在一些示例中,与中枢节点114相关联的功能性可以跨边缘计算集群112中的多个或所有计算节点分布。边缘中枢节点114包括消息服务116,以促进边缘节点和网络中其他设备之间的通信。
图1的***进一步包括多个用户接口设备,诸如IoT设备。图1中所图示的示例IoT设备包括麦克风102、智能扬声器104、智能电视或显示器106、键盘108和IP相机110。所描述的方法和技术不限于这些示例,而是IoT设备可以包括提供用户接口服务的任何设备,诸如可以使用用户输入接口或输出呈现服务。
边缘中枢节点114进一步耦合到网络网关118,网络网关118例如经由互联网提供与云服务124的通信。
提供以用户为中心的应用功能性的应用可以被部署为边缘计算节点120a、120b、120c中的一个或多个上的微服务或应用服务模块122a、122b、122c的集合。
在一些示例中,提供以用户为中心的应用功能性并且包括应用服务模块122a、122b、122c的集合的应用可以经由网络网关118从云服务124下载到边缘集群112中。应用的下载可以响应于用户经由IoT设备中的一个做出的请求,诸如在智能电视106上启动以用户为中心的应用的请求。附加地,应用可以由云服务124推送到边缘集群112,其例如基于用户的预期使用模式,诸如所调度的呼叫,或者经由云服务做出的对要运行的应用的请求。
在操作中,用户输入事件可以由IoT设备使用消息服务116来发布。微服务(例如服务模块120a)可以订阅发布到消息服务116的相关输入事件。例如,服务模块可以订阅由IoT键盘108发布的“击键”事件,或者由触摸屏显示器发布的触摸事件等。第一服务模块120a可以消费这些事件并生成另外的IoT事件以向用户提供反馈,例如,要在智能电视106上呈现的显示事件。
如同个人计算机一样,用户可以使用由IoT输入传感器提供的类PC的人机接口范例来操作显示器106上显示的用户接口,例如,通过在键盘108上键入文本,以及通过使用诸如鼠标之类的指向设备来指向和点击视觉显示器上的元素。应用服务模块122a-c可以在它们本身之间交换数据,使得每个服务模块可以提供应用的一部分功能性。此外,如果期望,应用服务模块可以经由网络网关118与云服务124中运行的应用和数据服务交换数据。
因此,在越来越多地充满来自多个厂商的IoT和以数据为中心的边缘计算设备的环境中,本公开的示例允许部署以用户为中心的个人计算应用,就像在通用个人计算机上一样,即使在环境中没有这样的个人计算机时也是如此。
例如,在家庭环境中,用户可能具有连接到IoT计算设备的IoT相机,该IoT计算设备在将结果上传到云中的安全服务之前,在本地执行视频数据分析。在相同的环境中,用户可能还具有连接到声控音乐服务的智能扬声器104和智能电视106。
因此,作为由上述技术实现的用例的示例,当用户可能在诸如PC或电话之类的个人计算设备上运行视频会议应用时,用户具有运行虚拟视频会议应用的替代选项,作为在构成IoT基础设施的设备集群上部署的互连服务模块的集合。在这种情况下,将在IoT相机、智能扬声器104、麦克风102和智能电视106之间配置数据流,以利用在边缘计算节点120a-c上执行的处理来捕获本地音频/视频并显示远程音频/视频。
图2图示了根据本公开示例的图1的***100中的边缘设备和IoT设备的示意性表示。在图2中图示的***200中,提供了IoT输入设备202、IoT输出设备204和多个边缘计算节点或设备220a-c。边缘计算节点和边缘计算设备是边缘设备220a-c的示例。IoT设备和边缘计算节点220a-c经由网络218通信耦合。每个边缘计算节点包括某些处理资源206a-c和存储器,例如RAM 208a-c。提供操作***210a-c来管理在边缘计算节点上执行的软件并管理本地硬件功能。边缘计算设备220a-c可以提供类似的资源和公共操作***,即提供同构设备组,或者可以是异构设备组。
IoT输入设备202的示例可以包括键盘108、诸如鼠标、跟踪板或触摸屏的指向设备、麦克风102和IP相机110。IoT输出设备204的示例可以包括诸如智能电视106的显示器和智能扬声器104。
在图2中图示的***200中,边缘计算设备220b包括在另一个边缘设备中不存在的永久存储装置216。在一些示例中,某些边缘计算设备可以被提供有没有普遍提供的其他能力。例如,边缘计算设备可以被提供有图形加速器硬件,即GPU;数字信号处理器;或者神经网络加速器。
第一边缘计算设备220a进一步包括编排模块212。编排模块212可以作为存储在第一边缘计算设备220a的存储器208a中的软件指令来提供,并且使用第一边缘计算节点220a的处理资源206a来执行。编排模块管理服务模块到***200中的边缘计算设备220a-c的部署。在操作中,编排模块与***200中的设备通信,以标识诸如处理、存储、硬件加速器可用性等可用资源,以及还有由网络中IoT设备供应的人机接口服务。特别地,编排模块212标识与本地网络218中的多个边缘计算设备220a-c中的每一个相关联的可用资源,标识与IoT输入设备202相关联的用户输入服务,并且标识可以由IoT输出设备204呈现的输出事件。对本地网络中的可用资源的标识可以通过编排模块212持续地监视可用资源来执行,其例如通过以规律的间隔轮询设备来更新与每个设备相关联的服务和/或资源。
当要运行以用户为中心的应用时,编排模块212获得包括多个服务模块214的应用软件。每个服务模块214提供以用户为中心的应用的一部分功能性。与每个服务模块相关联的是服务模块214为提供与该服务模块相关联的服务而请求的资源的指示。应用服务模块214所请求的资源的指示可以包括用户接口服务请求,该用户接口服务请求指示服务模块214所请求的用户接口服务。例如,相关联的资源请求可以指示特定的服务模块214要接收“击键”事件,向进一步标识的服务模块提供数据,并使用本地永久存储装置来执行。基于相关联的资源请求指示和与被标识为可用的每个边缘计算设备220a-c相关联的资源,编排模块212选择要用于执行应用的每个服务模块214的边缘设备,其例如通过将所请求的处理和存储器与边缘计算节点上的可用性相匹配。
编排模块212将任何具体资源请求考虑在内,例如请求永久存储装置的应用服务模块214b可以被部署到边缘计算设备220b,以便利用存储装置216。服务模块然后可以根据编排模块212做出的选择被部署到边缘计算设备220a-c。此外,编排模块212可以被提供有与已经在每个边缘计算设备220a-c上执行的软件模块相关的当前处理负载的指示。对将用于执行每个特定服务模块214的边缘设备220的选择可以部分地基于边缘计算设备220a-c的当前处理负载,以避免特定边缘计算设备过载。
为了实现应用功能性,编排模块212进一步促进配置部署的服务模块214和IoT设备202、204之间的数据流。例如,如果与服务模块相关联的资源请求指示服务模块应当接收击键事件,则可以配置IoT键盘设备和服务模块之间的数据流。根据一些示例,数据流的配置可以由消息服务116来促进,消息服务116可以由编排模块212来提供。
图3图示了根据本公开示例的包括图1的***100中的边缘设备和IoT设备的***300的替代示意性表示。图3中图示的***300类似于图2的***,但是依赖于分布式编排模块312或层,由此编排功能性跨多个边缘计算设备320a-c分布。图3的与图2中图示的元件公共的元件具有类似的附图标记,其中前导“2”被替换为“3”。
分布式编排模块312可以被提供有共识过程,以允许与每个边缘设备的可用资源相关的信息被交换,并且在将应用服务模块314a-e部署到可用的边缘计算设备320上达成共识。在一些示例中,分布式编排层或模块312本身可以由部署到边缘计算设备320的服务模块组成。
如上面所讨论的,图2和3的边缘计算设备可以作为具有不同能力的一组异构设备来提供。根据一些示例,边缘计算设备可以由具有不同架构和/或操作***的模块来提供。为了促进这种布置,编排模块312可以为服务模块使用的服务提供公共应用编程接口。此外,应用服务模块314a-e可以以容易可重新部署的形式获得,诸如被设计为由边缘计算设备上提供的虚拟机执行的字节码,或者一旦应用服务模块已经被部署就将在所选择的边缘设备上编译的字节码(例如使用即时编译)。每个边缘计算设备可以被提供有合适的执行环境,以支持部署的应用服务模块314a-e。
图4图示了根据本公开示例的应用400。应用400可以提供等同于在个人计算设备上执行的以用户为中心的应用的功能性,诸如用于电子邮件、文字处理、照片观看/编辑、web浏览、观看数字电视、幻灯片演示/编辑、视频或音频会议、计算机辅助设计、PC游戏以及观看/编辑社交媒体等的应用。
应用400包括多个应用服务模块402,各自提供以用户为中心的应用的一部分功能性。每个服务模块提供特定的功能作为具有定义的应用编程接口(API)的服务,以允许网络中的其他实体访问所提供的服务。
例如,第一服务模块402可以处理输入事件,第二服务模块可以提供数据库处理服务,而第三服务模块可以针对呈现图形用户接口(GUI)。与每个服务模块402相关联的是服务模块资源请求404,其提供服务模块402请求执行的资源的指示。例如,对于提供数据库处理服务的服务模块,服务模块资源请求可以指示请求对服务模块的执行而言本地的一定量非易失性存储,而针对呈现GUI的服务模块可以具有指示GPU是期望的但不是必需的相关联请求。
服务模块资源请求404可以进一步提供所请求的人机接口服务的指示,该人机接口服务将由网络中的IoT设备提供,以实现以用户为中心的应用。例如,与第一应用服务模块相关联的资源请求可以指示击键和指向事件被请求作为对该模块的输入,而与第三应用服务模块相关联的资源请求可以指示能够消费和呈现显示流的IoT设备被请求。
此外,服务模块资源请求404可以提供应用服务模块402之间的请求数据流的指示,以实现以用户为中心的应用功能性。例如,第三服务模块可以请求从第一服务模块以高带宽和低延迟向其传递经处理的指向事件的连续流,以便控制GUI。
图5示出了配置包括多个边缘计算设备和用户接口IoT设备的联网***(诸如图1、2或3的***)以实现以用户为中心的应用的方法500。根据图5的方法,编排层312获得包括多个应用服务模块402的应用软件,诸如应用400,其中每个服务模块提供以用户为中心的应用的一部分功能性。编排层312进一步获得与每个应用服务模块402相关联的相关联资源请求404的指示。
编排层312监视网络中可用的资源以及与网络中每个边缘计算设备相关联的可用处理资源,从而标识504处理、存储、硬件加速器资源等的可用性。编排层312进一步标识506由网络中的IoT设备302、304提供的输入/输出用户接口服务。基于相关联的资源请求和网络中所标识的资源,编排层312为每个应用服务模块402选择适当的边缘计算设备320来执行服务模块,并且然后将服务模块部署508到所选择的边缘设备。然后,基于所标识的服务,配置510部署的服务模块和由IoT设备302、304提供的输入/输出服务之间的数据流,以匹配以用户为中心的应用400的输入/输出请求。
因此,在不需要使用个人计算设备的情况下,可以实现从用户接收输入、在本地网络的边缘计算设备处提供应用处理、并且然后经由IoT输出设备将输出提供回用户的以用户为中心的应用,从而有效地仿真使用个人计算设备的体验,同时避免所有权方面涉及的成本。
由于应用处理可以在网络的边缘计算节点或边缘计算设备中本地执行,所以可以以低延迟提供应用功能,并且不依赖于经由互联网到云服务的可靠连接的存在。
所描述的方法允许编排模块根据特定应用的请求来招募不同数量的边缘计算设备。这允许通过变化所使用的边缘集群的边缘计算设备的数量或类型来简单地变化以用户为中心的应用可用的处理功率。这可以允许某些节点在不使用时被置于低功率模式,从而减少浪费的能量。
此外,编排模块312可以能够根据用户的可用性或偏好来变化特定应用所使用的IoT用户接口设备的数量和类型。例如,如果用户期望不需要键盘的应用,则可以从***中省略键盘IoT设备。
新的IoT设备可以容易地添加到网络,并且可以由编排层/模块312自动检测和配置。类似地,当部署或执行单独的应用模块时,可以基于应用的资源请求的变化,以专设方式配置资源和IoT设备。
在存在供应相同类型的用户接口服务的多个IoT设备的情况下,编排模块312可以基于用户偏好或先前的用户活动做出智能选择。例如,当启动视频会议应用时,用户可能偏好在智能电视106上显示视频,但是可能偏好在平板设备屏幕上呈现大量文本以便于阅读的应用。
此外,对于所描述的架构,云开发者对新的以用户为中心的应用的开发可以被显著简化,因为可以从熟悉的微服务开发方法中创建新的类PC应用,其中易于重用应用服务模块,而不需要开发者学习用于开发专用于PC操作***的代码的技术。
如本文描述的某些方法和***可以由处理器来实现,该处理器处理从非暂时性存储介质中检索的程序代码。图6示出了包括耦合到至少一个处理器620的计算机可读存储介质630的设备600的示例。计算机可读介质630可以是能够包含、存储或维护程序和/或数据的任何介质,所述程序和/或数据由指令执行***或用于实现指令的其他***使用或与其结合使用。计算机可读介质可以包括许多物理介质中的任何一种,诸如例如电子、磁、光、电磁或半导体介质。合适的机器可读介质的更具体的示例包括但不限于硬盘驱动器、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器或便携式存储装置,诸如例如USB驱动器或盘。
在图6中,计算机可读存储介质630包括程序代码,以执行如本文描述的方法或实现如本文描述的设备。例如,当被执行时,程序代码可以实现对应于图5中所示示例的方法,即:获得602应用软件作为包括多个应用服务模块的应用;标识604网络中的可用处理资源;标识606网络中IoT设备提供的可用输入/输出用户接口服务;基于所标识的可用资源,将服务模块部署608到网络中的边缘设备;并且配置610在部署的服务模块和IoT设备之间的数据流,以实现以用户为中心的应用。
本说明书(包括任何所附权利要求、摘要和附图)中公开的所有特征可以以任何组合——除了其中一些这样的特征相互排斥的组合——进行组合。除非另有明确声明,否则本说明书(包括任何所附权利要求、摘要和附图)中公开的每个特征可以被用于相同、等同或类似目的的替代特征所替换。因此,除非另有明确声明,否则所公开的每个特征都是一系列一般的等同或类似特征的一个示例。
本教导不限于任何前述示例的细节。可以设想本说明书(包括任何所附权利要求、摘要和附图)中公开的特征的任何新颖组合。权利要求不应被解释为仅覆盖前述示例,而是还覆盖落入权利要求范围内的任何变型。
示例
根据示例1,提供了一种提供包括多个服务模块的以用户为中心的应用的方法,所述方法包括:标识与本地网络中的多个边缘设备中的每一个相关联的可用资源;标识本地网络的第一设备,第一设备供应用户输入服务;标识本地网络的第二设备,第二设备接收输出事件并呈现所述输出事件以供用户消费;对于每个服务模块,每个服务模块提供以用户为中心的应用的一部分功能性并且具有相关联的资源请求;基于相关联的资源请求和所标识的可用资源将服务模块部署到所述多个边缘设备中的边缘设备;以及配置在部署的服务模块、第一设备和第二设备之间的数据流,以实现以用户为中心的应用。
示例2,提供了示例1的方法,其中第二设备包括供应显示服务的显示器,并且其中所述配置数据流进一步包括配置部署的服务模块中的一个以向显示器提供显示输出事件。
示例3,提供了示例1或2的方法,进一步包括从云计算平台获得所述多个服务模块。
示例4,提供了示例1至3中任一个的方法,其中以用户为中心的应用包括电子邮件应用、文字处理应用、图像或照片观看/编辑应用、音频或视频编辑/回放应用、web浏览应用、观看数字电视应用、幻灯片演示/编辑应用、视频或音频会议应用、计算机辅助设计应用、购物/商务应用、PC游戏应用和观看/编辑社交媒体应用中的一个或多个。
示例5,提供了示例3的方法,其中所述获得所述多个服务模块进一步包括响应于经由本地网络的设备接收的对提供以用户为中心的应用的请求,获得所述多个服务模块。
示例6,提供了示例1至5中任一个的方法,其中第一设备包括第一IoT设备,第一IoT设备包括键盘、鼠标、麦克风、跟踪板和相机设备中的一个。
示例7,提供了示例1至6中任一个的方法,进一步包括确定本地网络内没有足够的资源可用于部署所述多个服务模块中的第一服务模块,请求云计算平台提供与由第一服务模块提供的以用户为中心的应用的所述部分功能性相对应的服务,以及配置在部署的服务模块、第一设备、第二设备和云计算平台之间的数据流,以实现以用户为中心的应用。
示例8,提供了示例1至7中任一个的方法,其中与所述多个服务模块中的第一服务模块相关联的资源请求进一步包括相关联的用户接口服务请求,并且其中配置部署的服务模块和第一设备之间的数据流包括基于相关联的用户接口服务请求和由第一设备供应的用户输入服务为第一部署的服务模块配置数据流。
根据示例9,提供了一种计算设备,包括用于与本地网络中的多个边缘节点通信的网络接口、耦合到网络接口的编排模块,所述编排模块用于:标识与本地网络中的所述多个边缘节点中的每一个相关联的可用资源;标识本地网络中的设备,所述设备接收输出事件并呈现所述输出事件以供用户消费;选择所述多个边缘节点中的边缘节点来执行以用户为中心的应用,其中以用户为中心的应用包括多个服务模块,每个服务模块具有相关联的资源请求并提供以用户为中心的应用的一部分功能性,并且其中选择边缘节点以执行以用户为中心的应用进一步包括,对于以用户为中心的应用的每个服务模块,基于所标识的可用资源和服务模块的资源请求,选择所述多个边缘节点中的边缘节点来执行服务模块;将服务模块部署到所选择的边缘节点;以及配置部署的服务模块和设备之间的数据流,以实现以用户为中心的应用。
示例10,提供了示例9的计算设备,进一步包括将计算设备耦合到外部网络的网络网关,其中编排模块进一步经由网络网关从云计算平台获得所述多个服务模块。
示例11,提供了示例9或10的计算设备,进一步包括将计算设备耦合到外部网络的网关,其中编排模块进一步确定本地网络内没有足够的资源可用于部署所述多个服务模块中的第一服务模块,经由网络网关请求云计算平台提供与由第一服务模块提供的以用户为中心的应用的所述部分功能性相对应的服务,并配置部署的服务模块、设备和云计算平台之间的数据流,以实现以用户为中心的应用。
根据示例12,提供了一种本地网络中的异构设备的***,所述***包括示例9至11中任一个的计算设备、多个异构边缘节点、提供用户输入服务的第一设备、接收输出事件并呈现所述输出事件以供用户消费的第二设备,并且其中编排模块进一步标识将由第二设备接收的输出事件,并且配置边缘计算节点、第一设备和第二设备之间的数据流,以实现以用户为中心的应用。
示例13,提供了示例12的***,进一步包括连接到互联网的网络网关,编排模块进一步经由网络网关从云计算服务获得服务模块,并请求云计算服务提供与以用户为中心的应用的一部分功能性相对应的服务。
根据示例14,提供了一种包括指令的非暂时性机器可读介质,当在本地网络的计算设备上执行时,所述指令使得计算设备监视与本地网络中的多个边缘设备中的每一个相关联的可用资源,监视由本地网络中的多个设备供应的输入/输出用户接口服务,将以用户为中心的应用部署到所述多个边缘设备中的边缘设备,其中以用户为中心的应用包括多个服务模块,每个服务模块具有相关联的资源请求并提供以用户为中心的应用的一部分功能性,并且其中部署边缘设备以执行以用户为中心的应用进一步包括,对于每个服务模块,基于相关联的资源请求和所标识的可用资源将所述服务模块部署到所述多个边缘设备中的边缘设备,并且配置部署的服务模块和输入/输出用户接口服务之间的数据流,以实现以用户为中心的应用。
示例15,提供了示例14的非暂时性机器可读介质,其中当在计算设备上执行时,所述指令进一步使得计算设备标识本地网络的第一设备,第一设备提供用户输入服务,标识本地网络的第二设备,第二设备接收输出事件并呈现所述输出事件以供用户消费,并且其中配置部署的服务模块和输入/输出用户接口服务之间的数据流进一步包括配置从第一设备到部署的服务模块中的至少一个服务模块以及从部署的服务模块中的至少一个服务模块到第二设备的数据流,以实现以用户为中心的应用。

Claims (15)

1.一种提供包括多个服务模块的以用户为中心的应用的方法,所述方法包括:
标识与本地网络中的多个边缘设备中的每一个相关联的可用资源;
标识本地网络的第一设备,第一设备供应用户输入服务;
标识本地网络的第二设备,第二设备接收输出事件并呈现所述输出事件以供用户消费;
对于每个服务模块,每个服务模块提供以用户为中心的应用的一部分功能性并且具有相关联的资源请求,基于相关联的资源请求和所标识的可用资源将服务模块部署到所述多个边缘设备中的边缘设备;以及
配置在部署的服务模块、第一设备和第二设备之间的数据流,以实现以用户为中心的应用。
2.根据权利要求1所述的方法,其中第二设备包括供应显示服务的显示器,并且其中所述配置数据流进一步包括配置部署的服务模块中的一个以向显示器提供显示输出事件。
3.根据权利要求1所述的方法,进一步包括从云计算平台获得所述多个服务模块。
4.根据权利要求1所述的方法,其中以用户为中心的应用包括电子邮件应用、文字处理应用、图像或照片观看/编辑应用、音频或视频编辑/回放应用、web浏览应用、观看数字电视应用、幻灯片演示/编辑应用、视频或音频会议应用、计算机辅助设计应用、购物/商务应用、PC游戏应用和观看/编辑社交媒体应用中的一个或多个。
5.根据权利要求3所述的方法,其中所述获得所述多个服务模块进一步包括响应于经由本地网络的设备接收的对提供以用户为中心的应用的请求,获得所述多个服务模块。
6.根据权利要求1所述的方法,其中第一设备包括第一IoT设备,第一IoT设备包括键盘、鼠标、麦克风、跟踪板和相机设备中的一个。
7.根据权利要求1所述的方法,进一步包括:
确定本地网络内没有足够的资源可用于部署所述多个服务模块中的第一服务模块;
请求云计算平台提供与由第一服务模块提供的以用户为中心的应用的所述部分功能性相对应的服务;以及
配置在部署的服务模块、第一设备、第二设备和云计算平台之间的数据流,以实现以用户为中心的应用。
8.根据权利要求1所述的方法,其中与所述多个服务模块中的第一服务模块相关联的资源请求进一步包括相关联的用户接口服务请求,并且其中配置部署的服务模块和第一设备之间的数据流包括基于相关联的用户接口服务请求和由第一设备供应的用户输入服务为第一部署的服务模块配置数据流。
9.一种计算设备,包括:
网络接口,用于与本地网络中的多个边缘节点通信;
耦合到网络接口的编排模块,所述编排模块用于:
标识与本地网络中的所述多个边缘节点中的每一个相关联的可用资源;
标识本地网络中的设备,所述设备接收输出事件并呈现所述输出事件以供用户消费;
选择所述多个边缘节点中的边缘节点来执行以用户为中心的应用,其中以用户为中心的应用包括多个服务模块,每个服务模块具有相关联的资源请求并提供以用户为中心的应用的一部分功能性;并且
其中选择边缘节点以执行以用户为中心的应用进一步包括,对于以用户为中心的应用的每个服务模块,基于所标识的可用资源和服务模块的资源请求,选择所述多个边缘节点中的边缘节点来执行服务模块;
将服务模块部署到所选择的边缘节点;以及
配置部署的服务模块和设备之间的数据流,以实现以用户为中心的应用。
10.根据权利要求9所述的计算设备,进一步包括将计算设备耦合到外部网络的网络网关,其中编排模块进一步经由网络网关从云计算平台获得所述多个服务模块。
11.根据权利要求9所述的计算设备,进一步包括将计算设备耦合到外部网络的网络网关,其中编排模块进一步:
确定本地网络内没有足够的资源可用于部署所述多个服务模块中的第一服务模块;
经由网络网关请求云计算平台提供与由第一服务模块提供的以用户为中心的应用的所述部分功能性相对应的服务;以及
配置部署的服务模块、设备和云计算平台之间的数据流,以实现以用户为中心的应用。
12.一种本地网络中的异构设备的***,所述***包括:
根据权利要求9所述的计算设备;
多个异构边缘节点;
提供用户输入服务的第一设备;
接收输出事件并呈现所述输出事件以供用户消费的第二设备;并且
其中编排模块进一步:
标识将由第二设备接收的输出事件;和
配置边缘计算节点、第一设备和第二设备之间的数据流,以实现以用户为中心的应用。
13.根据权利要求12所述的***,进一步包括连接到互联网的网络网关,编排模块进一步经由网络网关从云计算服务获得服务模块,并请求云计算服务提供与以用户为中心的应用的一部分功能性相对应的服务。
14.一种包括指令的非暂时性机器可读介质,当在本地网络的计算设备上执行时,所述指令使得计算设备:
监视与本地网络中的多个边缘设备中的每一个相关联的可用资源;
监视由本地网络中的多个设备供应的输入/输出用户接口服务;
将以用户为中心的应用部署到所述多个边缘设备中的边缘设备,其中以用户为中心的应用包括多个服务模块,每个服务模块具有相关联的资源请求并提供以用户为中心的应用的一部分功能性;并且
其中部署边缘设备以执行以用户为中心的应用进一步包括,对于每个服务模块,基于相关联的资源请求和所标识的可用资源将所述服务模块部署到所述多个边缘设备中的边缘设备;以及
配置部署的服务模块和输入/输出用户接口服务之间的数据流,以实现以用户为中心的应用。
15.根据权利要求14所述的非暂时性机器可读介质,其中,当在计算设备上执行时,所述指令进一步使得计算设备:
标识本地网络的第一设备,第一设备提供用户输入服务;
标识本地网络的第二设备,第二设备接收输出事件并呈现所述输出事件以供用户消费;并且
其中配置部署的服务模块和输入/输出用户接口服务之间的数据流进一步包括配置从第一设备到部署的服务模块中的至少一个服务模块以及从部署的服务模块中的至少一个服务模块到第二设备的数据流,以实现以用户为中心的应用。
CN201980101892.5A 2019-10-31 2019-10-31 提供以用户为中心的应用 Pending CN114586000A (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/US2019/059091 WO2021086368A1 (en) 2019-10-31 2019-10-31 Providing a user-centric application

Publications (1)

Publication Number Publication Date
CN114586000A true CN114586000A (zh) 2022-06-03

Family

ID=75714680

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201980101892.5A Pending CN114586000A (zh) 2019-10-31 2019-10-31 提供以用户为中心的应用

Country Status (4)

Country Link
US (1) US20230117081A1 (zh)
EP (1) EP3999951A4 (zh)
CN (1) CN114586000A (zh)
WO (1) WO2021086368A1 (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20220206772A1 (en) * 2020-12-30 2022-06-30 Accenture Global Solutions Limited Scalable, robust, and secure multi-tenant edge architecture for mission-critical applications
US11748063B2 (en) 2021-12-30 2023-09-05 Kyndryl, Inc. Intelligent user centric design platform

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11296902B2 (en) * 2017-02-05 2022-04-05 Intel Corporation Adaptive deployment of applications
US11204815B2 (en) * 2017-05-09 2021-12-21 Microsoft Technology Licensing, Llc Creation of modular applications with corresponding twins in the cloud

Also Published As

Publication number Publication date
EP3999951A4 (en) 2023-02-01
WO2021086368A1 (en) 2021-05-06
US20230117081A1 (en) 2023-04-20
EP3999951A1 (en) 2022-05-25

Similar Documents

Publication Publication Date Title
JP5325286B2 (ja) 複数種類のコンピューティングデバイス間で複数の情報形態に対話する装置および方法
JP2015529891A (ja) ユーザー介入なくレイアウトに従った画像識別及び編成
KR102385081B1 (ko) 메신저 내 플랫폼에 추가된 애플리케이션을 이용하여 대화방에서 정보를 공유하는 방법, 시스템, 및 비-일시적인 컴퓨터 판독가능한 기록 매체
CN103988216A (zh) 将感觉功能性集成到社交网络服务和应用程序中
JP6861287B2 (ja) 映像のための効果共有方法およびシステム
CN106416195A (zh) 可操作的通知
US10715584B2 (en) Multiuser application platform
CN109716735A (zh) 用于在于一个或多个应用平台上执行的隔离的应用之间共享应用数据的***和方法
US10460082B2 (en) Digital rights management progressive control and background processing
CN114586000A (zh) 提供以用户为中心的应用
CN105393215A (zh) 视像配置和激活
US10565158B2 (en) Multi-device synchronization for immersive experiences
CN112274910A (zh) 虚拟按键配置方法、虚拟按键方法及相关装置
CN105308563A (zh) ***准备任务的协调
CN108780379B (zh) 设备控制器和查看器
US10679391B1 (en) Mobile phone notification format adaptation
CN113590063A (zh) 第三方控制多媒体呈现的方法
Bernardos et al. Enhancing interaction with smart objects through mobile devices
KR102272802B1 (ko) 디지털 플랫폼 서비스 제공 장치 및 방법
KR20240020917A (ko) 메신저에 저장된 컨텐츠를 재유통할 수 있는 방법, 컴퓨터 장치, 및 컴퓨터 프로그램
CN117149431A (zh) 资源的管理方法、装置及电子设备
Sora Automation monitoring applications for iOS and android mobile devices
CN115888073A (zh) 云游戏的渠道接入方法、装置、计算机设备及存储介质
CN116610306A (zh) 程序开发方法、装置、设备、存储介质及程序产品
KR20100066316A (ko) 주문형 가상머신 제공 시스템 및 방법

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination