CN105978744B - 一种资源分配方法、装置及系统 - Google Patents

一种资源分配方法、装置及系统 Download PDF

Info

Publication number
CN105978744B
CN105978744B CN201610591518.6A CN201610591518A CN105978744B CN 105978744 B CN105978744 B CN 105978744B CN 201610591518 A CN201610591518 A CN 201610591518A CN 105978744 B CN105978744 B CN 105978744B
Authority
CN
China
Prior art keywords
target
server node
port
resource allocation
buffer service
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
CN201610591518.6A
Other languages
English (en)
Other versions
CN105978744A (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.)
Inspur Cloud Information Technology Co Ltd
Original Assignee
Inspur Electronic Information Industry 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 Inspur Electronic Information Industry Co Ltd filed Critical Inspur Electronic Information Industry Co Ltd
Priority to CN201610591518.6A priority Critical patent/CN105978744B/zh
Publication of CN105978744A publication Critical patent/CN105978744A/zh
Application granted granted Critical
Publication of CN105978744B publication Critical patent/CN105978744B/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
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0896Bandwidth or capacity management, i.e. automatically increasing or decreasing capacities
    • 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/1097Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
    • 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
    • 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/60Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
    • H04L67/63Routing a service request depending on the request content or context

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer And Data Communications (AREA)

Abstract

本发明提供了一种资源分配方法、装置及系统,方法包括:构建资源分配链表以记录目标缓存服务器系统中服务器节点的标识信息,当前服务器节点中端口的端口号及当前端口的分配状态;接收外部客户端发送的携带缓存服务类型的缓存服务请求指令;查询资源分配链表,确定对应缓存服务类型的至少一个目标服务器节点,以及当前目标服务器节点下处于未分配状态的一个目标端口;向每一个目标服务器节点分别发送携带当前目标服务器节点中目标端口的端口号的资源分配请求指令,以使每一个目标服务器节点分别根据接收的资源分配请求指令中携带的端口号,启动目标端口对应的缓存服务进程。通过本发明的技术方案,可提高缓存服务器系统的资源利用率。

Description

