CN106850789A - Game player's dynamic allocation system and method based on server load detection - Google Patents

Game player's dynamic allocation system and method based on server load detection Download PDF

Info

Publication number
CN106850789A
CN106850789A CN201710047119.8A CN201710047119A CN106850789A CN 106850789 A CN106850789 A CN 106850789A CN 201710047119 A CN201710047119 A CN 201710047119A CN 106850789 A CN106850789 A CN 106850789A
Authority
CN
China
Prior art keywords
player
server
game
request
client
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.)
Granted
Application number
CN201710047119.8A
Other languages
Chinese (zh)
Other versions
CN106850789B (en
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.)
Hangzhou Bi Tour Information Technology Co Ltd
Original Assignee
Hangzhou Bi Tour Information 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 Hangzhou Bi Tour Information Technology Co Ltd filed Critical Hangzhou Bi Tour Information Technology Co Ltd
Priority to CN201710047119.8A priority Critical patent/CN106850789B/en
Publication of CN106850789A publication Critical patent/CN106850789A/en
Application granted granted Critical
Publication of CN106850789B publication Critical patent/CN106850789B/en
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/12Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
    • H04L67/125Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks involving control of end-device applications over a network
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/70Game security or game management aspects
    • A63F13/79Game security or game management aspects involving player-related data, e.g. identities, accounts, preferences or play histories
    • 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/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1004Server selection for load balancing
    • H04L67/1008Server selection for load balancing based on parameters of servers, e.g. available memory or workload
    • 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/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1004Server selection for load balancing
    • H04L67/1014Server selection for load balancing based on the content of a request
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Multimedia (AREA)
  • Computer Security & Cryptography (AREA)
  • Business, Economics & Management (AREA)
  • General Engineering & Computer Science (AREA)
  • General Business, Economics & Management (AREA)
  • Computer Hardware Design (AREA)
  • Health & Medical Sciences (AREA)
  • Computing Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Medical Informatics (AREA)
  • Computer And Data Communications (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

The invention discloses a kind of game player's dynamic allocation system and method based on server load detection, the system includes client, player's distribute module, game server, database core.The flow of methods described includes:Client sends game request by network;Player's distribute module receives the game request that client sends, and the request is parsed;According to analysis result, the type of play of the player requests is determined;The loading condition of multiple servers of the type of play is detected, and chooses the minimum server of load, its IP address and port numbers are returned into client;Client carries out growing connection according to the content for returning with corresponding server, carries out follow-up game operation, meanwhile, database update server load information.Present system is capable of the load of balanced game server well, and can at any time add new server according to increasing for game player so that whole server system is with good expansibility.

Description

Game player's dynamic allocation system and method based on server load detection
Technical field
The present invention relates to development of games field, relate more specifically to optimization and the load balance side of a kind of game server Method.
Background technology
With the development of Internet technology, notice has been placed on increasing game developer the exploitation of online game On, compared to single-play game, online game is linked together global player by network so that game is provided with preceding institute What is do not had is interactive, and impayable game pleasant sensation is brought to player.
Current most online game uses client-server architecture, and in this framework, player is local In running game client on terminal device (such as PC, mobile phone etc.), and server by network connection to gaming operators.Play Family sends instruction and data, and receive server feedback by being input into game operation on local terminal to server Order and data, so as to realize player's various operations (such as mobile, fight) in gaming.
The server end of online game is a very important ring during whole development of games, and game server needs height Effect, the game request for processing a large amount of players in real time, therefore, how to optimize server performance and enable to take as much as possible Business player colony, is the problem of game developer's needs consideration.Because server performance receives its hardware limitation, therefore, traditionally When server can not meet user's request, it is necessary to upgrade to server hardware, the long-time of server can be so caused Close, influence player's game experiencing.Simultaneously as HardwareUpgring has the upper limit, when HardwareUpgring is to can not preferably expire During sufficient user's request, it is necessary to which server is extended, increase number of servers.Traditional server architecture autgmentability is not It is enough good, it is necessary to be required for modifying to server architecture, code server when increasing server, be inconvenient.Therefore, how One rational algorithm of design so that game server load can obtain efficient balance, and allow Server Extension side Just the game process rapidly carried out without influenceing user, being one is worth further investigation and the problem inquired into.
The content of the invention
Deficiency it is an object of the invention to be directed to existing game server technology, it is proposed that one kind is based on server load Game player's dynamic allocation system and method for detection.The purpose of the present invention is achieved through the following technical solutions:
First, a kind of game player's dynamic allocation system based on server load detection, the system it is main by client, Player's distribute module, game server, database part composition.
The client is used to set up short linkup transmit game request with player's distribute module, receives player's distribute module Return information, and set up long connection with server;The main contents of the game request include that player id and player are asked Type of play.
Player's distribute module receives and parses through the game request of client transmission, obtains the player id in game request And type of play;According to type of play, the loading condition of respective server in inquiry database, and minimum server will be loaded IP address and port numbers are sent to client, realize the distribution of player.
The database is used for storage server load information.
The game server is any number of server cluster, is connected for setting up length with client, treatment game Process simultaneously manages user data.
Further, player's distribute module includes request reception unit, request analysis unit, server load detection Unit and request-response unit.The request reception unit is used to receive the game request that player sends over.The request Resolution unit is used to decompress the player requests that receiving unit is received, parses operation, and checks the correctness of data structure With the integrality of data, while extracting the player id and type of play of player requests.The server load detection unit is used In the data in reading database, the loading condition of game server is obtained, and testing result is passed into request-response unit. The request-response unit loads minimum server in choosing testing result, and its IP address and port numbers are sent into client End.
Further, it is straight after the server of each type when existing number of servers can not meet user's request Connect the new server of mounting.
Second, a kind of game player's dynamic allocation method based on server load detection, the method is comprised the following steps:
Step 1, client sends game request and gives player's distribute module by network, and main contents include player id and object for appreciation The type of play that family is asked.
Step 2, the request reception unit of player's distribute module receives the request that client sends, and passes the result to ask Resolution unit is sought, solicited message is decompressed, is parsed, obtain user id information therein and type of play information.
Step 3, the server load detection unit of player's distribute module according to the type of play information for getting, by looking into Database is ask, existing number of players on each server of correspondence type of play is obtained, and in this, as server load feelings The performance indications of condition.
Step 4, the request-response unit of player's distribute module obtains the IP address and port numbers of the minimum server of load, Passed through network and be sent to client.
Step 5, client is received after the IP address and port numbers of server, and setting up length with the server is connected, Follow-up game operation is carried out, meanwhile, database update server load information.
Compared with prior art, the present invention has the advantage that:
1st, the game experiencing of player can be improved with the load between each server of efficient balance, improving performance of server.
2nd, can according to the increase arbitrary extension number of servers of number of players, to lift the service quality of whole game, Meet the game demand of more game players.
Brief description of the drawings
Fig. 1 is the game player's dynamic allocation system structure chart based on server load detection of the present invention.
Fig. 2 is the structure chart of player's distribute module of the present invention.
Fig. 3 is the workflow of the game player's dynamic allocation method based on server load detection of the present invention Figure.
Specific embodiment
The present invention is described in further detail below in conjunction with accompanying drawing.
Fig. 1 shows the general structure frame of the game player's dynamic allocation system based on server load detection of the invention Figure.The system include client, player's distribute module, game database, multiple server 1-1 of each type of play, 1-2, 2-1、2-2、3-1、3-2…….It is above the core component of the system, in specific implementation process, can be according to application demand Add other annexes.Describe the concrete function and organizational form of the system various pieces in detail referring to Fig. 1.
As shown in fig. 1, client is the terminal device that can be arbitrarily played with operational network, for sending game request, The return information of player's distribute module is received, and is connected with server foundation.Specifically, client can be first when playing initial Short connection first is set up with player's distribute module, and game request data is sent, request is sent by network, network here can be with The standard communication techniques and any combination of agreement being known in the art.Such as communication technology such as Ethernet, 3G, 4G, can For carrying out the transmission of player information, while the information for sending can also be encrypted by agreements such as TSL/SSL.Client The request data of transmission should at least include the type of play that player ID and player are asked.Receiving player's distribute module After the server ip address and port numbers of return, client can set up length and be connected with respective server, carry out follow-up game behaviour Make.
Player's distribute module is loaded for detection service device and carries out player's distribution.Specifically, player's distribute module is first The game request of client transmission is received and parsed through, player ID and type of play information in game request is obtained;According to game Type, the loading condition of respective server in inquiry game database, and minimum server ip address and port numbers will be loaded Client is sent to, the distribution of player is realized.
Game database is used for storage server load information, can be well known any kind of database, Such as Mysql, Redis etc..
Server 1-1,1-2,2-1,2-2,3-1,3-2 ... are connected for setting up length with client, process game process And manage user data.Client is set up after length is connected by IP address and port numbers and certain server, all game operations Treatment and the management of player's data all carry out on that server.
When existing number of servers can not meet user's request, it is only necessary to directly hung after the server of each type New server is connect, this operation does not interfere with the work of existing server, and the quantity of expansion service device is substantially unrestricted System, substantially increases the scalability of system.
Fig. 2 shows the structure chart of player's distribute module of the present invention.The module includes request reception unit, asks Ask resolution unit, server load detection unit and request-response unit.The request reception unit is used to receive player's hair The game request brought.The request analysis unit is used to decompress the player requests that receiving unit is received, parses behaviour Make, and check the correctness of data structure and the integrality of data, while extracting the trip of the player requests of subsequent operation needs The critical datas such as play type.The server load detection unit is used to read the data in game database, obtains game garment The loading condition of business device, and testing result is passed into request-response unit.The request-response unit is chosen in testing result Minimum server is loaded, its IP address and port numbers are sent to client, which platform is swum to notify client to be connected to Play server carries out follow-up game operation.
Fig. 3 shows the workflow diagram of game player's dynamic allocation method of the present invention.At step 301, visitor Family end sends game request and gives player's distribute module, the game class that main contents are asked including player id and player by network Type;At step 302, player's distribute module receives the request that client sends, and solicited message is decompressed, is parsed, and obtains Obtain user id information therein and type of play information;At step 303, player's distribute module is according to the type of play for getting Information, by inquiring about database, obtains existing number of players on each server of correspondence type of play, and in this, as clothes The performance indications of business device loading condition;At step 304, player's distribute module is according to Query Result, the minimum clothes of selection load Business device, client is sent to by its IP address and port numbers;At step 305, client receive server IP address and After port numbers, set up length with the server and be connected, carry out follow-up game operation, meanwhile, database update server is born Information carrying ceases.

Claims (4)

1. a kind of game player's dynamic allocation system based on server load detection, it is characterised in that the system is main by visitor Family end, player's distribute module, game server, database part composition.
The client is used to set up short linkup transmit game request with player's distribute module, receives the return of player's distribute module Information, and set up long connection with server;The main contents of the game request include the trip that player id and player are asked Play type.
Player's distribute module receives and parses through the game request of client transmission, obtains the player id in game request and trip Play type;According to type of play, the loading condition of respective server in inquiry database, and minimum server ip ground will be loaded Location and port numbers are sent to client, realize the distribution of player.
The database is used for storage server load information.
The game server is any number of server cluster, is connected for setting up length with client, processes game process And manage user data.
2. it is according to claim 1 it is a kind of based on server load detection game player's dynamic allocation system, its feature It is that player's distribute module includes request reception unit, request analysis unit, server load detection unit and request Response unit.The request reception unit is used to receive the game request that player sends over.The request analysis unit is used for The player requests that receiving unit is received are decompressed, operation is parsed, and check data structure correctness and data it is complete Property, while extracting the player id and type of play of player requests.The server load detection unit is used for reading database Interior data, obtain the loading condition of game server, and testing result is passed into request-response unit.The request response The server of minimum is loaded in unit selection testing result, its IP address and port numbers are sent to client.
3. it is according to claim 1 it is a kind of based on server load detection game player's dynamic allocation system, its feature It is, when existing number of servers can not meet user's request, new clothes directly to be mounted after the server of each type Business device.
4. it is a kind of based on server load detection game player's dynamic allocation method, it is characterised in that the method include it is as follows Step:
Step 1, client sends game request and gives player's distribute module by network, and main contents include player id and player institute The type of play of request.
Step 2, the request reception unit of player's distribute module receives the request that client sends, and passes the result to solve Analysis unit, is decompressed to solicited message, is parsed, and obtains user id information therein and type of play information.
Step 3, the server load detection unit of player's distribute module according to the type of play information for getting, by inquiring about number According to storehouse, existing number of players on each server of correspondence type of play is obtained, and in this, as server load condition Performance indications.
Step 4, the request-response unit of player's distribute module obtains the IP address and port numbers of the minimum server of load, by it Client is sent to by network.
Step 5, client is received after the IP address and port numbers of server, and setting up length with the server is connected, and carries out Follow-up game operation, meanwhile, database update server load information.
CN201710047119.8A 2017-01-22 2017-01-22 System and method for dynamically allocating game players based on server load detection Active CN106850789B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710047119.8A CN106850789B (en) 2017-01-22 2017-01-22 System and method for dynamically allocating game players based on server load detection

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710047119.8A CN106850789B (en) 2017-01-22 2017-01-22 System and method for dynamically allocating game players based on server load detection

Publications (2)

Publication Number Publication Date
CN106850789A true CN106850789A (en) 2017-06-13
CN106850789B CN106850789B (en) 2020-08-04

Family

ID=59121036

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710047119.8A Active CN106850789B (en) 2017-01-22 2017-01-22 System and method for dynamically allocating game players based on server load detection

Country Status (1)

Country Link
CN (1) CN106850789B (en)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107920122A (en) * 2017-11-23 2018-04-17 杭州电魂网络科技股份有限公司 Game player's matching process, device, match server and readable storage medium storing program for executing
CN109040309A (en) * 2018-09-14 2018-12-18 厦门天锐科技股份有限公司 A kind of load-balancing method based on XMPP communication handling server
CN109011568A (en) * 2018-08-24 2018-12-18 苏州玩友时代科技股份有限公司 The distribution method and system of map
CN110209500A (en) * 2019-06-03 2019-09-06 网易(杭州)网络有限公司 Server load balancing method and device
CN110327621A (en) * 2019-04-24 2019-10-15 上海恺英网络科技有限公司 For the matched method and apparatus of network game client
CN110404268A (en) * 2019-08-20 2019-11-05 网易(杭州)网络有限公司 A kind of player matches method and device in game
CN111013134A (en) * 2019-12-13 2020-04-17 北京像素软件科技股份有限公司 Server system and data processing method
WO2022068000A1 (en) * 2020-09-29 2022-04-07 苏州亿歌网络科技有限公司 Game data processing method, apparatus and device, and storage medium

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5879236A (en) * 1996-10-18 1999-03-09 Starwave Corporation System method and medium for sector windowing
CN1556491A (en) * 2003-12-30 2004-12-22 北京金山数字娱乐科技有限公司 Servicer system
CN102221929A (en) * 2011-06-09 2011-10-19 厦门吉比特网络技术股份有限公司 Distribution type game server system
CN103546524A (en) * 2012-07-17 2014-01-29 人人游戏网络科技发展(上海)有限公司 Method and equipment for dynamic load balancing of game servers
CN103920292A (en) * 2013-11-16 2014-07-16 大连创达技术交易市场有限公司 Server framework method for MMORPG (massively multiplayer online role playing game)
CN105812465A (en) * 2016-03-11 2016-07-27 厦门翼逗网络科技有限公司 Load balancing method, device and system of game servers

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5879236A (en) * 1996-10-18 1999-03-09 Starwave Corporation System method and medium for sector windowing
CN1556491A (en) * 2003-12-30 2004-12-22 北京金山数字娱乐科技有限公司 Servicer system
CN102221929A (en) * 2011-06-09 2011-10-19 厦门吉比特网络技术股份有限公司 Distribution type game server system
CN103546524A (en) * 2012-07-17 2014-01-29 人人游戏网络科技发展(上海)有限公司 Method and equipment for dynamic load balancing of game servers
CN103920292A (en) * 2013-11-16 2014-07-16 大连创达技术交易市场有限公司 Server framework method for MMORPG (massively multiplayer online role playing game)
CN105812465A (en) * 2016-03-11 2016-07-27 厦门翼逗网络科技有限公司 Load balancing method, device and system of game servers

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107920122A (en) * 2017-11-23 2018-04-17 杭州电魂网络科技股份有限公司 Game player's matching process, device, match server and readable storage medium storing program for executing
CN109011568B (en) * 2018-08-24 2020-02-14 苏州玩友时代科技股份有限公司 Game map distribution method and system
CN109011568A (en) * 2018-08-24 2018-12-18 苏州玩友时代科技股份有限公司 The distribution method and system of map
CN109040309A (en) * 2018-09-14 2018-12-18 厦门天锐科技股份有限公司 A kind of load-balancing method based on XMPP communication handling server
CN109040309B (en) * 2018-09-14 2021-03-05 厦门天锐科技股份有限公司 Load balancing method based on XMPP communication processing server
CN110327621A (en) * 2019-04-24 2019-10-15 上海恺英网络科技有限公司 For the matched method and apparatus of network game client
CN110209500A (en) * 2019-06-03 2019-09-06 网易(杭州)网络有限公司 Server load balancing method and device
CN110209500B (en) * 2019-06-03 2022-04-15 网易(杭州)网络有限公司 Server load balancing method and device
CN110404268A (en) * 2019-08-20 2019-11-05 网易(杭州)网络有限公司 A kind of player matches method and device in game
CN110404268B (en) * 2019-08-20 2023-04-07 网易(杭州)网络有限公司 Player matching method and device in game
CN111013134A (en) * 2019-12-13 2020-04-17 北京像素软件科技股份有限公司 Server system and data processing method
CN111013134B (en) * 2019-12-13 2023-08-25 北京像素软件科技股份有限公司 Server system and data processing method
WO2022068000A1 (en) * 2020-09-29 2022-04-07 苏州亿歌网络科技有限公司 Game data processing method, apparatus and device, and storage medium

Also Published As

Publication number Publication date
CN106850789B (en) 2020-08-04

Similar Documents

Publication Publication Date Title
CN106850789A (en) Game player's dynamic allocation system and method based on server load detection
CN102647398B (en) Method and device for realizing game on basis of mobile terminal
CN103475743B (en) A kind of method, apparatus and system for cloud service
CN104022945B (en) Method and device for realizing instant communication in client end
CN103533530B (en) The user's correspondence and user tracking method, system of a kind of striding equipment
US11020662B2 (en) Rendering system, control method, and storage medium
CN103685356B (en) Game running implementation method based on cloud computing
CN103685355B (en) A kind of online game operation implementation method based on cloud computing
Varvello et al. Exploring second life
CN103038724B (en) Communication control console with component aggregates
CN108696399B (en) Business service test method and device
IL240542B (en) Distributed cloud services system and uses thereof
CN109544243A (en) A kind of processing method and system of lottery information
WO2005103936A1 (en) A game platform system and a method of providing game service
CN105337841A (en) Information processing method and system, client, and server
CN105450589B (en) Remote invocation method and system
CN109151600B (en) Special effect missing compensation method and device, server and storage medium
CN110267077A (en) Offline cache method, apparatus, terminal and readable storage medium storing program for executing
KR20110139867A (en) Operation system and method for virtual world
CN104135503B (en) Method, Apparatus and system that data are downloaded
CN106354529A (en) Application upgrade method and relevant device
CN106210611A (en) A kind of for playing the method for video, video monitoring platform and system
CN108345508A (en) Interface calls test method and device
CN115794424B (en) Method for accessing three-dimensional model through distributed architecture
CN109617960A (en) A kind of web AR data presentation method based on attributed separation

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
GR01 Patent grant
GR01 Patent grant