CN106357735B - 用于操作云计算架构的基础设施层的方法和装置 - Google Patents

用于操作云计算架构的基础设施层的方法和装置 Download PDF

Info

Publication number
CN106357735B
CN106357735B CN201610739045.XA CN201610739045A CN106357735B CN 106357735 B CN106357735 B CN 106357735B CN 201610739045 A CN201610739045 A CN 201610739045A CN 106357735 B CN106357735 B CN 106357735B
Authority
CN
China
Prior art keywords
infrastructure layer
database
interlayer
data
infrastructure
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.)
Active
Application number
CN201610739045.XA
Other languages
English (en)
Other versions
CN106357735A (zh
Inventor
董恒
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.)
Beijing Baidu Netcom Science and Technology Co Ltd
Original Assignee
Beijing Baidu Netcom Science and Technology Co Ltd
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 Beijing Baidu Netcom Science and Technology Co Ltd filed Critical Beijing Baidu Netcom Science and Technology Co Ltd
Priority to CN201610739045.XA priority Critical patent/CN106357735B/zh
Publication of CN106357735A publication Critical patent/CN106357735A/zh
Priority to US15/429,097 priority patent/US10728323B2/en
Application granted granted Critical
Publication of CN106357735B publication Critical patent/CN106357735B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • 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
    • H04L67/1095Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/27Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • 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/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • 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/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/568Storing data temporarily at an intermediate stage, e.g. caching
    • 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/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45579I/O management, e.g. providing access to device drivers or storage
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/80Database-specific techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/805Real-time
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/81Threshold

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Databases & Information Systems (AREA)
  • Computer Security & Cryptography (AREA)
  • Quality & Reliability (AREA)
  • Computing Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本申请公开了用于操作云计算架构的基础设施层的方法和装置。所述方法的一具体实施方式包括:响应于接收到用户通过用户终端发送的对基础设施层的操作请求,确定是否执行操作请求所指示的操作;响应于确定执行操作,则向基础设施层发送操作请求;在基础设施层成功执行操作并更新基础设施层的相关资源后,更新中间层数据库中存储的基础设施层的相关资源的状态;采集基础设施层的相关资源发生变化的数据,并将数据存储到基础设施层数据库中;将基础设施层数据库中的数据同步到中间层数据库中。该实施方式保证中间层存储的数据与基础设施层各服务方数据的一致性,同时也降低基础设施层服务的实现复杂度,减轻基础设施层服务的压力。

Description