一种资源分配方法、装置及系统
技术领域
本发明涉及计算机技术领域,特别涉及一种资源分配方法、装置及系统。
背景技术
随着互联网技术的不断发展,云计算作为一种基于互联网的计算服务模式也得到广泛的应用,云计算平台可根据用户的实际业务需求为用户提供数据缓存等服务;具备高可靠性的海量数据缓存服务对于云计算平台来说却是一个巨大的挑战,传统的关系型数据库往往很难满足该需求,通常需要利用具备多个服务器节点的缓存服务器系统搭载Key-value数据库(比如Redis)来实现高可靠性的海量数据缓存服务。
但是,由于Redis等Key-value数据库没有租户概念及分布式计算功能,这导致搭载有Key-value数据库的缓存服务器系统无法向其他用户提供缓存服务,服务器系统的资源利用率较低。
发明内容
本发明实施例提供了一种资源分配方法、装置及系统,可提高缓存服务器系统的资源利用率。
第一方面,本发明实施例提供了一种资源分配方法,包括:
S0:预先构建资源分配链表,利用所述资源分配链表记录目标缓存服务器系统中至少两个服务器节点的标识信息,当前服务器节点中至少一个端口的端口号及当前端口的分配状态;
S1:接收外部客户端发送的携带缓存服务类型的缓存服务请求指令;
S2:查询所述资源分配链表,确定对应所述缓存服务类型的至少一个目标服务器节点,以及当前目标服务器节点下处于未分配状态的一个目标端口;
S3:根据每一个所述目标服务器节点分别对应的标识信息,向每一个所述目标服务器节点分别发送携带当前目标服务器节点中目标端口的端口号的资源分配请求指令,以使每一个所述目标服务器节点分别根据接收的资源分配请求指令中携带的端口号,启动所述目标端口对应的缓存服务进程。
优选地,
在所述向每一个所述目标服务器节点分别发送携带当前目标服务器节点中目标端口的端口号的资源分配请求指令之后,还包括:
向外部客户端发送所述至少一个目标服务器节点分别对应的标识信息以及当前目标服务器节点下的目标端口的端口号,以使外部客户端根据接收的所述至少一个目标服务器节点分别对应的标识信息以及当前目标服务器节点下的目标端口的端口号调用所述至少一个目标服务器中运行的缓存服务进程。
优选地,
所述查询所述资源分配链表,确定对应所述缓存服务类型的至少一个目标服务器节点,以及当前目标服务器节点下处于未分配状态的一个目标端口,包括:
查询所述资源分配链表,确定至少一个标准服务器节点,其中,所述标准服务器节点下存在至少一个端口处于未分配状态;
从所述至少一个标准服务器节点中确定出对应所述缓存服务类型的至少一个目标服务器节点;
将每一个所述目标服务器节点下的一个处于未分配状态的端口确定为目标端口。
优选地,
所述缓存服务类型,包括:单节点缓存服务、主从节点缓存服务或多节点缓存服务。
优选地,
在所述确定对应所述缓存服务类型的至少一个目标服务器节点,以及当前目标服务器节点下处于未分配状态的一个目标端口之后,还包括:
在所述资源分配链表中,将所述目标端口的分配状态更新为已分配状态。
第二方面,本发明实施例提供了一种资源分配装置,包括:
设置模块,用于预先构建资源分配链表,利用所述资源分配链表记录目标缓存服务器系统中至少两个服务器节点的标识信息,当前服务器节点中至少一个端口的端口号及当前端口的分配状态;
指令接收模块,用于接收外部客户端发送的携带缓存服务类型的缓存服务请求指令;
处理模块,用于查询所述资源分配链表,确定对应所述缓存服务类型的至少一个目标服务器节点,以及当前目标服务器节点下处于未分配状态的一个目标端口;
指令发送模块,用于根据每一个所述目标服务器节点分别对应的标识信息,向每一个所述目标服务器节点分别发送携带当前目标服务器节点中目标端口的端口号的资源分配请求指令,以使每一个所述目标服务器节点分别根据接收的资源分配请求指令中携带的端口号,启动所述目标端口对应的缓存服务进程。
优选地,
还包括:信息发送模块,用于向外部客户端发送所述至少一个目标服务器节点分别对应的标识信息以及当前目标服务器节点下的目标端口的端口号,以使外部客户端根据接收的所述至少一个目标服务器节点分别对应的标识信息以及当前目标服务器节点下的目标端口的端口号调用所述至少一个目标服务器中运行的缓存服务进程。
优选地,
所述处理模块,包括:
处理子单元,用于查询所述资源分配链表,确定至少一个标准服务器节点,其中,所述标准服务器节点下存在至少一个端口处于未分配状态;
第一确定子单元,用于从所述至少一个标准服务器节点中确定出对应所述缓存服务类型的至少一个目标服务器节点;
第二确定子单元,用于将每一个所述目标服务器节点下的一个处于未分配状态的端口确定为目标端口。
优选地,
还包括:链表更新模块,用于在所述资源分配链表中,将所述目标端口的分配状态更新为已分配状态。
第三方面,本发明实施例提供了一种资源分配系统,包括:
至少一个客户端、目标缓存服务器系统及如上述第二方面中任一所述的资源分配装置;其中,所述目标缓存服务器系统包括至少两个服务器节点;
所述资源分配装置分别连接每一个所述客户端以及所述目标缓存服务器系统中的每一个服务器节点;
所述客户端,用于向所述资源分配装置发送携带缓存服务类型的缓存服务请求指令;
所述服务器节点,用于接收所述资源分配装置发送的资源分配请求指令,根据接收的资源分配请求指令中携带的目标端口的端口号,启动目标端口对应的缓存服务进程。
本发明实施例提供了一种资源分配方法、装置及系统,通过构建资源分配链表以记录目标缓存服务器系统中至少两个服务器节点的标识信息,当前服务器节点中至少一个端口的端口号及当前端口的分配状态,在接收到外部客户端发送的携带缓存服务类型的缓存服务请求指令时,可根据资源分配链表确定对应该缓存服务类型的至少一个目标服务器节点,以及当前目标服务器节点下处于未分配状态的一个目标端口,进而向确定的每一个目标服务器节点分别发送携带相应端口号的资源分配请求指令,使得每一个目标服务器分别根据接收的端口号启动目标端口对应的缓存服务进程;综上可见,当目标缓存服务器系统中的服务器节点存在目标端口处于未分配状态,且存在客户端请求缓存服务时,即可将该服务器节点下处于未分配状态的目标端口对应的缓存服务进程对应的分配给该客户端;可提高缓存服务器系统的资源利用率。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明一实施例提供的一种资源分配方法的流程图;
图2是本发明一实施例提供的另一种资源分配方法的流程图;
图3是本发明一实施例提供的一种资源分配装置的结构图;
图4是本发明一实施例提供的另一种资源分配装置的结构图;
图5是本发明一实施例提供的又一种资源分配装置的结构图;
图6是本发明一实施例提供的一种资源分配系统的结构图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例,基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
如图1所示,本发明实施例提供了一种资源分配方法,包括:
S0:预先构建资源分配链表,利用所述资源分配链表记录目标缓存服务器系统中至少两个服务器节点的标识信息,当前服务器节点中至少一个端口的端口号及当前端口的分配状态;
S1:接收外部客户端发送的携带缓存服务类型的缓存服务请求指令;
S2:查询所述资源分配链表,确定对应所述缓存服务类型的至少一个目标服务器节点,以及当前目标服务器节点下处于未分配状态的一个目标端口;
S3:根据每一个所述目标服务器节点分别对应的标识信息,向每一个所述目标服务器节点分别发送携带当前目标服务器节点中目标端口的端口号的资源分配请求指令,以使每一个所述目标服务器节点分别根据接收的资源分配请求指令中携带的端口号,启动所述目标端口对应的缓存服务进程。
本发明上述实施例中,通过构建资源分配链表以记录目标缓存服务器系统中至少两个服务器节点的标识信息,当前服务器节点中至少一个端口的端口号及当前端口的分配状态,在接收到外部客户端发送的携带缓存服务类型的缓存服务请求指令时,可根据资源分配链表确定对应该缓存服务类型的至少一个目标服务器节点,以及当前目标服务器节点下处于未分配状态的一个目标端口,进而向确定的每一个目标服务器节点分别发送携带相应端口号的资源分配请求指令,使得每一个目标服务器分别根据接收的端口号启动目标端口对应的缓存服务进程;综上可见,当目标缓存服务器系统中的服务器节点存在目标端口处于未分配状态,且存在客户端请求缓存服务时,即可将该服务器节点下处于未分配状态的目标端口对应的缓存服务进程对应的分配给该客户端;可提高缓存服务器系统的资源利用率。
本发明上述实施例中,通过服务器节点的端口可以为客户端提供对应当前客户端的缓存服务进程,即通过不同的端口可向不同的客户端提供缓存服务资源,避免缓存服务器系统搭载Redis等Key-value数据库时,即使缓存服务器系统存在空闲缓存资源也无法向多个客户端提供缓存服务,造成缓存服务器系统的资源浪费。
进一步的,为了使客户端能够访问为其分配的服务器节点,并调用该服务器节点中对应当前客户端的缓存服务进程,本发明一个优选实施例中,在所述向每一个所述目标服务器节点分别发送携带当前目标服务器节点中目标端口的端口号的资源分配请求指令之后,还包括:
向外部客户端发送所述至少一个目标服务器节点分别对应的标识信息以及当前目标服务器节点下的目标端口的端口号,以使外部客户端根据接收的所述至少一个目标服务器节点分别对应的标识信息以及当前目标服务器节点下的目标端口的端口号调用所述至少一个目标服务器中运行的缓存服务进程。
本发明上述实施例中,同一个服务器节点可以包括多个端口,不同客户端对应的缓存服务进程对应不同的端口,即不同客户端可通过不同的端口访问同一个服务器节点中对应当前客户端的缓存服务进程,实现对不同客户端在同一个服务器节点中分别对应的缓存服务进程进行隔离,即实现对不同客户端分别对应的缓存资源进行隔离。
本发明一个优选实施例中,所述缓存服务类型,包括:单节点缓存服务、主从节点缓存服务或多节点缓存服务。
相应的,由于目标缓存服务器系统中可能存在多个服务器节点下的多个端口均处于未分配状态,而不同的缓存服务类型需要的服务器节点的数量并不相同,比如,单节点缓存服务仅需要一个服务器节点,主从节点缓存服务仅需要两个服务器节点,而多节点缓存服务可根据实际业务需求选择合适数量的服务器节点;因此,本发明一个优选实施例中,所述查询所述资源分配链表,确定对应所述缓存服务类型的至少一个目标服务器节点,以及当前目标服务器节点下处于未分配状态的一个目标端口,包括:
查询所述资源分配链表,确定至少一个标准服务器节点,其中,所述标准服务器节点下存在至少一个端口处于未分配状态;
从所述至少一个标准服务器节点中确定出对应所述缓存服务类型的至少一个目标服务器节点;
将每一个所述目标服务器节点下的一个处于未分配状态的端口确定为目标端口。
进一步的,为了避免同一个服务器节点下的同一个端口被重复分配给多个不同的客户端,本发明一个优选实施例中,在所述确定对应所述缓存服务类型的至少一个目标服务器节点,以及当前目标服务器节点下处于未分配状态的一个目标端口之后,还包括:
在所述资源分配链表中,将所述目标端口的分配状态更新为已分配状态。
本发明上述实施例中,不同的缓存服务器进程对应不同的端口,在当前端口已经处于被分配状态后,当前端口对应的缓存服务进程则不能被分配给其他客户端,实现对不同客户端在相同服务器节点中对应的不同缓存服务进程进行隔离。
如图2所述,本发明实施例提供了一种资源分配方法,以将缓存服务器系统中的空闲缓存资源分配给其他申请缓存服务的客户端为例,该方法可以包括如下步骤:
步骤201,预先构建目标缓存服务器系统对应的资源分配链表。
本发明实施例中,资源分配链表用于记录目标缓存服务器系统中至少两个服务器节点的标识信息,当前服务器节点中至少一个端口的端口号及当前端口的分配状态。
步骤202,接收外部客户端发送的携带缓存服务类型的缓存服务请求指令。
这里,缓存服务类型可以包括单节点缓存服务、主从节点缓存服务或多节点缓存服务。
步骤203,查询资源分配链表,确定至少一个标准服务器节点。
这里,标准服务器节点下应当存在至少一个端口处于未分配状态。
举例来说,当目标缓存服务器系统包括服务器节点A、B、C、D,且服务器节点A包括端口a1、a2和a3,服务器节点B包括端口b1和b2,服务器节点C包括c1和c2,服务器节点D包括端口d;在端口a1、b1、c1和d处于已分配状态时,即端口a1、b1、c1和d对应的缓存服务进程已经被分配给其他客户端时,服务器节点A、B、C下存在空闲缓存资源,这里,即可分别将服务器节点A、B、C确定为标准服务器节点。
步骤204,从至少一个标准服务器节点中确定出对应缓存服务类型的至少一个目标服务器节点。
举例来说,当缓存服务类型为单节点缓存服务器时,则可将服务器节点A、B、C中的任一个确定为目标服务器节点;当缓存服务器类型为主从节点缓存服务时,可将服务器节点A、B、C中的任意两个分别确定为目标服务器节点;当缓存服务类型为多节点缓存服务时,则可将服务器节点A、B、C中的任意两个或三个同时确定为目标服务器节点。
步骤205,将每一个目标服务器节点下的一个处于未分配状态的端口确定为目标端口。
举例来说,当缓存服务类型为主从节点缓存服务,且确定的目标服务器节点为服务器节点A和服务器节点B时,则可将服务器节点A下的端口a2或a3确定为目标端口,将服务器节点B下的端口b2确定为目标端口。
步骤206,根据每一个目标服务器节点分别对应的标识信息,向每一个目标服务器节点分别发送携带当前目标服务器节点中目标端口的端口号的资源分配请求指令。
举例来说,当目标服务器节点A中的端口a2和目标服务器节点B中的端口b2被确定为目标端口时,则可向目标服务器节点A发送携带目标端口a2的端口号的资源分配请求指令,向目标服务器节点B发送携带目标端口b2的端口号的资源分配请求指令。
相应的,目标服务器节点A在接收到携带目标端口a2的端口号的资源分配请求指令后,即可根据目标端口a2的端口号启动并运行目标端口a2对应的缓存服务进程;目标服务器节点B在接收到携带目标端口b2的端口号的资源分配请求指令后,即可根据目标端口b2的端口号启动并运行目标端口b2对应的缓存服务进程。
步骤207,在资源分配链表中,将目标端口的分配状态更新为已分配状态。
这里,即在资源分配链表中将目标端口a2和目标端口b2分别对应的分配状态从未分配状态更新为已分配状态;如此,避免将已分配给相应客户端的端口被重复分配给不同的客户端;同时,为不同的客户端分配不同的端口号,实现对不同客户端在相同服务器节点中对应的不同缓存服务进程进行隔离。
步骤208,向外部客户端发送至少一个目标服务器节点分别对应的标识信息以及当前目标服务器节点下的目标端口的端口号。
这里,即将目标服务器节点A和目标服务器节点B分别对应的标识信息,以及目标端口a2和目标端口b2分别对应的端口号发送至客户端。
步骤209,客户端根据接收的至少一个目标服务器节点分别对应的标识信息以及当前目标服务器节点下的目标端口的端口号调用至少一个目标服务器中运行的缓存服务进程。
本发明实施例中,客户端可根据接收的目标服务器节点A的标识信息及目标端口a2的端口号,访问并调用目标服务器节点A中运行的对应目标端口a2的缓存服务进程;根据接收的目标服务器节点B的标识信息及目标端口b2的端口号,访问并调用目标服务器节点B中运行的对应目标端口b2的缓存服务进程。
如图3所示,本发明实施例提供了一种资源分配装置,包括:
设置模块301,用于预先构建资源分配链表302,利用所述资源分配链表302记录目标缓存服务器系统中至少两个服务器节点的标识信息,当前服务器节点中至少一个端口的端口号及当前端口的分配状态;
指令接收模块303,用于接收外部客户端发送的携带缓存服务类型的缓存服务请求指令;
处理模块304,用于查询所述资源分配链表302,确定对应所述缓存服务类型的至少一个目标服务器节点,以及当前目标服务器节点下处于未分配状态的一个目标端口;
指令发送模块305,用于根据每一个所述目标服务器节点分别对应的标识信息,向每一个所述目标服务器节点分别发送携带当前目标服务器节点中目标端口的端口号的资源分配请求指令,以使每一个所述目标服务器节点分别根据接收的资源分配请求指令中携带的端口号,启动所述目标端口对应的缓存服务进程。
进一步的,为了使客户端能够访问为其分配的服务器节点,并调用该服务器节点中运行的对应当前客户端的缓存服务器进程,如图4所示,本发明一个优选实施例中,还包括:信息发送模块401,用于向外部客户端发送所述至少一个目标服务器节点分别对应的标识信息以及当前目标服务器节点下的目标端口的端口号,以使外部客户端根据接收的所述至少一个目标服务器节点分别对应的标识信息以及当前目标服务器节点下的目标端口的端口号调用所述至少一个目标服务器中运行的缓存服务进程。
进一步的,如图5所示,本发明一个优选实施例中,所述处理模块304,包括:
处理子单元3041,用于查询所述资源分配链表302,确定至少一个标准服务器节点,其中,所述标准服务器节点下存在至少一个端口处于未分配状态;
第一确定子单元3042,用于从所述至少一个标准服务器节点中确定出对应所述缓存服务类型的至少一个目标服务器节点;
第二确定子单元3043,用于将每一个所述目标服务器节点下的一个处于未分配状态的端口确定为目标端口。
进一步的,为了避免同一个服务器节点中的同一个端口被重复分配给多个客户端,本发明一个优选实施例中,还包括:链表更新模块(附图中未示出),用于在所述资源分配链表302中,将所述目标端口的分配状态更新为已分配状态。
如图6所示,本发明实施例提供了一种资源分配系统,包括:
至少一个客户端601、目标缓存服务器系统602及如上述实施例中任一所述的资源分配装置603;其中,所述目标缓存服务器系统602包括至少两个服务器节点6021;
所述资源分配装置603分别连接每一个所述客户端601以及所述目标缓存服务器系统602中的每一个服务器节点6021;
所述客户端601,用于向所述资源分配装置603发送携带缓存服务类型的缓存服务请求指令;
所述服务器节点6021,用于接收所述资源分配装置603发送的资源分配请求指令,根据接收的资源分配请求指令中携带的目标端口的端口号,启动目标端口对应的缓存服务进程。
上述装置内的各单元之间的信息交互、执行过程等内容,由于与本发明方法实施例基于同一构思,具体内容可参见本发明方法实施例中的叙述,此处不再赘述。
综上所述,本发明各个实施例至少具有如下有益效果:
1、通过构建资源分配链表以记录目标缓存服务器系统中至少两个服务器节点的标识信息,当前服务器节点中至少一个端口的端口号及当前端口的分配状态,在接收到外部客户端发送的携带缓存服务类型的缓存服务请求指令时,可根据资源分配链表确定对应该缓存服务类型的至少一个目标服务器节点,以及当前目标服务器节点下处于未分配状态的一个目标端口,进而向确定的每一个目标服务器节点分别发送携带相应端口号的资源分配请求指令,使得每一个目标服务器分别根据接收的端口号启动目标端口对应的缓存服务进程;综上可见,当目标缓存服务器系统中的服务器节点存在目标端口处于未分配状态,且存在客户端请求缓存服务时,即可将该服务器节点下处于未分配状态的目标端口对应的缓存服务进程对应的分配给该客户端;可提高缓存服务器系统的资源利用率。
2、本发明一实施例中,同一个服务器节点可以包括多个端口,不同客户端对应的缓存服务进程对应不同的端口,即不同客户端可通过不同的端口访问同一个服务器节点中对应当前客户端的缓存服务进程,实现对不同客户端在同一个服务器节点中分别对应的缓存服务进程进行隔离,即实现对不同客户端分别对应的缓存资源进行隔离。
3、本发明一实施例中,通过将目标端口的分配状态更新为已分配状态,可避免已分配给相应客户端的端口被重复分配给多个客户端;同时,为不同的客户端分配不同的端口号,实现对不同客户端在相同服务器节点中对应的不同缓存服务进程进行隔离。
需要说明的是,在本文中,诸如第一和第二之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个······”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同因素。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储在计算机可读取的存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质中。
最后需要说明的是:以上所述仅为本发明的较佳实施例,仅用于说明本发明的技术方案,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所做的任何修改、等同替换、改进等,均包含在本发明的保护范围内。

