CN107589992A - 一种基于群体智能的容器化应用负载调度方法 - Google Patents
一种基于群体智能的容器化应用负载调度方法 Download PDFInfo
- Publication number
- CN107589992A CN107589992A CN201710652118.6A CN201710652118A CN107589992A CN 107589992 A CN107589992 A CN 107589992A CN 201710652118 A CN201710652118 A CN 201710652118A CN 107589992 A CN107589992 A CN 107589992A
- Authority
- CN
- China
- Prior art keywords
- intelligent body
- micro services
- node
- fitness
- container
- 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.)
- Withdrawn
Links
Landscapes
- Computer And Data Communications (AREA)
Abstract
本发明提供一种基于群体智能的容器化应用负载调度方法,每个节点环境维护多个智能体,各节点环境中的智能体构成一个群体社会,智能体通过各自局部的自主行为自适应微服务请求事件和群体环境状态的变化,通过群体的智能行为来实现整个分布式系统中的微服务的自适应优化分布。本发明所述的方法是完全分布式,无中心控制节点和全局信息;简单易于实施,具有良好的扩展性和鲁棒性,避免了传统负载均衡方法中因为提供控制和全局信息的中心节点失效带来的问题;保证了分布式系统对微服务请求的响应时间,在系统闲暇时间对微服务进行重新分布,使得分布式系统负载均衡。
Description
技术领域
本发明属于云计算与微服务架构领域,具体涉及一种基于群体智能的容器化应用负载调度方法,尤其是在无全局中央控制节点的分布式系统中,实现系统中各节点实时、高效和自治的调整各节点的负载情况,自底向上完成全局最优化的负载均衡。
背景技术
云计算是一种按使用量付费的模式,这种模式提供可用的、便捷的、按需的网络访问,进入可配置的计算资源共享池(资源包括网络,服务器,存储,应用软件,服务),这些资源能够被快速提供,只需投入很少的管理工作,或与服务供应商进行很少的交互。
微服务的基本思想在于考虑围绕着业务领域组件来创建应用,这些就应用可独立地进行开发、管理和加速。在分散的组件中使用微服务云架构和平台使部署、管理和服务功能交付变得更加简单。在微服务架构中,只需要在特定的某种服务中增加所需功能,而不影响整体进程。微服务不需要像普通服务那样成为一种独立的功能或者独立的资源。微服务作为一项在云中部署应用和服务的新技术已成为当下最新的热门话题。企业和服务提供商正在寻找更好的方法将应用程序部署在云环境中,微服务被认为是未来的方向。通过将应用和服务分解成更小的、松散耦合的组件,它们可以更加容易升级和扩展。
容器技术虚拟化技术已经成为一种被大家广泛认可的容器技术服务器资源共享方式,容器技术可以在按需构建容器技术操作系统实例的过程当中为系统管理员提供极大的灵活性。由于hypervisor虚拟化技术仍然存在一些性能和资源使用效率方面的问题,因此出现了一种称为容器技术(Container)的新型虚拟化技术来帮助解决这些问题。
负载均衡是由多台服务器以对称的方式组成一个服务器集合,每台服务器都具有等价的地位,都可以单独对外提供服务而无须其他服务器的辅助。通过某种负载分担技术,将外部发送来的请求均匀分配到对称结构中的某一台服务器上,而接收到请求的服务器独立地回应客户的请求。均衡负载能够平均分配客户请求到服务器列阵,籍此提供快速获取重要数据,解决大量并发访问服务问题。
传统的分布式环境中负载均衡方法在运行时根据全局的统计信息决定请求的优化分布,这种自顶向下的方法已经被证明是NP难问题。我们基于群体智能的算法思想,提出一种自底向上的微服务的自适应分布方法,它通过各节点局部简单行为的累积,完成复杂的负载均衡问题。此方法完全是无中心的,各节点可动态部署微服务,并动态的删除不活跃的微服务,系统保证最小数目的微服务数量以支持容错性,并支持微服务的动态部署,动态地将微服务分布到新增节点上,以实现系统动态负载均衡。
发明内容
本发明提供一种基于群体智能的容器化应用负载调度方法,每个节点环境维护多个智能体,各节点环境中的智能体构成一个群体社会,智能体通过各自局部的自主行为自适应微服务请求事件和群体环境状态的变化,通过群体的智能行为来实现整个分布式系统中的微服务的自适应优化分布。
本发明基于群体智能,通过模拟低等动物群体的行为来进行微服务的重新分布。仿生学对低等动物群体(例如蜂群)的观察发现,在这样的群体环境里不存在任何的控制中心,每个行为主体只有简单的智能,根据对环境的有限感知来进行简单的行为决策,然而通过个体的简单行为在群体上的累积却能完成复杂的任务,这种行为即群体智能。
整个分布式系统由诸多对等关系的节点组成,每个节点有一定的计算资源和一定的存储空间,没有中心节点或者类似全局目录的节点对微服务进行管理,而是通过智能体进行管理。智能体携带着本节点的相关数据信息和计算资源信息,智能体之间通过消息机制(广播、点对点)进行通信,若干个智能体生存在一个节点环境中,从而形成一个由智能体构成的群体社会,协同完成微服务自适应分布操作。
整个分布式系统中的所有微服务按照某种规则划分入Pod中,每个节点保存着一部分微服务。与此同时,为了避免多个请求访问同一微服务而导致的系统性能下降,提高系统的吞吐量,每个节点还选择性(根据服务请求的频率高低)的保存了其它节点上的微服务信息。
本发明基于群体智能算法思想,将微服务分布问题通过多个智能体的集体行为来解决。每一个Pod看作是一个微服务单元,智能体根据历史请求记录管理一个或者多个微服务。进而,每个节点可以被看作由多个智能体组成,这些智能体通过群体智能行为来优化管理整个分布式系统中的所有的微服务及其副本的复制与同步。在本方法中三个主要的元素包括节点环境,Pod及智能体。其中:
节点环境(Node):每个分布式系统中的节点即一个环境,每个节点环境中生存着多个智能体。每个智能体包含若干个相似的微服务,多个智能体在一个节点中组成智能群体社会。节点环境的状态由环境中生存的智能体的适应程度决定。当节点环境接受到微服务请求时,智能体所包含微服务的被访问情况发生改变,智能体对环境的适应程度发生改变,节点环境的状态发生改变,触发其中的智能体执行不同的动作:经常被访问的智能体(或称活跃的智能体)更好的适应环境(例如强强联合,即合并;往外扩张,即迁移),不经常被访问的智能体越来越不适应环境,最后可能导致物种变异(即减小资源分配)甚至消亡(即被删除)。
Pod:微服务分布要解决的问题就是将微服务分布到合适的节点中。每个节点上存在着多个Pod,每个Pod内包含多个微服务。同时,每个Pod根据自身被请求的情况记录被请求服务的统计信息,统计信息为请求发起节点ID及对该Pod请求次数(例如Pod1被节点环境3访问了5次),每个Pod根据被节点环境请求的频率来判断其对环境的适应程度。Pod越频繁地被访问,越适应这个节点。在微服务分布中,不是以Pod为单位进行副本复制,而是以智能体为单位进行复制。根据智能体的适应度将Pod复制到多个节点环境中。
智能体(agent):每个智能体包含若干个相似的微服务,每个智能体根据本身包含的微服务的平均请求情况来决定其对于节点环境的适应程度。若干个智能体生存在一个节点环境中,从而组成一个群体社会。当节点环境状态发生改变时,每个智能体的状态也随即发生改变,智能体根据自身的状态会进行不同的动作,包括合并,迁移,分裂和删除,从而达到微服务的重新分布。
本发明方法的主要步骤如下:
1)service接收到来自用户的请求时,将请求转发至各个微服务;被访问的Pods中的智能体(agent)记录被访问的统计信息;
2)由上述各微服务的访问统计数信息,得到智能体对节点环境的适应度,所述智能体的适应度为其所包含的全部微服务对节点环境适应度的平均值。
3)对节点环境适应状态不同的智能体进行不同的操作:
若智能体对节点环境的适应状态为适应,则合并相似的智能体;所述相似的智能体指适应度差小于合并阈值的智能体;合并后的新智能体向分布式系统发出迁移请求;转入步骤4);若智能体对节点环境的适应状态为不适应,则分裂成多个智能体(PodsScaling),分裂后的新智能体微服务容器(container)的访问统计数信息小于删除阈值时,则删除该智能体。
4)接收迁移请求的节点根据智能体在新节点环境中的适应度和新节点环境中生存的智能体适应度判断是否接收智能体的复制;所述智能体适应度的计算方法同步骤2);若智能体的适应度符合该节点环境,则接受复制,否则拒绝复制。
本发明的优点和积极效果在于:
(1)本发明通过群体智能的视角解决了微服务部署分布的优化问题,通过模拟简单动物群体的行为来有效的解决微服务分布问题。
(2)本方法是完全分布式,无中心控制节点和全局信息。分布式系统中不存在任何的中心控制节点,每个节点无需任何的全局信息,仅需要在节点内部维护一定量的智能体,通过多个智能体的群体行为来完成微服务部署优化。这种方法简单易于实施,具有良好的扩展性和鲁棒性,避免了传统负载均衡方法中因为提供控制和全局信息的中心节点失效带来的问题。
(3)本发明基于事件驱动,异步地进行微服务部署。当节点接收到微服务请求时,先进行服务响应,微服务部署分布方法以较低的优先度执行,这样保证了分布式系统对微服务请求的响应时间,在系统闲暇时间对微服务进行重新分布,使得分布式系统负载均衡。
(4)本方法的实现基于Agent技术。分布式系统为资源共享提供了有效的基础条件,但是在复杂的应用场景中缺乏灵活的决策支持。而Agent在复杂环境中能够感受环境的变化,自主的进行决策,因而能够在分布式系统中有效的模拟和刻画群体智能行为。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1本发明的主要结构示意图;
图2本发明实现微服务自适应的数据流程图;
图3本发明节点状态改变及微服务容器重新分布过程示意图;
图4本发明微服务容器复制请求处理过程。
具体实施方式
下面将参照附图更详细地描述本公开的示例性实施方式。虽然附图中显示了本公开的示例性实施方式,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施方式所限制。相反,提供这些实施方式是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
如图1所示:本发明主要的元素包括节点环境(Node),pod,微服务容器(container)和智能体(agent),下面将以这四者为基础详细介绍基于群体智能的数据副本调整方法的主要步骤。
每个节点环境生存着多个智能体(agent),每个智能体负责管理若干微服务容器,多个智能体在一个节点中组成智能群体社会。节点在分布式网络中的位置是固定的,但是节点的状态在动态变化。当节点接收到用户提交的服务请求时,更新节点环境状态,环境状态的改变将触发环境中智能体进行不同的动作。
每个微服务容器(container)统计被多个节点访问的信息,微服务容器需要维护一个节点访问信息列表。节点访问信息存在一定的生命周期,当微服务容器接收到节点的访问时,微服务容器对于被哪些节点访问的记忆得到增强;随着时间的推移,微服务容器对于被访问节点的记忆逐渐衰减,最终那些不经常访问它的节点访问信息将趋向于零,并从微服务容器访问信息列表中删除。
每个微服务容器根据自身携带的访问信息决定微服务容器对于不同节点环境的适应度。这里的适应度定义为微服务容器被当前所在的节点访问的次数与微服务容器的资源占用率的函数。一个微服务容器越是被节点频繁访问,该微服务容器越是适应对应的节点环境;同时,一个微服务占用的节点资源越少,越是适应节点环境。
节点环境中的不同微服务容器之间存在着相似的访问率与资源占用率。两个微服务容器是相似性的定义为它们被本节点以相近的频率来访问并且资源占用率相近,即它们被本节点访问的次数差值在一个给定的合并阈值之内,且资源占用率相近。
微服务容器并不是直接保存在节点环境中,而是保存在pods中。每个pod是多个微服务容器的存储容器,即微服务容器是通过智能体来和环境发生关系的。每个智能体携带一个或者多个相似的微服务容器,能够感知节点环境的变化,并在网格环境中迁移,最终结果是微服务容器成组的分布在多个节点环境中。
类似于前述的微服务容器适应度,智能体对于不同节点环境也有不同的适应度。智能体的适应度定义为其携带的所有微服务容器的适应度的平均值。当智能体到达一个新的节点环境时,根据微服务容器的访问记录,重新计算每个微服务容器对环境的适应度,最后得到智能体对新环境的适应度。
每个智能体在感知节点环境的变化后,其生存状态也发生改变,并据其对节点环境的适应度执行不同的动作,包括合并,迁移,分裂和死亡。
(1)智能体的合并操作是指在同一个节点环境中,两个相似的智能体合并成一个智能体。从微服务容器存储的角度看,即对微服务容器的集合进行合操作,从而得到一个更大的微服务容器集合。如果两个智能体携带的微服务容器被所在节点访问频率是相似的,则两者可以进行合并操作。
(2)智能体的迁移操作是指智能体在多个节点环境中进行复制。节点环境接收到外来智能体的迁入请求时,计算外来智能体在本节点环境的适应度和生存状态,根据外来智能体在本节点的生存状态来决定是否接受其迁入。
(3)智能体的分裂操作是指智能体内部包含的微服务容器随着访问频率的改变,由原来的相似状态变成不相似时,智能体分裂成多个智能体。每个新产生的智能体内部包含相似的微服务容器。如果智能体的微服务容器的统计数信息小于删除阈值,或一个智能体仅包括一个不适应节点环境的微服务容器时,在保证微服务容器的冗余度前提下,删除该智能体及其携带的微服务容器。
节点环境的状态随时间而变,当节点接受到q次(可调系统参数)服务请求后即可调整状态,以触发其中的智能体进行调整。本实施例将各个智能体对于环境的适应度进行排序并分成三类,即适应,平均,不适应,根据自然界中物竞天择适者生存的观察来进行微服务容器分布,适应的智能体之间进行合并,合并之后的智能体有能力在网格环境中迁移,当其他节点环境接收到智能体的迁移请求时,根据它在新环境中的适应度来决定是否同意复制;不适应的智能体通过分裂成多个新的智能体,如果新生成的智能体仅包含一个微服务容器,且该分片对节点环境的适应度小于删除阈值,删除该智能体及其携带的微服务容器。
下面介绍本发明所使用方法的主要数据结构。
接受到微服务请求的节点(源节点或者请求节点)向其与节点转发服务请求,服务请求表示如下:
MicroService_Request={MicroServiceID,RequestNodeID}
其中MicroServiceID表示完成微服务请求所需的微服务容器ID,RequestNodeID表示接收到微服务请求后进行服务请求转发的节点(请求发起节点)的ID。
每个微服务容器需要维护的主要属性包括数据对象,微服务容器ID,微服务容器被访问信息列表,其中微服务容器被访问信息列表里面的元素可表示成以下形式:
Access_Info={RequestNodeID,AccessCounter}
其中,RequestNodeID表示请求发起节点的ID,AccessCounter表示请求发起节点对该微服务容器的访问计数。
微服务容器表示为:
MicroServiceContainer={DataObject,MicroServiceID,Access_Info_List}
其中DataObject表示微服务容器包含的数据对象,MicroServiceID表示微服务容器ID,Access_Info_List表示该微服务容器被访问信息列表。
每个智能体需要维护的主要属性包括微服务容器列表,所属环境节点ID,对节点环境的适应度,及其对应环境节点的生存状态。每个智能体表示为:
Agent={MicroServiceContainerList,NodeID,Fitness,State}
其中,MicroServiceContainerList表示智能体中包含的微服务容器的列表,NodeID表示该智能体生存的节点环境的ID,Fitness,表示智能体对节点环境的适应度值;State表示智能体对节点环境的生存状态{适应,平均,不适应}。
每个节点环境需要维护的主要属性包括:智能体列表及各种阈值,如微服务访问衰减因子,智能体合并阈值,分裂阈值,删除阈值,副本冗余度。
Node={AgentList,DissipationRate,JoinThreshold,SpliteThreshold,DeleteThreshold,ReplicationFactor}
其中,AgentList表示该节点环境中包含的智能体的列表,DissipationRate表示分片访问衰减因子,JoinThreshold,SpliteThreshold,DeleteThreshold分别表示智能体合并、分裂和删除阈值,ReplicationFactor表示副本冗余度。
本方法是服务请求驱动的,节点对外部空间服务请求的响应是同步的,而智能体分布调整则是异步的,在后台以较低的优先级执行。当节点接收到q次的微服务请求事件后,启动副本调整程序。如图2所示,当节点接受到q次微服务请求后,触发其中的智能体进行微服务容器分布调整动作,包括合并,迁移和分裂、删除。
当节点接受到q次微服务请求事件后,需要对微服务容器进行重新调整,具体步骤如图3所示:
步骤一:节点接受到用户提交的微服务请求时,根据查询请求所需的微服务容器,向网格其余节点转发服务请求;包含所需微服务容器的节点向请求发起节点返回结果,并记录本节点中被访问微服务容器的被访问统计数信息,转步骤二。本方法是服务请求驱动的,节点对外部微服务请求事件的响应是同步的,而微服务容器分布调整则是异步的,在后台以较低的优先级执行。
步骤二:被访问的微服务容器根据请求发起节点的ID来进行被访问信息的更新。
其更新算法如下:
1)微服务容器在Access_Info_List查找是否存在请求发起节点的统计信息,如果存在则增加该条信息的访问计数。
If(Access_Info.RequestNodeID==MicroService_Request.ReqeustNodeID)Access_Info.AccessCounter++
2)如果Access_Info_List中不存在请求发起节点的统计信息,则新建一条该请求发起节点的访问记录,并初始化访问计数为1。
3)对于每个微服务容器,每隔一定的时间间隔,其访问统计计数衰减。AccessCounter=AccessCounter*DissipationRate
4)如果AccessCounter<DisappearThreshold则从Access_Info_List中删除对应的Access_Info其中,DisappearThreshold是系统定义的副本访问信息删除阈值。
步骤三:计算智能体对环境的适应度。具体做法先算出每个微服务容器的适应度,然后计算智能体对环境的适应度。
1)对智能体包含的每个微服务容器i,遍历微服务容器访问信息列表中的访问信息,如果访问信息中节点ID等于当前节点ID,则适应度=访问计数*ln(b/p),其中p为该微服务的资源占用率,b为可调参数,以控制资源占用率与访问计数在适应度中的权重占比。
if(NodeID==Access_Info.RequestNodeID)→fitnessi=Access_Info.AccessCounter*ln(b/p)
2)智能体的适应度计算为其所包含的全部分片的平均适应度:
步骤四:根据智能体的适应度,对节点环境内的全部智能体进行排序,并划分成三种状态:适应,平均,不适应。对于每个智能体,适应度大于等于2/3中值的为适应,适应度小于等于1/3中值的为不适应。相关算法的表示形式如下:
1)If(Agent.Fitness>=2/3中值);即Agent.State=适应;
2)if(Agent.Fitness<=1/3中值);即Agent.State=不适应;
步骤四的具体过程如下:
(1)适合环境的智能体进行合并操作。对于适应的智能体集合,对任意的适应的智能体,找出与之适应度之差最小的智能体,差值小于合并阈值则进行合并。实际中选取的合并阈值视系统运行情况而定,取值范围在0到0.05之间。即它们的差值不大于它们平均适应度的5%。相关算法的表示形式如下:
If(BestMatch.difference<Node.JoinThreshold*
BestMatch.averageFitniss);即AgentJoin
(2)合并后的智能体进行迁移操作。当节点环境的中的智能体进行合并操作后,每个适应的合并智能体向网格环境发出广播或点对点的迁移请求,网格环境的其他节点根据节点环境状态和智能体在节点环境中的适应度判断是否接受副本复制操作。
如图4所示,当另一节点(新节点)接收到智能体的复制请求时:
如果新节点已经存在相同的智能体,则拒绝复制请求;否则重新计算该智能体在新节点的适应度。智能体对新节点环境的适应度的计算方法同上述计算方法:
1)先分别计算智能体中所有微服务容器的适应度:if(NodeID==Access_Info.RequestNodeID);即MicroServiceContainer.fitnessi=Access_Info.AccessCounter
2)再计算智能体的适应度:Agent.Fitness=∑fitnessi/n
如果该智能体的适应度符合本节点环境,则接受该智能体的复制请求,否则拒绝复制。即:If(Agent.Fitness>=2/3中值&&节点有剩余的空间资源),即接受复制请求;else拒绝复制请求。智能体对是否复制到网格系统中其他任意节点环境中的判断方法均一致。
(3)不适合环境的智能体进行分裂操作。对于不适应的智能体,将其所包含的微服务容器的适应度和智能体的适应度进行比较,如果微服务容器的适应度高于智能体的适应度+分裂阈值,则这些微服务容器分成一组;相应的微服务容器适应度低于智能体的适应度-分裂阈值,则这些微服务容器分成另外一组;智能体中上述两组以外的其他微服务容器为一组;相关算法的表示形式如下:
1)If(Fragment.Fitness>Agent.Fitness+SplitThreshold);即MicroServiceContainer->HighGroup;
2)If(MicroServiceContainer.Fitness<Agent.Fitness-SplitThreshold);即MicroServiceContainer->LowGroup;
3)Else为MicroServiceContainer->AverageGroup;
每组微服务容器分别视为创建一个新的智能体,上述不适应环境的智能体中的所有微服务容器均被分裂到新的智能体中,删除原来的智能体。
(4)对节点环境的适应度为平均的智能体,不做任何处理。
步骤五:节点环境对分裂生成的新智能体进行删除检查,如果微服务容器的访问计数小于删除阈值时,在确定能够保证系统中对应副本的冗余度情况下,对该副本进行删除操作,如果一个智能体的全部微服务容器全部被删除,则该智能体被删除。该步骤将对节点环境适应度极低或无法适应节点环境的智能体及其携带的微服务容器删去,有助于优化整个网格系统中的微服务容器信息。
分布式系统中不断同步重复上述操作,节点环境中的不同智能体根据其对节点环境的适应情况自适应的完成了不同的分布形态,实现了分布式架构下基于群体智能的容器化应用的负载调度方法。
以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。
Claims (7)
1.基于群体智能的容器化应用负载调度方法,其步骤包括:
1)所述网格系统中的节点包含多个智能体,每个智能体至少携带一个微服务容器;当某个节点接收到微服务请求时,向分布式系统的其余节点转发访问请求;被访问的微服务容器根据请求发起节点的ID记录被访问的统计数信息;
2)由上述微服务容器的被访问统计数信息,得到智能体对节点环境的适应度,并以此划分智能体在节点环境的生存状态;所述智能体的适应度为其所包含的全部微服务容器对节点环境适应度的平均值;
3)对节点环境生存状态不同的智能体进行不同的分布:
若智能体对节点环境的生存状态为适应,则合并相似的智能体;所述相似智能体指适应度差小于合并阈值的智能体;且合并后的新智能体向网格系统的其他节点发出迁移请求;转入步骤4);
若智能体对节点环境的生存状态为不适应,则分裂为至少两组新智能体;分裂后的新智能体微服务容器的访问统计数信息小于删除阈值或智能体的全部微服务容器删除时,删除该智能体;
4)接收迁移请求的节点中若不存在相同的智能体,则判断迁移智能体在新节点环境的适应度是否符合该节点环境,若符合则接受复制,否则拒绝复制;接收迁移请求的节点若存在相同的智能体,则拒绝复制。
2.如权利要求1所述的基于群体智能的容器化应用负载调度方法,其特征在于:所述微服务容器被访问的统计数信息为请求发起节点ID及对该微服务容器访问次数。
3.如权利要求1所述的基于群体智能的容器化应用负载调度方法,其特征在于:步骤2)中所述微服务容器对节点环境的适应度为微服务容器被当前所在节点访问的次数。
4.如权利要求1所述的基于群体智能的容器化应用负载调度方法,其特征在于,步骤2)中适应度值大于等于2/3的智能体对节点环境的生存状态为适应,适应度值小于等于1/3的智能体为不适应。
5.如权利要求1所述的基于群体智能的容器化应用负载调度方法,其特征在于,步骤3)中的所述合并阈值的范围为0-0.05。
6.如权利要求1所述的基于群体智能的容器化应用负载调度方法,其特征在于,步骤3)中所述合并后的新智能体向分布式系统发出广播或点对点迁移请求。
7.如权利要求1所述的基于群体智能的容器化应用负载调度方法,其特征在于,步骤3)中,一个智能体分裂为3组智能体;将微服务容器适应度大于智能体的适应度加分裂阈值的微服务容器分为一组;微服务容器适应度小于智能体的适应度减分裂阈值的微服务容器分为另一组;智能体中其他的微服务容器为一组。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710652118.6A CN107589992A (zh) | 2017-08-02 | 2017-08-02 | 一种基于群体智能的容器化应用负载调度方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710652118.6A CN107589992A (zh) | 2017-08-02 | 2017-08-02 | 一种基于群体智能的容器化应用负载调度方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN107589992A true CN107589992A (zh) | 2018-01-16 |
Family
ID=61043198
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710652118.6A Withdrawn CN107589992A (zh) | 2017-08-02 | 2017-08-02 | 一种基于群体智能的容器化应用负载调度方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107589992A (zh) |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108628987A (zh) * | 2018-04-28 | 2018-10-09 | 新疆熙菱信息技术股份有限公司 | 高可用负载数据查询方法及系统 |
CN109254859A (zh) * | 2018-09-12 | 2019-01-22 | 中国人民解放军国防科技大学 | 一种多层控制的自适应微服务系统 |
CN109587071A (zh) * | 2018-11-30 | 2019-04-05 | 北京工业大学 | 基于sdn的微服务负载均衡方法 |
CN110083455A (zh) * | 2019-05-07 | 2019-08-02 | 网易(杭州)网络有限公司 | 图计算处理方法、装置、介质及电子设备 |
CN110119308A (zh) * | 2018-02-07 | 2019-08-13 | 北京第一视角科技有限公司 | 管理大规模容器应用的系统 |
CN110895504A (zh) * | 2018-09-12 | 2020-03-20 | 北京京东尚科信息技术有限公司 | 调度仿真系统和调度仿真方法 |
CN111083240A (zh) * | 2019-12-31 | 2020-04-28 | 江苏徐工信息技术股份有限公司 | 一种结合容器技术实现的智能前端引流系统 |
CN111682954A (zh) * | 2019-03-11 | 2020-09-18 | 国际商业机器公司 | 管理微服务的网络 |
CN114900420A (zh) * | 2022-03-28 | 2022-08-12 | 北京工业大学 | 基于群体智能的分布式软件服务保障方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2004066278A3 (en) * | 2003-01-21 | 2006-03-02 | Equallogic Inc | Systems for managing data storage |
CN101504663A (zh) * | 2009-03-17 | 2009-08-12 | 北京大学 | 基于群体智能的空间数据副本自适应分布方法 |
CN102790804A (zh) * | 2012-07-29 | 2012-11-21 | 江苏大学 | 基于移动智能体的无结构对等网络负载均衡方法及系统 |
-
2017
- 2017-08-02 CN CN201710652118.6A patent/CN107589992A/zh not_active Withdrawn
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2004066278A3 (en) * | 2003-01-21 | 2006-03-02 | Equallogic Inc | Systems for managing data storage |
CN101504663A (zh) * | 2009-03-17 | 2009-08-12 | 北京大学 | 基于群体智能的空间数据副本自适应分布方法 |
CN102790804A (zh) * | 2012-07-29 | 2012-11-21 | 江苏大学 | 基于移动智能体的无结构对等网络负载均衡方法及系统 |
Cited By (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110119308A (zh) * | 2018-02-07 | 2019-08-13 | 北京第一视角科技有限公司 | 管理大规模容器应用的系统 |
CN108628987A (zh) * | 2018-04-28 | 2018-10-09 | 新疆熙菱信息技术股份有限公司 | 高可用负载数据查询方法及系统 |
CN109254859A (zh) * | 2018-09-12 | 2019-01-22 | 中国人民解放军国防科技大学 | 一种多层控制的自适应微服务系统 |
CN110895504A (zh) * | 2018-09-12 | 2020-03-20 | 北京京东尚科信息技术有限公司 | 调度仿真系统和调度仿真方法 |
CN109254859B (zh) * | 2018-09-12 | 2021-10-26 | 中国人民解放军国防科技大学 | 一种多层控制的自适应微服务系统 |
CN109587071B (zh) * | 2018-11-30 | 2022-07-05 | 北京工业大学 | 基于sdn的微服务负载均衡方法 |
CN109587071A (zh) * | 2018-11-30 | 2019-04-05 | 北京工业大学 | 基于sdn的微服务负载均衡方法 |
CN111682954B (zh) * | 2019-03-11 | 2023-04-18 | 国际商业机器公司 | 管理微服务的网络的方法、系统和计算机可读介质 |
CN111682954A (zh) * | 2019-03-11 | 2020-09-18 | 国际商业机器公司 | 管理微服务的网络 |
CN110083455A (zh) * | 2019-05-07 | 2019-08-02 | 网易(杭州)网络有限公司 | 图计算处理方法、装置、介质及电子设备 |
CN110083455B (zh) * | 2019-05-07 | 2022-07-12 | 网易(杭州)网络有限公司 | 图计算处理方法、装置、介质及电子设备 |
CN111083240A (zh) * | 2019-12-31 | 2020-04-28 | 江苏徐工信息技术股份有限公司 | 一种结合容器技术实现的智能前端引流系统 |
CN114900420A (zh) * | 2022-03-28 | 2022-08-12 | 北京工业大学 | 基于群体智能的分布式软件服务保障方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107589992A (zh) | 一种基于群体智能的容器化应用负载调度方法 | |
US11150960B2 (en) | Distributed application allocation and communication | |
US11226750B2 (en) | Flexible deprovisioning of distributed storage | |
CN106255967B (zh) | 分布式存储系统中的命名空间管理 | |
CN101504663B (zh) | 基于群体智能的空间数据副本自适应分布方法 | |
AU2016405587B2 (en) | Splitting and moving ranges in a distributed system | |
CN103608796B (zh) | 大规模存储系统 | |
CN109117265A (zh) | 在集群中调度作业的方法、装置、设备及存储介质 | |
CN104919429B (zh) | 存储管理计算机及存储管理方法 | |
CN107548549A (zh) | 分布式计算环境中的资源平衡 | |
CN106462545A (zh) | 可缩放文件存储服务 | |
CN105068755B (zh) | 一种面向云计算内容分发网络的数据副本存储方法 | |
CN106233264A (zh) | 使用可变条带大小的文件存储装置 | |
JP7038204B2 (ja) | 永続性レベル表示器を使用してコンピュータクラスタを管理すること | |
US20120297068A1 (en) | Load Balancing Workload Groups | |
CN103827825A (zh) | 虚拟资源对象组件 | |
JP7389793B2 (ja) | 分散型異種ストレージシステムにおけるデータ一貫性のリアルタイムチェックのための方法、デバイス、およびシステム | |
US20200311142A1 (en) | Spatial Indexing | |
CN105339885B (zh) | 磁盘上数据的小随机更改的高效存储 | |
ES2937818T3 (es) | Sistemas y métodos de aprendizaje automático para la colocación de datos en almacenamiento distribuido | |
CN107179878A (zh) | 基于应用优化的数据存储的方法和装置 | |
CN107018172A (zh) | 用于在分布式缓存存储器中自适应分区的系统和方法 | |
JP2021501399A6 (ja) | 永続性レベル表示器を使用してコンピュータクラスタを管理すること | |
CN105468296B (zh) | 基于虚拟化平台的无共享存储管理方法 | |
US20200311054A1 (en) | Ordered Append-Only Log Based Data Storage |
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 | ||
WW01 | Invention patent application withdrawn after publication | ||
WW01 | Invention patent application withdrawn after publication |
Application publication date: 20180116 |