用于操作云计算架构的基础设施层的方法和装置
技术领域
本申请涉及计算机技术领域,具体涉及云计算技术领域,尤其涉及用于操作云计算架构的基础设施层的方法和装置。
背景技术
云计算的IAAS(Infrastructure AS A Service,基础架构即服务)通过互联网提供了弹性和按需使用的数据中心、基础架构硬件、软件资源以及管理这些资源的控制台和API(Application Programming Interface,应用程序编程接口)。这些弹性的资源给人们生活和工作以及社会发展带来了巨大贡献和便利,但资源底层(即,基础设施层)实现模块众多,服务分布广泛,各模块间的交互和通信机制不统一,且模块专注原子功能实现,对外接口功能单一。进而导致通过管理控制台和API进行综合管理的性能低、难度大。
用户对自己云资源的管理实际上就是通过云资源提供商提供的控制台或API,灵活购买、查看、释放和批量管理。现有技术在实现云资源的管理时,大体可以有以下几种方案:1、不提供管理控制台和API,用户直接登录自己的云资源进行管理,这种方式下用户需要记录自己的所有资源信息,逐个操作,难度大、效率低。2、底层服务直接暴露原子接口,不对用户隐藏底层实现细节,且让用户自己来组合各种复杂的业务场景。3、借助控制台来管理,但控制台直接与底层服务交互,这种方式隐藏了底层实现细节,但由于控制台要调用多个底层服务和处理多个底层服务的数据,逻辑非常复杂,效率极低。
发明内容
本申请的目的在于提出一种用于操作云计算架构的基础设施层的方法和装置,来解决以上背景技术部分提到的技术问题。
第一方面,本申请提供了一种用于操作云计算架构的基础设施层的方法,所述云计算架构包括提供计算和存储资源的基础设施层以及在基础设施层所提供资源的基础上提供了多种服务的中间层,所述基础设施层包括基础设施层数据库,所述中间层包括中间层数据库,所述方法包括:响应于接收到用户通过用户终端发送的对基础设施层的操作请求,确定是否执行所述操作请求所指示的操作;响应于确定执行所述操作,则向所述基础设施层发送所述操作请求;在所述基础设施层成功执行所述操作并更新所述基础设施层的相关资源后,更新所述中间层数据库中存储的所述基础设施层的相关资源的状态;采集所述基础设施层的相关资源发生变化的数据,并将所述数据存储到所述基础设施层数据库中;将所述基础设施层数据库中的数据同步到所述中间层数据库中。
在一些实施例中,所述确定是否执行所述操作请求所指示的操作,包括:确定所述用户是否具有操作所述基础设施层的权限;响应于确定出所述用户具有操作所述基础设施层的权限,则确定所述基础设施层的相关资源的状态是否允许执行所述操作;响应于确定出所述基础设施层的相关资源的状态允许执行所述操作,则确认执行所述操作。
在一些实施例中,所述操作请求还包括所述操作执行失败后重新执行的最大次数。
在一些实施例中,在所述将所述数据存储到所述基础设施层数据库中之后,所述方法还包括:记录将所述数据存储到所述基础设施层数据库中的时间作为更新时间。
在一些实施例中,在所述将所述基础设施层数据库中的数据同步到所述中间层数据库中之后,所述方法还包括:记录将所述基础设施层数据库中的数据同步到所述中间层数据库中的时间作为同步时间。
在一些实施例中,所述将所述基础设施层数据库中的数据同步到所述中间层数据库中,包括:按照预设的增量同步时间间隔将所述基础设施层数据库中的增量数据同步到所述中间层数据库中,其中,所述增量数据是所述基础设施层数据库在所述更新时间和所述同步时间之间发生变化的数据。
在一些实施例中,所述将所述基础设施层数据库中的数据同步到所述中间层数据库中,包括:按照预设的全量同步时间定时将所述基础设施层数据库中的数据同步到所述中间层数据库中。
第二方面,本申请提供了一种用于操作云计算架构的基础设施层的装置,所述云计算架构包括提供计算和存储资源的基础设施层以及在基础设施层所提供资源的基础上提供了多种服务的中间层,所述基础设施层包括基础设施层数据库,所述中间层包括中间层数据库,所述装置包括:确定单元,配置用于响应于接收到用户通过用户终端发送的对基础设施层的操作请求,确定是否执行所述操作请求所指示的操作;发送单元,配置用于响应于确定执行所述操作,则向所述基础设施层发送所述操作请求;更新单元,配置用于在所述基础设施层成功执行所述操作并更新所述基础设施层的相关资源后,更新所述中间层数据库中存储的所述基础设施层的相关资源的状态;存储单元,配置用于采集所述基础设施层的相关资源发生变化的数据,并将所述数据存储到所述基础设施层数据库中;同步单元,配置用于将所述基础设施层数据库中的数据同步到所述中间层数据库中。
在一些实施例中,所述确定单元进一步配置用于:确定所述用户是否具有操作所述基础设施层的权限;响应于确定出所述用户具有操作所述基础设施层的权限,则确定所述基础设施层的相关资源的状态是否允许执行所述操作;响应于确定出所述基础设施层的相关资源的状态允许执行所述操作,则确认执行所述操作。
在一些实施例中,所述操作请求还包括所述操作执行失败后重新执行的最大次数。
在一些实施例中,所述装置还包括:记录更新时间单元,配置用于在所述将所述数据存储到所述基础设施层数据库中之后,记录将所述数据存储到所述基础设施层数据库中的时间作为更新时间。
在一些实施例中,所述装置还包括:记录同步时间单元,配置用于在所述将所述基础设施层数据库中的数据同步到所述中间层数据库中之后,记录将所述基础设施层数据库中的数据同步到所述中间层数据库中的时间作为同步时间。
在一些实施例中,所述同步单元进一步配置用于:按照预设的增量同步时间间隔将所述基础设施层数据库中的增量数据同步到所述中间层数据库中,其中,所述增量数据是所述基础设施层数据库在所述更新时间和所述同步时间之间发生变化的数据。
在一些实施例中,所述同步单元进一步配置用于:按照预设的全量同步时间定时将所述基础设施层数据库中的数据同步到所述中间层数据库中。
本申请提供的用于操作云计算架构的基础设施层的方法和装置,通过中间层提供的控制台或者API来操作基础设施层的资源,并使中间层数据库的数据与基础设施层数据库的数据同步,当执行查询等操作时只需要访问中间层数据库而不需要和基础设施层的资源进行交互,基于中间层这种利用空间换时间的方式,降低基础设施层服务的实现复杂度,减轻基础设施层服务的压力,使基础设施层服务更专注于原子功能的实现。对用户来说,方便了对云资源的高效购买、查看、释放和管理,减少了管理云资源所花费的时间,提高了用户体验。
附图说明
通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本申请的其它特征、目的和优点将会变得更明显:
图1是本申请可以应用于其中的示例性系统架构图;
图2是根据本申请的用于操作云计算架构的基础设施层的方法的一个实施例的流程图;
图3是根据本申请的用于操作云计算架构的基础设施层的方法的又一个实施例的流程图;
图4是根据本申请的用于操作云计算架构的基础设施层的装置的一个实施例的结构示意图;
图5是适于用来实现本申请实施例的终端设备或服务器的计算机系统的结构示意图。
具体实施方式
下面结合附图和实施例对本申请作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释相关发明,而非对该发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与有关发明相关的部分。
需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本申请。
图1示出了可以应用本申请的用于操作云计算架构的基础设施层的方法或用于操作云计算架构的基础设施层的装置的实施例的示例性系统架构100。
如图1所示,系统架构100可以包括终端设备101、102、103,网络104和服务器105。网络104用以在终端设备101、102、103和服务器105之间提供通信链路的介质。网络104可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。
用户可以使用终端设备101、102、103通过网络104与服务器105交互,以接收或发送消息等。终端设备101、102、103上可以安装有各种通讯客户端应用,例如网页浏览器应用、购物类应用、搜索类应用、即时通信工具、邮箱客户端、社交平台软件、办公软件、企业管理软件等。
终端设备101、102、103可以是具有显示屏并且支持对云服务器的资源进行操作的各种电子设备,包括但不限于智能手机、平板电脑、电子书阅读器、MP3播放器(MovingPicture Experts Group Audio Layer III,动态影像专家压缩标准音频层面3)、MP4(Moving Picture Experts Group Audio Layer IV,动态影像专家压缩标准音频层面4)播放器、膝上型便携计算机和台式计算机等等。
服务器105可以是提供各种服务的服务器,例如对终端设备101、102、103上运行的客户端应用提供支持的云服务器。云服务器可以对接收到的对基础设施层的操作请求等数据进行分析等处理,并将处理结果(例如查询结果)反馈给终端设备。需要说明的是,本申请实施例所提供的用于操作云计算架构的基础设施层的方法一般由服务器105执行,相应地,用于操作云计算架构的基础设施层的装置一般设置于服务器105中。
应该理解,图1中的终端设备、网络和服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端设备、网络和服务器。
继续参考图2,示出了根据本申请的用于操作云计算架构的基础设施层的方法的一个实施例的流程200。所述的用于操作云计算架构的基础设施层的方法,包括以下步骤:
步骤201,响应于接收到用户通过用户终端发送的对基础设施层的操作请求,确定是否执行操作请求所指示的操作。
云计算架构包括三个层次:应用层、中间层和基础设施层。应用层是以友好的用户界面为用户提供所需的各项应用软件和服务,应用层直接面向客户需求,向企业客户提供CRM(Customer Relationship Management,客户关系管理)、ERP(Enterprise ResourcePlanning,企业资源计划)、OA(Office Automation,办公自动化)等企业应用。中间层是承上启下的一层,它在基础设施层所提供资源的基础上为用户提供服务,包括了访问控制、资源管理、数据库和中间件等集群,同时可通过集成API为客户提供定制开发接口。基础设施层是为中间层或者用户提供其所需的计算和存储等资源,并通过虚拟化等技术将资源池化,以实现资源的按需分配和快速部署。
在本实施例中,用于操作云计算架构的基础设施层的方法运行于其上的电子设备(例如图1所示的服务器)可以通过有线连接方式或者无线连接方式从用户利用其进行云资源管理的用户终端接收用户对基础设施层的操作请求,确定是否执行操作请求所指示的操作。云服务器的中间层执行确定是否执行操作请求所指示的操作的步骤,中间层数据库中存储了基础设施层的资源的状态,通过查询中间层数据库可在判断基础设施层的资源的状态,而不需要与基础设施层进行交互。例如,用户通过中间层提供的控制台或API对虚拟机进行重启操作时,中间层收到重启操作指示后要先判断能否执行重启操作。
在本实施例的一些可选的实现方式中,上述确定是否执行该操作请求所指示的操作,包括:确定该用户是否具有操作基础设施层的权限;响应于确定出该用户具有操作基础设施层的权限,则确定基础设施层的相关资源的状态是否允许执行所述操作;响应于确定出基础设施层的相关资源的状态允许执行该操作,则确认执行该操作。例如,当用户发送重启虚拟机的命令时,首先判断该用户是否具有管理员权限,如果该用户只是普通用户则不具备重启虚拟机的权限,对于具有重启虚拟机权限的用户才执行重启的操作。在执行操作前查询中间层数据库中存储的虚拟机目前的状态是否允许执行重启操作,发现不允许的操作时,可以直接由中间层封装提示信息返回给用户,以在用户终端上显示此信息。
在本实施例的一些可选的实现方式中,所述操作请求还包括所述操作执行失败后重新执行的最大次数。为了增加操作成功的几率,若发生超时,则进行重试,重试次数的最大次数可设置为3次,如果重新执行达到最大次数时仍未成功,则由中间层封装提示信息返回给用户,以在用户终端上显示此信息,并终止后续操作。
步骤202,响应于确定执行操作,则向基础设施层发送操作请求。
在本实施例中,中间层在确定可以执行该操作后,向基础设施层发送操作请求。例如,发请求给基础设施层重启虚拟机的接口,完成虚拟机的重启操作。
步骤203,在基础设施层成功执行操作并更新基础设施层的相关资源后,更新中间层数据库中存储的基础设施层的相关资源的状态。
在本实施例中,基础设施层成功执行操作后会更新基础设施层的相关资源,然后通知中间层同步更新中间层数据库中存储的基础设施层的相关资源的状态,以使得中间层存储的基础设施层的相关资源的状态与实际基础设施层的相关资源的状态保持一致。例如,重启虚拟机后,虚拟机原先占用的CPU,物理内存资源状态发生变化,通知中间层同步更新这些资源的状态,并将该虚拟机标识为重启中,同时返回给用户该虚拟机处于重启中。
步骤204,采集基础设施层的相关资源发生变化的数据,并将数据存储到基础设施层数据库中。
在本实施例中,云服务器将基础设施层的相关资源发生变化的数据存储到基础设施层数据库中。例如,重启虚拟机后,将释放的内存资源数据存储到基础设施层数据库中。采用“若存在则更新”的原则,即如果对象信息已经存在,则只更新数据变化的时间和数据最新的状态,保证每台虚拟机或者对象只有一条记录,进而减少每次数据同步时需要读取的数据量,提高同步效率。
步骤205,将基础设施层数据库中的数据同步到中间层数据库中。
在本实施例中,将基础设施层数据库中的数据同步到中间层数据库中,以保持基础设施层数据库与中间层数据库的数据一致性。为了保证数据状态变化延迟的时间足够小,中间层数据同步服务针对每种资源的同步都起了相应的线程,并且对统一资源部分不通过的操作也起了相应的线程,以最大限度的减少用户等待时间。
在本实施例的一些可选的实现方式中,按照预设的全量同步时间定时将所述基础设施层数据库中的数据同步到所述中间层数据库中。例如,预设的全量同步时间为凌晨6点钟,每天凌晨6点时将基础设施层数据库中的数据同步到中间层数据库中。并且可以检测两个数据库中数据的一致性,如果发生不一致时可以按照预设的报警条件进行报警。
本申请的上述实施例提供的方法基于中间层以空间换时间的方式,节约购买、查看、释放和管理云资源所花费的时间,降低基础设施层服务的实现复杂度,并减轻基础设施层服务的压力。
继续参考图3,示出了根据本申请的用于操作云计算架构的基础设施层的方法的又一个实施例的流程300。所述的用于操作云计算架构的基础设施层的方法,包括以下步骤:
步骤301,响应于接收到用户通过用户终端发送的对基础设施层的操作请求,确定是否执行操作请求所指示的操作。
步骤302,响应于确定执行操作,则向基础设施层发送操作请求。
步骤303,在基础设施层成功执行操作并更新基础设施层的相关资源后,更新中间层数据库中存储的基础设施层的相关资源的状态。
步骤304,采集基础设施层的相关资源发生变化的数据,并将数据存储到基础设施层数据库中。
步骤301-304与步骤201-204基本相同,因此不再赘述。
步骤305,记录将数据存储到基础设施层数据库中的时间作为更新时间。
在本实施例中,在将数据存储到基础设施层数据库中后,记录存储的时间作为更新时间,用于后续判断中间层数据库是否要进行同步。
步骤306,将基础设施层数据库中的数据同步到中间层数据库中
步骤306与步骤205基本相同,因此不再赘述。
步骤307,记录将基础设施层数据库中的数据同步到中间层数据库中的时间作为同步时间。
在本实施例中,每次将基础设施层数据库中的数据同步到中间层数据库中后都记录同步时间,作为下一次判断是否需要同步时的依据。
步骤308,按照预设的增量同步时间间隔将基础设施层数据库中的增量数据同步到中间层数据库中。
在本实施例中,可以预先设置增量同步时间间隔,例如,15分钟,每隔15分钟就将基础设施层数据库中的增量数据同步到中间层数据库中,其中,上述增量数据是基础设施层数据库在步骤更新时间和同步时间之间发生变化的数据。例如,上一次中间导数据库同步的时间为8:30,而基础设施层数据库的更新时间为8:40,到了8:45时则进行增量数据同步,如果基础设施层数据库的更新时间仍为8:30,则在8:45时不进行增量数据同步。进行增量同步时,每次到了增量同步时刻无论上一次同步是否完成都会执行增量同步。
在本实施例的一些可选的实现方式中,还可以将数据按照类别设置不同的同步时间间隔,例如,为订单类操作(新建/变配/续费)和非订单类操作(重启/快照/镜像等)设置固定的时间间隔0.5s进行同步,每次同步完成之后间隔0.5s重复执行同步。可以为不同类型的同步方式起不同的线程,以实现最高的吞吐量和最小的同步延迟。还可以采用手动同步以解决发现的少量不一致数据的问题。
从图3中可以看出,与图2对应的实施例相比,本实施例中的用于操作云计算架构的基础设施层的方法的流程300突出了对增量数据进行同步的过程,作为全量的同步的有益补充,可以减少每次数据同步时需要读取的数据量,提高同步的效率。
进一步参考图4,作为对上述各图所示方法的实现,本申请提供了一种用于操作云计算架构的基础设施层的装置的一个实施例,该装置实施例与图2所示的方法实施例相对应,该装置具体可以应用于各种电子设备中。
如图4所示,本实施例所述的用于操作云计算架构的基础设施层的装置400包括:确定单元401、发送单元402、更新单元403、存储单元404和同步单元405。其中,确定单元401配置用于响应于接收到用户通过用户终端发送的对基础设施层的操作请求,确定是否执行所述操作请求所指示的操作;发送单元402配置用于响应于确定执行所述操作,则向所述基础设施层发送所述操作请求;更新单元403配置用于在所述基础设施层成功执行所述操作并更新所述基础设施层的相关资源后,更新所述中间层数据库中存储的所述基础设施层的相关资源的状态;存储单元404配置用于采集所述基础设施层的相关资源发生变化的数据,并将所述数据存储到所述基础设施层数据库中;同步单元405配置用于将所述基础设施层数据库中的数据同步到所述中间层数据库中。
在本实施例中,云计算中间层中的确定单元401对基础设施层的操作请求进行确认后通过发送单元402发送给基础设施层,基础设施层执行完操作后更新单元403更新中间层的存储的资源状态,再通过存储单元404存储变化的数据,最后将基础设施层数据库中的数据同步到中间层数据库中。
在本实施例的一些可选的实现方式中,确定单元401进一步配置用于:确定所述用户是否具有操作所述基础设施层的权限;响应于确定出所述用户具有操作所述基础设施层的权限,则确定所述基础设施层的相关资源的状态是否允许执行所述操作;响应于确定出所述基础设施层的相关资源的状态允许执行所述操作,则确认执行所述操作。
在本实施例的一些可选的实现方式中,上述操作请求还包括所述操作执行失败后重新执行的最大次数。
在本实施例的一些可选的实现方式中,装置400还包括:记录更新时间单元(未示出),配置用于在所述将所述数据存储到所述基础设施层数据库中之后,记录将所述数据存储到所述基础设施层数据库中的时间作为更新时间。
在本实施例的一些可选的实现方式中,装置400还包括:记录同步时间单元(未示出),配置用于在所述将所述基础设施层数据库中的数据同步到所述中间层数据库中之后,记录将所述基础设施层数据库中的数据同步到所述中间层数据库中的时间作为同步时间。
在本实施例的一些可选的实现方式中,同步单元405进一步配置用于:按照预设的增量同步时间间隔将所述基础设施层数据库中的增量数据同步到所述中间层数据库中,其中,所述增量数据是所述基础设施层数据库在所述更新时间和所述同步时间之间发生变化的数据。
在本实施例的一些可选的实现方式中,同步单元405进一步配置用于:按照预设的全量同步时间定时将所述基础设施层数据库中的数据同步到所述中间层数据库中。
下面参考图5,其示出了适于用来实现本申请实施例的服务器的计算机系统500的结构示意图。
如图5所示,计算机系统500包括中央处理单元(CPU)501,其可以根据存储在只读存储器(ROM)502中的程序或者从存储部分508加载到随机访问存储器(RAM)503中的程序而执行各种适当的动作和处理。在RAM 503中,还存储有系统500操作所需的各种程序和数据。CPU 501、ROM 502以及RAM 503通过总线504彼此相连。输入/输出(I/O)接口505也连接至总线504。
以下部件连接至I/O接口505:包括键盘、鼠标等的输入部分506;包括诸如液晶显示器(LCD)等以及扬声器等的输出部分507;包括硬盘等的存储部分508;以及包括诸如LAN卡、调制解调器等的网络接口卡的通信部分509。通信部分509经由诸如因特网的网络执行通信处理。驱动器510也根据需要连接至I/O接口505。可拆卸介质511,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器510上,以便于从其上读出的计算机程序根据需要被安装入存储部分508。
特别地,根据本公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括有形地包含在机器可读介质上的计算机程序,所述计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分509从网络上被下载和安装,和/或从可拆卸介质511被安装。在该计算机程序被中央处理单元(CPU)501执行时,执行本申请的方法中限定的上述功能。
附图中的流程图和框图,图示了按照本申请各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,所述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本申请实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬件的方式来实现。所描述的单元也可以设置在处理器中,例如,可以描述为:一种处理器包括确定单元、发送单元、更新单元、存储单元和同步单元。其中,这些单元的名称在某种情况下并不构成对该单元本身的限定,例如,确定单元还可以被描述为“响应于接收到用户通过用户终端发送的对基础设施层的操作请求,确定是否执行所述操作请求所指示的操作的单元”。
作为另一方面,本申请还提供了一种非易失性计算机存储介质,该非易失性计算机存储介质可以是上述实施例中所述装置中所包含的非易失性计算机存储介质;也可以是单独存在,未装配入终端中的非易失性计算机存储介质。上述非易失性计算机存储介质存储有一个或者多个程序,当所述一个或者多个程序被一个设备执行时,使得所述设备:响应于接收到用户通过用户终端发送的对基础设施层的操作请求,确定是否执行所述操作请求所指示的操作;响应于确定执行所述操作,则向所述基础设施层发送所述操作请求;在所述基础设施层成功执行所述操作并更新所述基础设施层的相关资源后,更新所述中间层数据库中存储的所述基础设施层的相关资源的状态;采集所述基础设施层的相关资源发生变化的数据,并将所述数据存储到所述基础设施层数据库中;将所述基础设施层数据库中的数据同步到所述中间层数据库中。
以上描述仅为本申请的较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本申请中所涉及的发明范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离所述发明构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本申请中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。