Claims (10)

1.一种资源分配方法,其特征在于,包括:
预先构建资源分配链表,利用所述资源分配链表记录目标缓存服务器系统中至少两个服务器节点的标识信息,当前服务器节点中至少一个端口的端口号及当前端口的分配状态;
接收外部客户端发送的携带缓存服务类型的缓存服务请求指令;
查询所述资源分配链表,确定对应所述缓存服务类型的至少一个目标服务器节点,以及当前目标服务器节点下处于未分配状态的一个目标端口;
根据每一个所述目标服务器节点分别对应的标识信息,向每一个所述目标服务器节点分别发送携带当前目标服务器节点中目标端口的端口号的资源分配请求指令,以使每一个所述目标服务器节点分别根据接收的资源分配请求指令中携带的端口号,启动所述目标端口对应的缓存服务进程。
2.根据权利要求1所述的资源分配方法,其特征在于,
在所述向每一个所述目标服务器节点分别发送携带当前目标服务器节点中目标端口的端口号的资源分配请求指令之后,还包括:
向外部客户端发送所述至少一个目标服务器节点分别对应的标识信息以及当前目标服务器节点下的目标端口的端口号,以使外部客户端根据接收的所述至少一个目标服务器节点分别对应的标识信息以及当前目标服务器节点下的目标端口的端口号调用至少一个目标服务器节点中运行的缓存服务进程。
3.根据权利要求1所述的资源分配方法,其特征在于,所述查询所述资源分配链表,确定对应所述缓存服务类型的至少一个目标服务器节点,以及当前目标服务器节点下处于未分配状态的一个目标端口,包括:
查询所述资源分配链表,确定至少一个标准服务器节点,其中,所述标准服务器节点下存在至少一个端口处于未分配状态;
从所述至少一个标准服务器节点中确定出对应所述缓存服务类型的至少一个目标服务器节点;
将每一个所述目标服务器节点下的一个处于未分配状态的端口确定为目标端口。
4.根据权利要求1所述的资源分配方法,其特征在于,
所述缓存服务类型,包括:单节点缓存服务、主从节点缓存服务或多节点缓存服务。
5.根据权利要求1至4中任一所述的方法,其特征在于,
在所述确定对应所述缓存服务类型的至少一个目标服务器节点,以及当前目标服务器节点下处于未分配状态的一个目标端口之后,还包括:
在所述资源分配链表中,将所述目标端口的分配状态更新为已分配状态。
6.一种资源分配装置,其特征在于,包括:
设置模块,用于预先构建资源分配链表,利用所述资源分配链表记录目标缓存服务器系统中至少两个服务器节点的标识信息,当前服务器节点中至少一个端口的端口号及当前端口的分配状态;
指令接收模块,用于接收外部客户端发送的携带缓存服务类型的缓存服务请求指令;
处理模块,用于查询所述资源分配链表,确定对应所述缓存服务类型的至少一个目标服务器节点,以及当前目标服务器节点下处于未分配状态的一个目标端口;
指令发送模块,用于根据每一个所述目标服务器节点分别对应的标识信息,向每一个所述目标服务器节点分别发送携带当前目标服务器节点中目标端口的端口号的资源分配请求指令,以使每一个所述目标服务器节点分别根据接收的资源分配请求指令中携带的端口号,启动所述目标端口对应的缓存服务进程。
7.根据权利要求6所述的资源分配装置,其特征在于,
还包括:信息发送模块,用于向外部客户端发送所述至少一个目标服务器节点分别对应的标识信息以及当前目标服务器节点下的目标端口的端口号,以使外部客户端根据接收的所述至少一个目标服务器节点分别对应的标识信息以及当前目标服务器节点下的目标端口的端口号调用至少一个目标服务器节点中运行的缓存服务进程。
8.根据权利要求6所述的资源分配装置,其特征在于,
所述处理模块,包括:
处理子单元,用于查询所述资源分配链表,确定至少一个标准服务器节点,其中,所述标准服务器节点下存在至少一个端口处于未分配状态;
第一确定子单元,用于从所述至少一个标准服务器节点中确定出对应所述缓存服务类型的至少一个目标服务器节点;
第二确定子单元,用于将每一个所述目标服务器节点下的一个处于未分配状态的端口确定为目标端口。
9.根据权利要求6至8中任一所述的资源分配装置,其特征在于,
还包括:链表更新模块,用于在所述资源分配链表中,将所述目标端口的分配状态更新为已分配状态。
10.一种资源分配系统,其特征在于,包括:
至少一个客户端、目标缓存服务器系统及如上述权利要求6至9中任一所述的资源分配装置;其中,所述目标缓存服务器系统包括至少两个服务器节点;
所述资源分配装置分别连接每一个所述客户端以及所述目标缓存服务器系统中的每一个服务器节点;
所述客户端,用于向所述资源分配装置发送携带缓存服务类型的缓存服务请求指令;
所述服务器节点,用于接收所述资源分配装置发送的资源分配请求指令,根据接收的资源分配请求指令中携带的目标端口的端口号,启动目标端口对应的缓存服务进程。
CN201610591518.6A 2016-07-26 2016-07-26 一种资源分配方法、装置及系统 Active CN105978744B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610591518.6A CN105978744B (zh) 2016-07-26 2016-07-26 一种资源分配方法、装置及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610591518.6A CN105978744B (zh) 2016-07-26 2016-07-26 一种资源分配方法、装置及系统

