CN104063355B - 对服务器集群进行配置的方法及配置中心服务器 - Google Patents

对服务器集群进行配置的方法及配置中心服务器 Download PDF

Info

Publication number
CN104063355B
CN104063355B CN201310091366.XA CN201310091366A CN104063355B CN 104063355 B CN104063355 B CN 104063355B CN 201310091366 A CN201310091366 A CN 201310091366A CN 104063355 B CN104063355 B CN 104063355B
Authority
CN
China
Prior art keywords
write
lock
read
configuration information
server
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
CN201310091366.XA
Other languages
English (en)
Other versions
CN104063355A (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.)
Tencent Technology Beijing Co Ltd
Original Assignee
Tencent Technology Beijing 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 Tencent Technology Beijing Co Ltd filed Critical Tencent Technology Beijing Co Ltd
Priority to CN201310091366.XA priority Critical patent/CN104063355B/zh
Priority to PCT/CN2014/072177 priority patent/WO2014146524A1/en
Priority to US14/778,774 priority patent/US9686134B2/en
Publication of CN104063355A publication Critical patent/CN104063355A/zh
Application granted granted Critical
Publication of CN104063355B publication Critical patent/CN104063355B/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/0803Configuration setting
    • H04L41/0813Configuration setting characterised by the conditions triggering a change of settings
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • G06F15/163Interprocessor communication
    • G06F15/167Interprocessor communication using a common memory, e.g. mailbox
    • 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/52Program synchronisation; Mutual exclusion, e.g. by means of semaphores
    • 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/085Retrieval of network configuration; Tracking network configuration history
    • H04L41/0859Retrieval of network configuration; Tracking network configuration history by keeping history of different configuration generations or by rolling back to previous configuration versions
    • 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/0866Checking the configuration
    • H04L41/0869Validating the configuration within one network element
    • 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]

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Telephonic Communication Services (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明公开了对服务器集群进行配置的方法及配置中心服务器,其中,该方法包括:判断信号处理函数是否为预设退出值,如果是,则退出;否则:确定接收到来自待配置服务器的配置请求;从共享内存获取写锁,从数据库获取配置信息,写入共享内存中,释放写锁;若在获取写锁与释放写锁之间接收退出信号,则将信号处理函数设置为预设退出值;从共享内存获取读锁,从共享内存中读取配置信息,下发读取的配置信息,释放读锁,返回执行所述判断信号处理函数是否为预设退出值的步骤;若在获取读锁与释放读锁之间接收退出信号,则将信号处理函数设置为预设退出值。本发明方案能够避免异常退出而导致死锁,实现将配置信息成功下发给待配置服务器。

Description

对服务器集群进行配置的方法及配置中心服务器
技术领域
本发明涉及服务器配置技术,尤其涉及对服务器集群进行配置的方法及配置中心服务器。
背景技术
目前,随着互联网业务的普及,用户量极大增加;针对某项业务,单台服务器已经远远不能提供服务,基于此,大规模的服务器集群应运而生。服务器集群指互联网业务中,协作完成一个或者多个特定功能的一批服务器。对服务器集群的所有服务器的配置由配置系统完成,配置系统的配置中心服务器从数据库中读取配置信息,下发给服务器。
现有技术中对服务器集群进行配置的方案包括:配置中心服务器接收来自待配置服务器的配置请求后,从本地共享内存获取写锁,从配置中心的数据库获取配置信息写入共享内存中,释放写锁;获取读锁,从本地共享内存中读取配置信息,将读取的配置信息发送给待配置服务器,释放读锁。
写锁和读锁都存储在配置中心服务器的共享内存中。读锁和写锁用于linux进程间的通信,读锁也叫做共享锁,写锁也叫做独占锁;读锁和写锁常合称为读写锁,当读写锁以读模式锁住时,是以共享模式锁住的,当读写锁以写模式锁住时,是以独占模式锁住的。也即是,多个进程或线程,可以同时处于读模式下的读写锁,而当处于写模式下的读写锁时,只有一个进程是独占的。
上述流程中,写锁和释放写锁之间,以及读锁和释放读锁之间的处理时间较长,也就是写入数据和读取数据需要较长的时间。一旦在写锁和释放写锁之间出现异常,接收到退出信号,进程将退出,将来不及释放共享内存中保存的写锁;如果后续配置中心服务器接收到来自待配置服务器的配置请求,将导致死锁,从数据库获取配置信息后将无法写入共享内存,后续也就无法从共享内存中读取配置信息并下发给待配置服务器。类似地,一旦在读锁和释放读锁之间出现异常,进程将退出,将来不及释放共享内存中保存的读锁;如果后续配置中心服务器接收到来自待配置服务器的配置请求,却没有可用的读锁,将导致死锁,无法将配置信息下发给待配置服务器。
综上,现有对服务器集群进行配置的方案存在以下缺陷:出现异常退出时,将导致死锁,无法将配置信息成功下发给待配置服务器。
发明内容
本发明提供了一种对服务器集群进行配置的方法,该方法能够避免异常退出而导致死锁,实现将配置信息成功下发给待配置服务器。
本发明提供了一种对服务器集群进行配置的配置中心服务器,该配置中心服务器能够避免异常退出而导致死锁,实现将配置信息成功下发给待配置服务器。
一种对服务器集群进行配置的方法,设置信号处理函数,该方法包括:
判断信号处理函数是否为预设退出值,如果是,则退出,结束流程;否则:
确定接收到来自待配置服务器的配置请求;
从共享内存获取写锁,从数据库获取配置信息,写入共享内存中,释放写锁;若在获取写锁与释放写锁之间接收退出信号,则将信号处理函数设置为预设退出值;
从共享内存获取读锁,从共享内存中读取配置信息,将读取的配置信息发送给待配置服务器,释放读锁,返回执行所述判断信号处理函数是否为预设退出值的步骤;若在获取读锁与释放读锁之间接收退出信号,则将信号处理函数设置为预设退出值。
一种对服务器集群进行配置的配置中心服务器,该配置中心服务器包括设置单元、函数判断单元、配置请求处理单元、写入处理单元和读取处理单元;
所述设置单元,设置信号处理函数,并接收来自所述写入处理单元和所述读取处理单元的设置指令,将信号处理函数设置为预设退出值;
所述函数判断单元,判断信号处理函数是否为预设退出值,如果是,则不向所述配置请求处理单元发送启动指令;否则,向所述配置请求处理单元发送启动指令;
所述配置请求处理单元,接收来自所述函数判断单元的启动指令,确定接收到来自待配置服务器的配置请求,向所述写入处理单元发送写入指令;
所述写入处理单元,接收来自所述配置请求处理单元的写入指令后,从共享内存获取写锁,从数据库获取配置信息,写入共享内存中,释放写锁,向所述读取处理单元发送读取指令;若在获取写锁与释放写锁之间接收退出信号,则向所述设置单元发送设置指令;
所述读取处理单元,接收来自所述写入处理单元的读取指令,从共享内存获取读锁,从共享内存中读取配置信息,将读取的配置信息发送给待配置服务器,释放读锁;若在获取读锁与释放读锁之间接收退出信号,则向所述设置单元发送设置指令。
从上述方案可以看出,本发明中,先对信号处理函数进行判断,如果信号处理函数不为预设退出值,且接收到来自待配置服务器的配置请求,则从共享内存获取写锁,从数据库获取配置信息,写入共享内存中,释放写锁;若在获取写锁与释放写锁之间接收退出信号,则将信号处理函数设置为预设退出值;然后,从共享内存获取读锁,从共享内存中读取配置信息,将读取的配置信息发送给待配置服务器,释放读锁,返回执行所述判断信号处理函数是否为预设退出值的步骤;若在获取读锁与释放读锁之间接收退出信号,则将信号处理函数设置为预设退出值。对于在写锁和释放写锁之间,以及读锁和释放读锁之间接收到退出信号的情况,本发明结合信号处理函数,在释放完写锁和读锁之后才执行退出信号,避免了因异常退出而导致的死锁,实现了将配置信息成功下发给待配置服务器。
附图说明
图1为本发明对服务器集群进行配置的方法示意性流程图;
图2为本发明对服务器集群进行配置的方法流程图实例;
图3为本发明对服务器集群进行配置的配置中心服务器的结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明白,下面结合实施例和附图,对本发明进一步详细说明。
对于在写锁和释放写锁之间,以及读锁和释放读锁之间接收到退出信号的情况,本发明结合信号处理函数,在释放完写锁和读锁之后才执行退出信号,避免了因异常退出而导致的死锁。参见图1,为本发明对服务器集群进行配置的方法示意性流程图,本发明方法预先设置信号处理函数,初始时,可将信号处理函数设置默认值,例如为0;后续流程中,如果在获取写锁与释放写锁之间,或者在获取读锁与释放读锁之间接收退出信号,则将信号处理函数设置为预设退出值,例如为1。
图1的流程包括以下步骤:
步骤101,判断信号处理函数是否为预设退出值,如果是,则退出,结束流程;否则,执行步骤102。
对信号处理函数的判断可随机执行,也可周期性地执行。
步骤102,确定接收到来自待配置服务器的配置请求。
判断出信号函数不为预设退出值时,如果确定出没有接收到来自待配置服务器的配置请求,可返回执行步骤101,直到接收到来自待配置服务器的配置请求。
步骤103,从共享内存获取写锁,从数据库获取配置信息,写入共享内存中,释放写锁;若在获取写锁与释放写锁之间接收退出信号,则将信号处理函数设置为预设退出值。
对于配置信息没有更新,仍为旧版的情况,无需向本地的共享内存重新写入配置信息,可直接执行步骤104。为了简化流程,本步骤之前,还可具体包括:判断配置信息是否有更新,如果有,则执行步骤103;否则,执行步骤104。共享内存中配置信息是否有更新可通过标注实现,具体如:如果配置中心的数据库存储的配置信息进行了更新,则向配置中心服务器发送带有最新版本号的更新指示,配置中心服务器接收更新指示后确定配置信息有更新。
步骤104,从共享内存获取读锁,从共享内存中读取配置信息,将读取的配置信息发送给待配置服务器,释放读锁,返回执行步骤101;若在获取读锁与释放读锁之间接收退出信号,则将信号处理函数设置为预设退出值。
由于服务器集群中包含较多服务器,且配置信息容量大,每次为待配置服务器下发配置信息将占用加大的流量资源。本发明中,为了改进该缺陷,可在步骤102的配置请求中携带待配置服务器当前使用的配置信息的版本号,配置中心服务器接收配置请求后,进行版本号比较,如果版本号不相同,才进行配置信息的下发;具体地,可采用下述两种实现方式:
方式一,图1流程的步骤104之前,该方法还包括:判断配置请求包含的版本号与共享内存中配置信息的版本号是否相同,如果是,则向待配置服务器反馈无需更新的响应消息,否则,执行步骤104。
方式二,步骤104获取读锁之后,该方法还包括:判断配置请求包含的版本号与共享内存中配置信息的版本号是否相同,如果是,则向待配置服务器反馈无需更新的响应消息,释放读锁,否则,执行步骤104中所述从本地共享内存中获取配置信息的步骤。
采用本发明方案,对于在写锁和释放写锁之间,以及读锁和释放读锁之间接收到退出信号的情况,本发明结合信号处理函数,在释放完写锁和读锁之后才执行退出信号,避免了因异常退出而导致的死锁,实现了将配置信息成功下发给待配置服务器。
下面通过图2,对本发明为服务器集群进行配置的方法进行实例说明,该实例预先设置信号处理函数,图2的流程包括以下步骤:
步骤201,判断信号处理函数是否为预设退出值,如果是,则退出,结束流程;否则执行步骤202。
将信号处理函数的默认值设置为0,预设退出值设置为1。
信号处理函数的设置与关于信号处理函数是否为预设退出值的判断,两者是异步的。当退出信号发生时,会立即对信号处理函数进行设置;而对信号处理函数是否为预设退出值的判断,可周期性地或随机地执行。具体实现时,信号处理函数(g_iShutDown)可采用下述配置方式:
其中,SIGQUIT在为写锁与释放写锁之间接收到退出信号时的设置指令,SIGQUIT1为在读锁与释放读锁之间接收到退出信号时的设置指令。
步骤202,判断是否接收到来自待配置服务器的配置请求,如果是,则执行步骤203;否则,返回执行步骤201。
配置请求中包含版本号,本步骤中,如果没有接收到配置请求,则继续对信号处理函数进行判断。
步骤203,判断配置信息是否有更新,如果是,则执行步骤204,否则执行步骤208。
配置信息由工作人员录入配置中心的数据库中,之后工作人员可对数据库中的配置信息进行更新,更新后,数据库向配置中心服务器发送包含最新版本号的更新指示,配置中心服务器将更新项设置为已更新。本步骤中,如果配置中心服务器获知更新项设置为已更新,则确定出配置信息有更新。
步骤204,从共享内存中获取写锁。
写锁和读锁都保存在配置中心服务器的共享内存中。
写锁和读锁都存储在配置中心服务器的共享内存中。读锁和写锁用于linux进程间的通信,读锁也叫做共享锁,写锁也叫做独占锁;读锁和写锁常合称为读写锁,当读写锁以读模式锁住时,是以共享模式锁住的,当读写锁以写模式锁住时,是以独占模式锁住的。也即是,多个进程或线程,可以同时处于读模式下的读写锁,而当处于写模式下的读写锁时,只有一个进程是独占的。
步骤205,从数据库中获取配置信息,将获取的配置信息写入共享内存。
写锁进行写入的过程中,不能进行读取,避免读取的数据不完整。将获取的配置信息写入共享内存,将覆盖共享内存中之前存储的配置信息,以进行更新。
步骤206,接收退出信号,将信号处理函数设置为预设退出值。
步骤207,释放写锁。
步骤208,从共享内存中获取读锁。
具体实践时,可采用Fork子进程实现读锁、版本号判断、数据读取、数据下发以及释放读锁的步骤。
步骤209,判断配置请求包含的版本号与共享内存中配置信息的版本号是否相同,如果是,则向待配置服务器反馈无需更新的响应消息,否则,从共享内存中读取配置信息,将读取的配置信息发送给待配置服务器。
步骤210,释放读锁,返回执行步骤201。
执行步骤201时,由于步骤206中已经信号处理函数设置为预设退出值,则执行退出,结束流程。
采用上述流程方案,如果在步骤204写锁和步骤207释放写锁之间,步骤208读锁和步骤210释放读锁之间接收到退出信号,将暂时不对退出信号进行响应;将继续执行后续的步骤,直到释放完写锁和读锁之后,再执行退出。这样,对于在写锁和释放写锁之间,以及读锁和释放读锁之间接收到退出信号的情况,可在释放完写锁和读锁之后进行退出,避免了现有技术中在这种情况下的死锁;并且,通过对版本号进行比较,减少了下发的数据量,节省了资源,简化了流程。
配置中心包括配置中心服务器和数据库,数据库用于存储配置信息,在需要时,配置中心服务器可从数据库获取配置信息。参见图3,为本发明配置中心服务器的结构示意图,其包括设置单元、函数判断单元、配置请求处理单元、写入处理单元和读取处理单元;
所述设置单元,设置信号处理函数,并接收来自所述写入处理单元和所述读取处理单元的设置指令,将信号处理函数设置为预设退出值;
所述函数判断单元,判断信号处理函数是否为预设退出值,如果是,则不向所述配置请求处理单元发送启动指令;否则,向所述配置请求处理单元发送启动指令;
所述配置请求处理单元,接收来自所述函数判断单元的启动指令,确定接收到来自待配置服务器的配置请求,向所述写入处理单元发送写入指令;
所述写入处理单元,接收来自所述配置请求处理单元的写入指令后,从本地共享内存获取写锁,从数据库获取配置信息,写入共享内存中,释放写锁,向所述读取处理单元发送读取指令;若在获取写锁与释放写锁之间接收退出信号,则向所述设置单元发送设置指令;
所述读取处理单元,接收来自所述写入处理单元的读取指令,从共享内存获取读锁,从共享内存中读取配置信息,将读取的配置信息发送给待配置服务器,释放读锁;若在获取读锁与释放读锁之间接收退出信号,则向所述设置单元发送设置指令。
较佳地,所述配置请求包含版本号,所述读取处理单元包括第一版本号判断子单元和第一读取子单元;
所述第一版本号判断子单元,接收来自所述写入处理单元的读取指令,判断来自待配置服务器的配置请求包含的版本号与共享内存中配置信息的版本号是否相同,如果是,则向待配置服务器反馈无需更新的响应消息;否则向所述第一读取子单元发送启动指令;
所述第一读取子单元,接收来自所述版本号判断子单元的启动指令,从共享内存获取读锁,从共享内存中读取配置信息,将读取的配置信息发送给待配置服务器,释放读锁;若在获取读锁与释放读锁之间接收退出信号,则向所述设置单元发送设置指令。
较佳地,所述配置请求包含版本号,所述读取处理单元包括第二版本号判断子单元和第二读取子单元;
所述第二读取子单元,接收来自所述写入处理单元的读取指令,从共享内存获取读锁,向所述第二版本号判断子单元发送版本号判断指令;接收来自所述第二版本号判断子单元的配置信息读取指令,从共享内存中读取配置信息,将读取的配置信息发送给待配置服务器,释放读锁;若在获取读锁与释放读锁之间接收退出信号,则向所述设置单元发送设置指令;
所述第二版本号判断子单元,接收来自所述第二读取子单元的版本号判断指令,判断来自待配置服务器的配置请求包含的版本号与共享内存中配置信息的版本号是否相同,如果是,则向待配置服务器反馈无需更新的响应消息,释放读锁;否则向所述第二读取子单元发送配置信息读取指令。
较佳地,所述写入处理单元包括更新判断子单元和写入子单元;
所述更新判断子单元,接收来自所述配置请求处理单元的写入指令后,判断配置信息是否有更新,如果有,则向所述写入子单元发送启动指令,否则,向所述读取处理单元发送读取指令;
所述写入子单元,接收来自所述更新判断子单元的启动指令,从共享内存获取写锁,从数据库获取配置信息,写入共享内存中,释放写锁,向所述读取处理单元发送读取指令;若在获取写锁与释放写锁之间接收退出信号,则向所述设置单元发送设置指令。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。

Claims (10)

1.一种对服务器集群进行配置的方法,其特征在于,设置信号处理函数,该方法包括:
判断信号处理函数是否为预设退出值,如果是,则退出,结束流程;否则:
确定接收到来自待配置服务器的配置请求;
从共享内存获取写锁,从数据库获取配置信息,写入共享内存中,释放写锁;若在获取写锁与释放写锁之间接收退出信号,则将信号处理函数设置为预设退出值;
从共享内存获取读锁,从共享内存中读取配置信息,将读取的配置信息发送给待配置服务器,释放读锁,返回执行所述判断信号处理函数是否为预设退出值的步骤;若在获取读锁与释放读锁之间接收退出信号,则将信号处理函数设置为预设退出值。
2.如权利要求1所述的方法,其特征在于,所述配置请求包含版本号,所述获取读锁之前,该方法还包括:
判断配置请求包含的版本号与共享内存中配置信息的版本号是否相同,如果是,则向待配置服务器反馈无需更新的响应消息,否则,执行所述获取读锁的步骤。
3.如权利要求1所述的方法,其特征在于,所述配置请求包含版本号,所述获取读锁之后,该方法还包括:
判断配置请求包含的版本号与共享内存中配置信息的版本号是否相同,如果是,则向待配置服务器反馈无需更新的响应消息,释放读锁,否则,执行所述从所述共享内存中读取配置信息的步骤。
4.如权利要求1所述的方法,其特征在于,所述获取写锁之前,该方法还包括:判断配置信息是否有更新,如果有,则执行所述获取写锁的步骤;否则,执行所述获取读锁的步骤。
5.如权利要求1所述的方法,其特征在于,所述判断信号处理函数是否为预设退出值为:周期性地判断信号处理函数是否为预设退出值。
6.如权利要求1至5中任一项所述的方法,其特征在于,判断出信号函数不为预设退出值时,如果确定出没有接收到来自待配置服务器的配置请求,则返回执行所述判断信号函数是否为预设退出值的步骤。
7.一种对服务器集群进行配置的配置中心服务器,其特征在于,该配置中心服务器包括设置单元、函数判断单元、配置请求处理单元、写入处理单元和读取处理单元;
所述设置单元,设置信号处理函数,并接收来自所述写入处理单元和所述读取处理单元的设置指令,将信号处理函数设置为预设退出值;
所述函数判断单元,判断信号处理函数是否为预设退出值,如果是,则不向所述配置请求处理单元发送启动指令;否则,向所述配置请求处理单元发送启动指令;
所述配置请求处理单元,接收来自所述函数判断单元的启动指令,确定接收到来自待配置服务器的配置请求,向所述写入处理单元发送写入指令;
所述写入处理单元,接收来自所述配置请求处理单元的写入指令后,从共享内存获取写锁,从数据库获取配置信息,写入共享内存中,释放写锁,向所述读取处理单元发送读取指令;若在获取写锁与释放写锁之间接收退出信号,则向所述设置单元发送设置指令;
所述读取处理单元,接收来自所述写入处理单元的读取指令,从共享内存获取读锁,从共享内存中读取配置信息,将读取的配置信息发送给待配置服务器,释放读锁;若在获取读锁与释放读锁之间接收退出信号,则向所述设置单元发送设置指令。
8.如权利要求7所述的配置中心服务器,其特征在于,所述配置请求包含版本号,所述读取处理单元包括第一版本号判断子单元和第一读取子单元;
所述第一版本号判断子单元,接收来自所述写入处理单元的读取指令,判断来自待配置服务器的配置请求包含的版本号与共享内存中配置信息的版本号是否相同,如果是,则向待配置服务器反馈无需更新的响应消息;否则向所述第一读取子单元发送启动指令;
所述第一读取子单元,接收来自所述版本号判断子单元的启动指令,从共享内存获取读锁,从共享内存中读取配置信息,将读取的配置信息发送给待配置服务器,释放读锁;若在获取读锁与释放读锁之间接收退出信号,则向所述设置单元发送设置指令。
9.如权利要求7所述的配置中心服务器,其特征在于,所述配置请求包含版本号,所述读取处理单元包括第二版本号判断子单元和第二读取子单元;
所述第二读取子单元,接收来自所述写入处理单元的读取指令,从共享内存获取读锁,向所述第二版本号判断子单元发送版本号判断指令;接收来自所述第二版本号判断子单元的配置信息读取指令,从共享内存中读取配置信息,将读取的配置信息发送给待配置服务器,释放读锁;若在获取读锁与释放读锁之间接收退出信号,则向所述设置单元发送设置指令;
所述第二版本号判断子单元,接收来自所述第二读取子单元的版本号判断指令,判断来自待配置服务器的配置请求包含的版本号与共享内存中配置信息的版本号是否相同,如果是,则向待配置服务器反馈无需更新的响应消息,释放读锁;否则向所述第二读取子单元发送配置信息读取指令。
10.如权利要求7、8或9所述的配置中心服务器,其特征在于,所述写入处理单元包括更新判断子单元和写入子单元;
所述更新判断子单元,接收来自所述配置请求处理单元的写入指令后,判断配置信息是否有更新,如果有,则向所述写入子单元发送启动指令,否则,向所述读取处理单元发送读取指令;
所述写入子单元,接收来自所述更新判断子单元的启动指令,从共享内存获取写锁,从数据库获取配置信息,写入共享内存中,释放写锁,向所述读取处理单元发送读取指令;若在获取写锁与释放写锁之间接收退出信号,则向所述设置单元发送设置指令。
CN201310091366.XA 2013-03-21 2013-03-21 对服务器集群进行配置的方法及配置中心服务器 Active CN104063355B (zh)

Priority Applications (3)

Application Number Priority Date Filing Date Title
CN201310091366.XA CN104063355B (zh) 2013-03-21 2013-03-21 对服务器集群进行配置的方法及配置中心服务器
PCT/CN2014/072177 WO2014146524A1 (en) 2013-03-21 2014-02-18 Method and configuration center server for configuring server cluster
US14/778,774 US9686134B2 (en) 2013-03-21 2014-02-18 Method and configuration center server for configuring server cluster

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201310091366.XA CN104063355B (zh) 2013-03-21 2013-03-21 对服务器集群进行配置的方法及配置中心服务器

Publications (2)

Publication Number Publication Date
CN104063355A CN104063355A (zh) 2014-09-24
CN104063355B true CN104063355B (zh) 2017-11-03

Family

ID=51551072

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310091366.XA Active CN104063355B (zh) 2013-03-21 2013-03-21 对服务器集群进行配置的方法及配置中心服务器

Country Status (3)

Country Link
US (1) US9686134B2 (zh)
CN (1) CN104063355B (zh)
WO (1) WO2014146524A1 (zh)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104063355B (zh) 2013-03-21 2017-11-03 腾讯科技(北京)有限公司 对服务器集群进行配置的方法及配置中心服务器
US10158173B2 (en) 2015-05-29 2018-12-18 Huawei Technologies Co., Ltd. Orthogonal-beam-space spatial multiplexing radio communication system and associated antenna array
JP6306215B2 (ja) * 2015-12-14 2018-04-04 華為技術有限公司Huawei Technologies Co.,Ltd. クラスタ内のロック管理方法、ロックサーバ及びクライアント
US10467151B2 (en) * 2017-09-05 2019-11-05 NGINX, Inc. Using shared memory to transport data between server processes
CN109669879A (zh) * 2017-10-17 2019-04-23 展讯通信(上海)有限公司 配置直接存储器存取控制器的方法及装置
CN110008031B (zh) * 2018-01-05 2022-04-15 北京金山云网络技术有限公司 设备操作方法、集群系统、电子设备及可读取存储介质
US11042424B1 (en) * 2018-04-24 2021-06-22 F5 Networks, Inc. Pipelined request processing using shared memory
CN111796931B (zh) * 2020-06-09 2024-03-29 阿里巴巴集团控股有限公司 信息处理方法、装置、计算设备和介质
CN113485850A (zh) * 2021-04-25 2021-10-08 北京思特奇信息技术股份有限公司 一种分布式文件系统的服务配置方法和配置系统
CN115145737B (zh) * 2022-08-31 2022-12-30 维塔科技(北京)有限公司 动态加锁方法、电子设备及计算机可读存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7526479B2 (en) * 2003-12-30 2009-04-28 Sap Ag Configuration manager in enterprise computing system
CN101631140A (zh) * 2009-08-03 2010-01-20 中兴通讯股份有限公司 即时通信系统的集群服务器和集群间通信的方法
CN102148712A (zh) * 2011-04-21 2011-08-10 天讯天网(福建)网络科技有限公司 基于云计算的服务管理系统
CN102333029A (zh) * 2011-06-23 2012-01-25 北京新媒传信科技有限公司 一种服务器集群系统中的路由方法
CN102932408A (zh) * 2012-09-21 2013-02-13 中国电信股份有限公司云计算分公司 一种服务器集群的管理方法和平台

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1124947A (ja) * 1997-07-08 1999-01-29 Sanyo Electric Co Ltd コンピュータシステムの排他制御方法及びコンピュータシステム
US6862692B2 (en) * 2001-01-29 2005-03-01 Adaptec, Inc. Dynamic redistribution of parity groups
JP5339507B2 (ja) * 2008-10-01 2013-11-13 インターナショナル・ビジネス・マシーンズ・コーポレーション 木構造を探索する方法
US20110185047A1 (en) * 2010-01-27 2011-07-28 Telcordia Technologies, Inc. System and method for a distributed fault tolerant network configuration repository
CN104063355B (zh) 2013-03-21 2017-11-03 腾讯科技(北京)有限公司 对服务器集群进行配置的方法及配置中心服务器

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7526479B2 (en) * 2003-12-30 2009-04-28 Sap Ag Configuration manager in enterprise computing system
CN101631140A (zh) * 2009-08-03 2010-01-20 中兴通讯股份有限公司 即时通信系统的集群服务器和集群间通信的方法
CN102148712A (zh) * 2011-04-21 2011-08-10 天讯天网(福建)网络科技有限公司 基于云计算的服务管理系统
CN102333029A (zh) * 2011-06-23 2012-01-25 北京新媒传信科技有限公司 一种服务器集群系统中的路由方法
CN102932408A (zh) * 2012-09-21 2013-02-13 中国电信股份有限公司云计算分公司 一种服务器集群的管理方法和平台

Also Published As

Publication number Publication date
WO2014146524A1 (en) 2014-09-25
US20160043897A1 (en) 2016-02-11
US9686134B2 (en) 2017-06-20
CN104063355A (zh) 2014-09-24

Similar Documents

Publication Publication Date Title
CN104063355B (zh) 对服务器集群进行配置的方法及配置中心服务器
US9769032B1 (en) Cluster instance management system
CN100476738C (zh) 访问临界区的方法和系统
CN107911249B (zh) 一种网络设备的命令行发送方法、装置和设备
CN106155742B (zh) 组件更新处理方法及装置
US10212034B1 (en) Automated network change management
US20100153481A1 (en) Failover Mechanism For Distributed Process Execution
CN106487569A (zh) 一种业务消息处理方法及装置
CN113127023B (zh) 业务升级的方法、装置和系统
US20110314080A1 (en) Method for Providing Control Information for a Distributed Operation in an Automation System, Computer Program and Automation System
US10909516B2 (en) Basic input/output system (BIOS) credential management
CN109213572B (zh) 一种基于虚拟机的可信度确定方法及服务器
US9727396B2 (en) Message queue deployment
CN107025129A (zh) 一种数据处理方法以及装置
CN112671751A (zh) 一种基于微服务架构的鉴权方法、装置、设备和介质
US20210218801A1 (en) Method, apparatus and storage medium for resource configuration
US20150381516A1 (en) Resource access driven distributed transaction coordination system
US9519597B2 (en) Communication apparatus and method based on shared memory
US9069639B2 (en) Managing a user proxy configuration in a daemon that frequently loads and unloads
TWI716320B (zh) 安全任務處理方法、裝置、電子設備及儲存媒體
US7739688B1 (en) Techniques for managing distribution of well-defined objects in a client/server system
CN108595270A (zh) 一种内存资源的回收方法及装置
WO2016127587A1 (zh) 一种实现软件版本升级的方法和装置
CN106598687A (zh) 一种脚本预热方法和装置
CN108650320B (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