Claims (14)

1.一种用于操作云计算架构的基础设施层的方法,其特征在于,所述云计算架构包括提供计算和存储资源的基础设施层以及在基础设施层所提供资源的基础上提供了多种服务的中间层,所述基础设施层包括基础设施层数据库,所述中间层包括中间层数据库,所述方法包括:
所述中间层响应于接收到用户通过用户终端发送的对基础设施层的操作请求,确定是否执行所述操作请求所指示的操作;
所述中间层响应于确定执行所述操作,则向所述基础设施层发送所述操作请求;
所述中间层在所述基础设施层成功执行所述操作并更新所述基础设施层的相关资源后,更新所述中间层数据库中存储的所述基础设施层的相关资源的状态;
所述基础设施层采集所述基础设施层的相关资源发生变化的数据,并将所述数据存储到所述基础设施层数据库中;
所述中间层将所述基础设施层数据库中的数据同步到所述中间层数据库中。
2.根据权利要求1所述的用于操作云计算架构的基础设施层的方法,其特征在于,所述确定是否执行所述操作请求所指示的操作,包括:
确定所述用户是否具有操作所述基础设施层的权限;
响应于确定出所述用户具有操作所述基础设施层的权限,则确定所述基础设施层的相关资源的状态是否允许执行所述操作;
响应于确定出所述基础设施层的相关资源的状态允许执行所述操作,则确认执行所述操作。
3.根据权利要求1所述的用于操作云计算架构的基础设施层的方法,其特征在于,所述操作请求还包括所述操作执行失败后重新执行的最大次数。
4.根据权利要求1所述的用于操作云计算架构的基础设施层的方法,其特征在于,在所述将所述数据存储到所述基础设施层数据库中之后,所述方法还包括:
记录将所述数据存储到所述基础设施层数据库中的时间作为更新时间。
5.根据权利要求4所述的用于操作云计算架构的基础设施层的方法,其特征在于,在所述将所述基础设施层数据库中的数据同步到所述中间层数据库中之后,所述方法还包括:
记录将所述基础设施层数据库中的数据同步到所述中间层数据库中的时间作为同步时间。
6.根据权利要求5所述的用于操作云计算架构的基础设施层的方法,其特征在于,所述将所述基础设施层数据库中的数据同步到所述中间层数据库中,包括:
按照预设的增量同步时间间隔将所述基础设施层数据库中的增量数据同步到所述中间层数据库中,其中,所述增量数据是所述基础设施层数据库在所述更新时间和所述同步时间之间发生变化的数据。
7.根据权利要求1所述的用于操作云计算架构的基础设施层的方法,其特征在于,所述将所述基础设施层数据库中的数据同步到所述中间层数据库中,包括:
按照预设的全量同步时间定时将所述基础设施层数据库中的数据同步到所述中间层数据库中。
8.一种用于操作云计算架构的基础设施层的装置,其特征在于,所述云计算架构包括提供计算和存储资源的基础设施层以及在基础设施层所提供资源的基础上提供了多种服务的中间层,所述基础设施层包括基础设施层数据库,所述中间层包括中间层数据库,所述装置包括:
确定单元,配置用于所述中间层响应于接收到用户通过用户终端发送的对基础设施层的操作请求,确定是否执行所述操作请求所指示的操作;
发送单元,配置用于所述中间层响应于确定执行所述操作,则向所述基础设施层发送所述操作请求;
更新单元,配置用于所述中间层在所述基础设施层成功执行所述操作并更新所述基础设施层的相关资源后,更新所述中间层数据库中存储的所述基础设施层的相关资源的状态;
存储单元,配置用于所述基础设施层采集所述基础设施层的相关资源发生变化的数据,并将所述数据存储到所述基础设施层数据库中;
同步单元,配置用于所述中间层将所述基础设施层数据库中的数据同步到所述中间层数据库中。
9.根据权利要求8所述的用于操作云计算架构的基础设施层的装置,其特征在于,所述确定单元进一步配置用于:
确定所述用户是否具有操作所述基础设施层的权限;
响应于确定出所述用户具有操作所述基础设施层的权限,则确定所述基础设施层的相关资源的状态是否允许执行所述操作;
响应于确定出所述基础设施层的相关资源的状态允许执行所述操作,则确认执行所述操作。
10.根据权利要求8所述的用于操作云计算架构的基础设施层的装置,其特征在于,所述操作请求还包括所述操作执行失败后重新执行的最大次数。
11.根据权利要求8所述的用于操作云计算架构的基础设施层的装置,其特征在于,所述装置还包括:
记录更新时间单元,配置用于在所述将所述数据存储到所述基础设施层数据库中之后,记录将所述数据存储到所述基础设施层数据库中的时间作为更新时间。
12.根据权利要求11所述的用于操作云计算架构的基础设施层的装置,其特征在于,所述装置还包括:
记录同步时间单元,配置用于在所述将所述基础设施层数据库中的数据同步到所述中间层数据库中之后,记录将所述基础设施层数据库中的数据同步到所述中间层数据库中的时间作为同步时间。
13.根据权利要求12所述的用于操作云计算架构的基础设施层的装置,其特征在于,所述同步单元进一步配置用于:
按照预设的增量同步时间间隔将所述基础设施层数据库中的增量数据同步到所述中间层数据库中,其中,所述增量数据是所述基础设施层数据库在所述更新时间和所述同步时间之间发生变化的数据。
14.根据权利要求8所述的用于操作云计算架构的基础设施层的装置,其特征在于,所述同步单元进一步配置用于:
按照预设的全量同步时间定时将所述基础设施层数据库中的数据同步到所述中间层数据库中。
CN201610739045.XA 2016-08-26 2016-08-26 用于操作云计算架构的基础设施层的方法和装置 Active CN106357735B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201610739045.XA CN106357735B (zh) 2016-08-26 2016-08-26 用于操作云计算架构的基础设施层的方法和装置
US15/429,097 US10728323B2 (en) 2016-08-26 2017-02-09 Method and apparatus for operating infrastructure layer in cloud computing architecture

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610739045.XA CN106357735B (zh) 2016-08-26 2016-08-26 用于操作云计算架构的基础设施层的方法和装置