Publications (2)

Publication Number Publication Date
CN105978744A CN105978744A (zh) 2016-09-28
CN105978744B true CN105978744B (zh) 2018-10-26

Family

ID=56950727

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610591518.6A Active CN105978744B (zh) 2016-07-26 2016-07-26 一种资源分配方法、装置及系统

Country Status (1)

Country Link
CN (1) CN105978744B (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108111325B (zh) * 2016-11-24 2021-06-22 北京金山云网络技术有限公司 一种资源分配方法及装置
CN109962963B (zh) * 2017-12-26 2020-08-18 中国移动通信集团公司 消息处理方法及装置
CN109547244A (zh) * 2018-11-16 2019-03-29 郑州云海信息技术有限公司 一种基于NFS系统的QoS客户端读写带宽配置方法及终端
CN111966442A (zh) * 2019-05-20 2020-11-20 北京白山耘科技有限公司 一种容器端口管理的方法,装置,介质及设备

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102130959A (zh) * 2011-03-22 2011-07-20 浪潮(北京)电子信息产业有限公司 一种实现云存储资源调度的系统及方法
CN102984267A (zh) * 2012-12-07 2013-03-20 北京搜狐新媒体信息技术有限公司 一种实现分布式缓存节点动态更新到客户端的方法及系统
CN104852934A (zh) * 2014-02-13 2015-08-19 阿里巴巴集团控股有限公司 基于前端调度实现流量分配的方法、装置和系统

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030041215A1 (en) * 2001-08-27 2003-02-27 George Robert T. Method and apparatus for the utilization of distributed caches

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102130959A (zh) * 2011-03-22 2011-07-20 浪潮(北京)电子信息产业有限公司 一种实现云存储资源调度的系统及方法
CN102984267A (zh) * 2012-12-07 2013-03-20 北京搜狐新媒体信息技术有限公司 一种实现分布式缓存节点动态更新到客户端的方法及系统
CN104852934A (zh) * 2014-02-13 2015-08-19 阿里巴巴集团控股有限公司 基于前端调度实现流量分配的方法、装置和系统

Also Published As

Publication number Publication date
CN105978744A (zh) 2016-09-28

Similar Documents

Publication Publication Date Title
CN105978744B (zh) 一种资源分配方法、装置及系统
US6832248B1 (en) System and method for managing usage quotas
US9298732B2 (en) Searching cloud-based distributed storage resources using a set of expendable probes
CN103324533B (zh) 分布式数据处理方法、装置及系统
KR20170097132A (ko) 데이터베이스에서의 계좌와 관련된 거래 요청의 효율적인 처리를 위한 시스템
CN109359081A (zh) 一种集群中锁管理的方法、锁服务器及客户端
US20150256474A1 (en) Resource management for multiple desktop configurations for supporting virtual desktops of different user classes
EP3346379A1 (en) Database management system with dynamic allocation of database requests
KR101714412B1 (ko) 클라우드 환경에서 데이터베이스 시스템을 구성하는 방법 및 장치
KR20030088459A (ko) 유상태 프로그램 엔터티의 작업량 관리
CN106067858A (zh) 容器间的通信方法、装置及系统
WO2007134918A1 (en) Distributed storage
KR101236477B1 (ko) 비대칭 클러스터 파일 시스템의 데이터 처리 방법
CN103369038A (zh) 平台即服务PaaS管理平台及方法
US20110131288A1 (en) Load-Balancing In Replication Engine of Directory Server
CN104602035B (zh) 流媒体点播方法和流媒体点播系统
CN108153494A (zh) 一种io请求处理方法及装置
US20050071281A1 (en) Software license optimization
CN109804365A (zh) 弹性地理数据库复制方法
US20200125266A1 (en) Providing a global unique identifier for a storage volume
US20210084102A1 (en) Isolated read channel categories at streaming data service
CN105354312A (zh) 一种文件存储方法、下载方法及系统
CN111435286A (zh) 一种数据存储方法、装置和系统
WO2023207087A1 (zh) 用于区块链的最优链路选择方法及装置和电子设备
CN103905375B (zh) 集群式数据加密系统中的数据加密请求分配方法和装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20200519

Address after: 250100 No. 1036 Tidal Road, Jinan High-tech Zone, Shandong Province, S01 Building, Tidal Science Park

Patentee after: Tidal Cloud Information Technology Co.,Ltd.

Address before: 250100 Ji'nan high tech Zone, Shandong, No. 1036 wave road

Patentee before: INSPUR ELECTRONIC INFORMATION INDUSTRY Co.,Ltd.

CP01 Change in the name or title of a patent holder
CP01 Change in the name or title of a patent holder

Address after: 250100 No. 1036 Tidal Road, Jinan High-tech Zone, Shandong Province, S01 Building, Tidal Science Park

Patentee after: Inspur cloud Information Technology Co., Ltd

Address before: 250100 No. 1036 Tidal Road, Jinan High-tech Zone, Shandong Province, S01 Building, Tidal Science Park

Patentee before: Tidal Cloud Information Technology Co.,Ltd.