Publications (2)

Publication Number Publication Date
CN106357735A CN106357735A (zh) 2017-01-25
CN106357735B true CN106357735B (zh) 2018-05-22

Family

ID=57854392

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610739045.XA Active CN106357735B (zh) 2016-08-26 2016-08-26 用于操作云计算架构的基础设施层的方法和装置

Country Status (2)

Country Link
US (1) US10728323B2 (zh)
CN (1) CN106357735B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110309176B (zh) * 2018-03-15 2024-04-05 腾讯科技(深圳)有限公司 一种数据处理方法和数据中转站
CN112818054B (zh) * 2020-10-15 2022-05-06 广州南天电脑系统有限公司 数据同步方法、装置、计算机设备和存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104243537A (zh) * 2013-06-24 2014-12-24 中国银联股份有限公司 一种云计算环境下的自动伸缩方法和系统
CN104734954A (zh) * 2015-03-27 2015-06-24 华为技术有限公司 一种用于软件定义网络的路由确定方法和装置
CN105430026A (zh) * 2014-09-04 2016-03-23 中国石油化工股份有限公司 基于多种控制策略的云盘数据同步方法
CN105550025A (zh) * 2015-12-08 2016-05-04 北京航空航天大学 分布式基础设施即服务(IaaS)调度方法及系统
CN105610923A (zh) * 2015-12-23 2016-05-25 北京华康嘉合科技有限公司 一种基于云计算的数据处理系统和方法

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2007117132A1 (en) * 2006-04-07 2007-10-18 Mag Productions Holding B.V. Method and system for synchronization of databases
US9106584B2 (en) * 2011-09-26 2015-08-11 At&T Intellectual Property I, L.P. Cloud infrastructure services
US8977672B2 (en) * 2012-06-08 2015-03-10 Commvault Systems, Inc. Intelligent scheduling for remote computers
US9397884B2 (en) * 2012-09-07 2016-07-19 Oracle International Corporation Workflows for processing cloud services
US9917865B2 (en) * 2012-10-16 2018-03-13 Citrix Systems, Inc. Systems and methods for bridging between public and private clouds through multilevel API integration
US8655307B1 (en) * 2012-10-26 2014-02-18 Lookout, Inc. System and method for developing, updating, and using user device behavioral context models to modify user, device, and application state, settings and behavior for enhanced user security
US20140143349A1 (en) * 2012-11-19 2014-05-22 Jason E. Feser Distributed Architecture Data Transfer System
CN103561078A (zh) * 2013-10-29 2014-02-05 中国联合网络通信集团有限公司 电信运营系统及业务服务方法
CN104010025A (zh) * 2014-03-06 2014-08-27 西安邮电大学 一种信息化公共平台实施架构
US9613190B2 (en) * 2014-04-23 2017-04-04 Intralinks, Inc. Systems and methods of secure data exchange
WO2016025321A1 (en) * 2014-08-13 2016-02-18 OneCloud Labs, Inc. Replication of virtualized infrastructure within distributed computing environments
CN105138543A (zh) * 2015-07-09 2015-12-09 广州杰赛科技股份有限公司 一种数据的存储方法及系统

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104243537A (zh) * 2013-06-24 2014-12-24 中国银联股份有限公司 一种云计算环境下的自动伸缩方法和系统
CN105430026A (zh) * 2014-09-04 2016-03-23 中国石油化工股份有限公司 基于多种控制策略的云盘数据同步方法
CN104734954A (zh) * 2015-03-27 2015-06-24 华为技术有限公司 一种用于软件定义网络的路由确定方法和装置
CN105550025A (zh) * 2015-12-08 2016-05-04 北京航空航天大学 分布式基础设施即服务(IaaS)调度方法及系统
CN105610923A (zh) * 2015-12-23 2016-05-25 北京华康嘉合科技有限公司 一种基于云计算的数据处理系统和方法

Also Published As

Publication number Publication date
US10728323B2 (en) 2020-07-28
CN106357735A (zh) 2017-01-25
US20180063242A1 (en) 2018-03-01

Similar Documents

Publication Publication Date Title
US11146502B2 (en) Method and apparatus for allocating resource
CN106598667B (zh) 用于修复内核漏洞的方法和装置
CN109445802B (zh) 基于容器的私有化Paas平台及其发布应用的方法
US20180307514A1 (en) Transaction orchestration for microservice
CN108304250A (zh) 用于确定运行机器学习任务的节点的方法和装置
US10944816B2 (en) Application placing and scaling
CN105531688B (zh) 提供作为其它服务的资源的服务
US20140280766A1 (en) Method and System for Event State Management in Stream Processing
CN106170777A (zh) 降低基于块的存储的数据卷耐久性状态
US10310900B2 (en) Operating programs on a computer cluster
CN107077301A (zh) 用于存储客户端文件系统的存储卷的动态缩放
TW201229795A (en) Web service patterns for globally distributed service fabric
US20120084253A1 (en) Transaction in memory object store
CN107239279A (zh) 基于电商类PaaS平台系统的订单数据获取和推送方法
CN109150608A (zh) 用于语音对话平台的接口服务升级方法及系统
CN109901918A (zh) 一种处理超时任务的方法和装置
CN106357791A (zh) 业务处理方法、装置及系统
CN106504026A (zh) 一种数据获取方法和装置
CN102880542A (zh) 云计算服务评测系统及评测方法
CN116760705B (zh) 基于综合能源管理系统的多租户平台隔离管理系统及方法
CN106357735B (zh) 用于操作云计算架构的基础设施层的方法和装置
CN110727664A (zh) 用于对公有云数据执行目标操作的方法与设备
CN111666144A (zh) 批处理任务执行方法、系统以及机房部署系统
AU2008203816B2 (en) Message sequence management of enterprise based correlated events
US9047144B2 (en) System and method for providing Quality-of-Services in a multi-event processing environment

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant