CN104281488B - The method and system of server engine - Google Patents

The method and system of server engine Download PDF

Info

Publication number
CN104281488B
CN104281488B CN201310284753.5A CN201310284753A CN104281488B CN 104281488 B CN104281488 B CN 104281488B CN 201310284753 A CN201310284753 A CN 201310284753A CN 104281488 B CN104281488 B CN 104281488B
Authority
CN
China
Prior art keywords
event
timer
client
node
lua
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
CN201310284753.5A
Other languages
Chinese (zh)
Other versions
CN104281488A (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.)
Burson Marsteller Network Game Development (shenzhen) Co Ltd
Original Assignee
Burson Marsteller Network Game Development (shenzhen) 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 Burson Marsteller Network Game Development (shenzhen) Co Ltd filed Critical Burson Marsteller Network Game Development (shenzhen) Co Ltd
Priority to CN201310284753.5A priority Critical patent/CN104281488B/en
Publication of CN104281488A publication Critical patent/CN104281488A/en
Application granted granted Critical
Publication of CN104281488B publication Critical patent/CN104281488B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Computer And Data Communications (AREA)

Abstract

The invention provides a kind of method and system of server engine.Methods described includes:Carry out the event that action listener is currently triggered;Carry out case distribution and obtain the event handling object that the event is located at cementing layer;The event is handled by the event handling object reference Lua scripts positioned at cementing layer.The system includes:Monitor module, the event currently triggered for carrying out action listener;Case distribution module, the event handling object for obtaining the event for carrying out case distribution and being located at cementing layer;Script calling module, for handling the event by the event handling object reference Lua scripts positioned at cementing layer.Learning cost can be reduced using the present invention, realize quick exploitation.

Description

The method and system of server engine
Technical field
The present invention relates to the Internet, applications technology, more particularly to a kind of method and system of server engine.
Background technology
With the development of the Internet, applications, the application logic carried by server engine is also more and more, for example, trip Play server engine has mostly accessed multiple game, and user passes through interacting i.e. between client engine and game server engine The a certain game of access can be run.
Traditional server engine is all based on greatly ACE(Adaptive Communication Environmen, it is adaptive With communication environment)Open Source Framework realize that but because ACE Open Source Framework is excessively thick and heavy, developer is based in application There will be learning cost is too high when the server engine that ACE Open Source Framework is realized is developed, can not quickly be opened The defects of hair.
The content of the invention
Based on this, it is necessary to which for the server engine that the Open Source Framework based on ACE is realized, there is learning cost mistake Height, the technical problem that can not be quickly developed, there is provided one kind can reduce learning cost, realize the server engine quickly developed Implementation method.
Learning cost can be reduced in addition, there is a need to and provide one kind, realizes the realization system for the server engine quickly developed System.
A kind of implementation method of server engine, comprises the following steps:
Carry out the event that action listener is currently triggered;
Carry out case distribution and obtain the event handling object that the event is located at cementing layer;
The event is handled by the event handling object reference Lua scripts positioned at cementing layer.
In one of the embodiments, the progress case distribution obtains the event handling pair that the event is located at cementing layer As the step of before, methods described also includes:
Whether the event for judging currently to trigger is server event, if it is not, then obtaining the thing into progress case distribution Part is located at the step of event handling object of cementing layer, if so, then
At the client connection corresponding client event of data creation corresponding to the server event obtained according to monitoring Manage object;
Store the client event process object of the establishment.
In one of the embodiments, the step of client event process object of the storage establishment includes:
Node is extracted from idle chained list, the client event process object of the establishment is stored in the node;
By the node of the deposit client event process object added to using in chained list.
In one of the embodiments, the progress case distribution obtains the event handling pair that the event is located at cementing layer As the step of include:
Data corresponding to the event are obtained, and data corresponding to parsing the event obtain corresponding positional information and tested Demonstrate,prove information;
Search in the cementing layer and obtain node corresponding to the positional information using chained list;
Verify whether the node that the lookup obtains matches with the event by the checking information, if so, then
Obtain the event handling object being stored in the node.
In one of the embodiments, it is described by the event handling object reference Lua scripts positioned at cementing layer at The step of managing the event includes:
By corresponding interface function in the event handling object reference Lua interface layers positioned at cementing layer, pass through institute State interface function and trigger the Lua scripts processing event.
In one of the embodiments, corresponding to the event and the event that the progress action listener is currently triggered Before the step of data, methods described also includes:
Obtained from the timer event of setting i.e. by overdue minimum time.
In one of the embodiments, described the step of carrying out the event that action listener is currently triggered, includes:
Using the minimum time of the acquisition as the timeout value of action listener, action listener is opened, and pass through network event Triggering or time-out stop network event or timer event that current action listener is currently triggered;
Judge whether network event is triggered, if so, whether being then server event into the event for judging currently to trigger The step of, if it is not, then
The step of event is located at the event handling object of cementing layer is obtained into the progress case distribution.
In one of the embodiments, the progress case distribution obtains the event handling pair that the event is located at cementing layer As the step of include:
Each timer chain meter is examined in, according to addition timer event process object in the timer chain meter Sequencing judges whether timer event process object expires successively, if so, then
Obtain the overdue timer event process object.
In one of the embodiments, methods described also includes:
If determine network event to be triggered, and the network event is processed after finishing and will be examined in into described The step of each timer chain meter.
A kind of server engine realizes system, including:
Monitor module, the event currently triggered for carrying out action listener;
Case distribution module, the event handling object for obtaining the event for carrying out case distribution and being located at cementing layer;
Script calling module, for by described in the event handling object reference Lua scripts processing positioned at cementing layer Event.
In one of the embodiments, the system also includes:
Event judge module, whether the event for judging currently to trigger is server event, if it is not, then notifying the thing Part distribution module, if so, then notifying client object creation module;
The client corresponding to server event that the client object creation module is used to be obtained according to monitoring connects The corresponding client event process object of data creation;
Memory module, the client event for storing the establishment are dealt with objects.
In one of the embodiments, the memory module includes:
Node extraction unit, for extracting node from idle chained list, the client thing of the establishment is stored in the node Part is dealt with objects;
Node adding device, chained list is used for the node of the deposit client event process object to be added to In.
In one of the embodiments, the case distribution module includes:
Resolution unit, for obtaining data corresponding to the event, and data corresponding to parsing the event obtain accordingly Positional information and checking information;
Searching unit, node corresponding to the positional information is obtained using chained list for searching in the cementing layer;
Matching unit, for by the checking information verify it is described search obtained node and the event whether Match somebody with somebody, if so, then notification event process object acquiring unit;
The event handling object acquisition unit is used to obtain the event handling object being stored in the node.
In one of the embodiments, the script calling module is additionally operable to by the event handling positioned at cementing layer Corresponding interface function in object reference Lua interface layers, the Lua scripts are triggered by the interface function and handle the thing Part.
In one of the embodiments, the system also includes:
Time-obtaining module, for being obtained overdue minimum time from the timer event of the setting i.e..
In one of the embodiments, the monitoring module includes:
Action listener unit, for the timeout value using the minimum time of the acquisition as action listener, open event prison Listen, and the network event or timer currently triggered by the current action listener of the triggering or time-out stopping of network event Event;
Judging unit is triggered, for judging whether network event is triggered, if so, the event judge module is then notified, If it is not, then notify the case distribution module.
In one of the embodiments, the case distribution module includes:
Inspection unit, for being examined in each timer chain meter, according to addition timer in the timer chain meter The sequencing of event handling object judges whether timer event process object expires successively, if so, then notifying timer pair As acquiring unit;
The timer object acquiring unit is used to obtain the overdue timer event process object.
In one of the embodiments, if the triggering judging unit determines the network event and is triggered, and it is described Network event will notify the inspection unit after being disposed by the script calling module.
The method and system of above-mentioned server engine, the event that action listener is currently triggered is carried out, enter to act Part is distributed to obtain the event handling object that the event is located at cementing layer, passes through the event handling object reference Lua positioned at cementing layer Script handles the event, and because Lua scripts are deposited in server engine, server engine realizes event by Lua scripts Processing so that developer is that the new exploitation using logic can be achieved by Lua scripts, because Lua scripts are lightweights Script, therefore greatly reduce learning cost of the developer to server engine is new in server engine to realize Using the quick exploitation of logic.
Brief description of the drawings
Fig. 1 is the flow chart of the implementation method of server engine in one embodiment;
Fig. 2 is the block schematic illustration of server engine in one embodiment;
Fig. 3 is the flow chart of the implementation method of server engine in another embodiment;
Fig. 4 is the method flow diagram of the client event process object of storage creation in Fig. 3;
Fig. 5 is to carry out case distribution in one embodiment to obtain the method that the event is located at the event handling object of cementing layer Flow chart;
Fig. 6 is the method flow diagram that the event that action listener is currently triggered is carried out in one embodiment;
Fig. 7 is to carry out case distribution in another embodiment to obtain the side that the event is located at the event handling object of cementing layer Method flow chart;
Fig. 8 is the schematic diagram of timer chain meter in one embodiment;
Fig. 9 is the schematic diagram of server engine in one embodiment;
Figure 10 is the communication schematic diagram of client and server in one embodiment;
Figure 11 is the structural representation for realizing system of server engine in one embodiment;
Figure 12 is the structural representation for realizing system of server engine in another embodiment;
Figure 13 is the structural representation of memory module in Figure 12;
Figure 14 is the structural representation of case distribution module in one embodiment;
Figure 15 is the structural representation that module is monitored in one embodiment;
Figure 16 is the structural representation of case distribution module in another embodiment.
Embodiment
As shown in figure 1, in one embodiment, a kind of implementation method of server engine, comprise the following steps:
Step S110, carry out the event that action listener is currently triggered.
In the present embodiment, action listener is carried out to obtain the event triggered in server, the event currently triggered includes net Network event and timer event, wherein, network event refers to the event related to network communication, for example, transmitted by client Communication packet reach the event that the event that is triggered of service end or service end send communication packet to client;It is fixed When device event refer to the task that timing required for server performs, for example, every 30 somewhat check server and client it Between connection it is whether still effective.
Further, as shown in Fig. 2 network communication layer is the basis of server engine, for realizing the monitoring of event.
Step S130, carry out case distribution and obtain the event handling object that the event is located at cementing layer.
In the present embodiment, cementing layer equivalent to server engine intermediate layer, for the various applications in glued application layer The primitive layer of logical sum bottom, by the clear Compact representations of C Plus Plus by the greatly simplified complexity using interface exploitation, when The event of preceding triggering will be dispensed to corresponding event handling object in cementing layer, to call corresponding event handling object to carry out Respective handling.Specifically, the event of each triggering has unique corresponding event handling object.
In one embodiment, the cementing layer of server engine will be realized by C Plus Plus, to be provided more for server It is abundant, or even complicated algorithm and interface, the modularized design being easy to implement in server, and then improve autgmentability.
Step S150, the event is handled by the event handling object reference Lua scripts positioned at cementing layer.
In the present embodiment, Lua scripts are parasitized in server engine, are realized as the application layer in server engine various Using logic, the event handling object positioned at cementing layer is by for being responsible for receiving and handling the event currently triggered.Current triggering Event belonging to event handling object will call Lua scripts in corresponding object carry out event processing, to realize the event Response.
Fig. 2 is please referred to, Lua scripts are will be present in server engine in Lua application layers, for realizing various answer With logic, therefore the interface provided by cementing layer is delivered to Lua application layers by the various events that server engine is triggered In, and then the event is responded by Lua scripts, realize corresponding function.
It is more understandable because Lua scripts are the lightweight scripts for extending C++ programmings, therefore, for developer Speech, reduces coding difficulty, it is not necessary to expends excessive learning cost, and then the various applications based on server engine are opened Hair quickly greatly improves, and shortens the construction cycle of application.
As shown in figure 3, in one embodiment, before above-mentioned steps S130, this method also includes:
Step S210, whether the event for judging currently to trigger is server event, if it is not, then enter step S130, if so, Then enter step S230.
In the present embodiment, the event that currently triggers may be network event or timer event, wherein, network event includes Server event and client event, wherein, server event is readable event, the triggering of server event will represent newly Client be connected with server;Client event is readable event or writeable event, is be different from server event other Network event, client event are that readable event then represents new communication packet arrival, and writeable event has then represent letter Breath will return to client.
The event currently triggered is judged, if it is server event to determine the event currently triggered, illustrates have New client is connected with server, it is necessary to which relevant treatment is done in the addition to client, if determining the event currently triggered not For server event, then the event that illustrates currently to be triggered for client event or timer event, it is necessary into step S130, To be distributed to the event currently triggered.
Step S230, the client corresponding to server event obtained according to monitoring connect the corresponding client of data creation Hold event handling object.
In the present embodiment, for the server event currently triggered, corresponding client connection data will be received, to pass through The client connection data initialization client connection of reception, the registered client in server engine, creates the client institute Corresponding client event process object.Specifically, client event process object will be used to handling corresponding to client exist The client event triggered in server engine.
Step S250, the client event process object of storage creation, according to where being dealt with objects the client event Storage location generation positional information, and return the positional information and checking information to the client.
In the present embodiment, the client event process object of establishment is stored, in order to which client event is triggered When, handled by being distributed to corresponding client event.
As shown in figure 4, in one embodiment, above-mentioned steps S250 includes:
Step S251, node is extracted from idle chained list, in the client event process object that node deposit creates.
In the present embodiment, for ease of carry out client event process object storage and extraction, will set idle chained list and Realized using chained list, idle chained list and cause chained list memory cell is used as using array.
Any node is taken from idle chained list, the node is idle node, can be by the client event processing pair of establishment As being stored in this acquirement into node.Compared with traditional memory mechanism, it is not necessary to the lookup of idle node is carried out, for changing It, it is not necessary to whether query node is idle in turn from the beginning to the end, and its time complexity inquired about is O(n), wherein, n grasps for inquiry The scale of work, and increase with n increase, time complexity O(n)Smaller, then execution efficiency is higher.
And the storage of the client event process object carried out by said process directly can take out in idle chained list First node can obtain idle node, its time complexity O(1), greatly reduce time complexity.
Step S253, the node of client event process object is stored into added to using in chained list.
In the present embodiment, by realizing the storage of multiple client event handling object using chained list, for being connected to For the magnanimity client of server, the magnanimity client event process object corresponding to magnanimity client is stored in and used Chained list will ensure that the order and high efficiency of storage.
Accordingly, the storage dealt with objects in the client event realized by idle chained list and using chained list it Afterwards, once a certain client disconnects with server, then need to delete corresponding client event process object.
Specifically, will be to being searched using chained list, to search the client corresponding to the client disconnected The node where event handling object and client event process object is held, is removed at the client event stored in node Object is managed, and the node is deleted from using chained list, and added in idle chained list, used chained list by idle chained list and The memory mechanism realized will ensure that time complexity is constant, it is not necessary to consider the increase of time complexity.
As shown in figure 5, in one embodiment, above-mentioned steps S130 includes:
Step S131a, data corresponding to the event are obtained, and data corresponding to parsing the event obtain corresponding position letter Breath and checking information.
In the present embodiment, data corresponding to the event are the data that client is passed back, include the client and server Engine establishes the checking information corresponding to positional information and the event resulting during connection.Listen to after the triggering of event, The data corresponding to the event will be obtained, and parsed, to obtain the positional information and checking information in data.
Further, the data corresponding to the event include positional information and checking information, wherein, positional information is used for The storage location of the event handling object of the processing event is indicated, checking information is then used to verify the section corresponding to the positional information Whether the event handling object stored in point is corresponding with the event, to ensure the accuracy of program operation.
For example, the data corresponding to the event can use this data structure of epoll_event.data, 64 are contained Field, wherein, first 32 bit field is used to preserve checking information, and latter 32 save position subscript.
Step S133a, search in cementing layer and obtain node corresponding to positional information using chained list.
In the present embodiment, the positional information obtained according to parsing searched in using chained list, to obtain phase The node answered, the event handling object corresponding to the event currently triggered is stored in the node.
Step S135a, search whether obtained node matches with the event by checking information checking, if so, then entering Step S137a, if it is not, then terminating.
In the present embodiment, node also saving unique sequence information when preserving event handling object, the number in node Group subscript is the position of the node.Therefore, the positional information obtained according to parsing checks to obtain array index and position letter The consistent node of manner of breathing, and then the sequence information preserved in node is read, the checking information that the sequence information is obtained with parsing It is compared, judges whether unanimously, if so, being then verified, the event handling object that the node is stored can be applied to current The event of triggering is responded.
Step S137a, obtain the event handling object being stored in node.
In the present embodiment, obtained in the node obtained from lookup and be stored in event handling object therein, to apply the thing The event that the processing of part process object is currently triggered.
In the distribution of above-mentioned event and the acquisition of event handling object, by checking information enter event handling object Row secondary-confirmation, in the case of high concurrent, especially in the case where magnanimity client connects, store event handling object There is the overlapping situation of handle and happened occasionally in node, i.e., a certain client may be completed currently because abnormal conditions are also untreated Another client for being just newly connected of event covered, the handle in turn resulted in event process object is overlapping, in fact, The event handling object that now node is stored is not to look for obtained event handling object, is not right with current event Answer, therefore, will can prevent the event handling object handles using covering from working as by the secondary-confirmation that checking information is carried out Preceding event, it ensure that the accuracy of operation.
In one embodiment, above-mentioned steps S150 detailed process is:Pass through the event handling object positioned at cementing layer Corresponding interface function in Lua interface layers is called, triggering Lua scripts by the interface function handles event.
In the present embodiment, the cementing layer in server engine will also register correlation function to Lua application layers, be called with passing through Related Lua interface functions notify event that the processing of Lua scripts currently triggers.
Further, referring to Fig. 2, the cementing layer in server engine includes C++ cementing layers and Lua interface layers, its In, C++ cementing layers then provide the distribution for the event that realizes and the acquisition of event handling object, Lua interface layers for Lua application layers The interface of access cementing layer, i.e. C++ main programs.
Because the data structure in obtained event handling object is present in the form of C Plus Plus, for Lua application layers For, it is that can not directly invoke, it is necessary to carry out the conversion of data structure to it, by by number existing in the form of C Plus Plus According to structure be converted in the form of Lua language existing for data structure.
Therefore, advance equipment mapping table, wherein, mapping table have recorded the event handling realized in the form of C Plus Plus Mapping relations between the event handling object that the form of object and corresponding Lua language is realized.Will by the mapping table of setting Data structure in obtained event handling object is changed, to be converted to the event handling object of Lua language realization, and then Search and obtain in Lua interface layers Lua interface functions corresponding to the event handling object after conversion, to call Lua interface letters Number trigger event in Lua application layers, calls the function in Lua scripts to handle the event.
Wherein, because C++ cementing layers are realized by C Plus Plus, and Lua application layers are realized by Lua language, The language realized is different, therefore can not directly invoke Lua scripts, it is necessary to by mapping the data to being write using C Plus Plus Structure carries out changing the function in the addressable Lua scripts.
In one embodiment, before above-mentioned steps S130, this method also includes obtaining from the timer event of setting I.e. by overdue minimum time the step of.
In the present embodiment, server engine usually sets several timer events during running, therefore from setting Obtained in several fixed timer events i.e. by overdue minimum time.
As shown in fig. 6, in one embodiment, above-mentioned steps S110 includes:
Step S111, using the minimum time of acquisition as the timeout value of action listener, action listener is opened, and pass through network The triggering of event or time-out stop network event or timer event that current action listener is currently triggered.
In the present embodiment, the action listener carried out in server engine is that circulation is carried out, and is getting timer event In i.e. by after overdue minimum time, the timeout value using this minimum time as action listener is that is, current started new One wheel monitors corresponding timeout value.
Further, after the timeout value there is provided action listener, reactor object starts new round monitoring, question response Device object notice network event is triggered or time-out will carry out the processing of network event then followed by processing timer afterwards Event, or processing timer event.The reactor object is Reactor objects, in network communication layer.
Step S113, judges whether network event is triggered, if so, then entering step S210, if it is not, then entering step S130。
In the present embodiment, after the action listener stopping currently being carried out, the event prison so that currently being carried out will determine that Whether the reason for listening stopping is the triggering of network event, if so, then enter the processing that step S210 carries out network event, if it is not, Then illustrate that timer event is triggered, therefore, it is necessary to distribute timer event into step S130, to handle the timer thing Part.
As shown in fig. 7, in one embodiment, above-mentioned steps S130 also includes:
Step S131b, each timer chain meter is examined in, according to addition timer event processing in timer chain meter The sequencing of object judges whether timer event process object expires successively, if so, then entering step S133b, if it is not, then Return to step S310.
In the present embodiment, it is not triggered if determining network event, timer event is triggered, then is examined in each Timer chain meter, check whether and expire added to the sequencing of timer chain meter according to timer event process object, if institute The first timer event process object checked is not yet due, then can directly stop checking, be directly entered step S310, if it is not, Overdue timer event process object will be then acquired, and will be responded.
Because timer event process object is to be added to according to the sequencing of time in timer chain meter, first Timer event process object will be overdue earliest, therefore, not arrived if checking and obtaining first timer event process object Phase, then necessarily checked again, to save system resource.
If network event is determined to be triggered, and network event is processed finish after will enter it is above-mentioned be examined in it is each The step of timer chain meter, and then make it that the processing of network event and timer event in server engine is unified, carry The high accuracy of operation.
Step S133b, obtain overdue timer event process object.
In the present embodiment, overdue timer event process object is obtained from timer chain meter, with by positioned at gluing The timer event process object of layer calls Lua scripts to be responded.
Step S310, obtained from the timer event of setting i.e. by overdue minimum time.
In one embodiment, timer chain meter is used to load all task of timer, for storing timer event Process object, and then the task of timer for completing setting is dealt with objects by timer event.
Further, timer chain meter is made up of multiple doubly linked lists, the timer event in each doubly linked list Process object all will be corresponding with same time type.For example, as shown in figure 8, include 5 Two-way Chains in timer chain meter Table, wherein, first doubly linked list is corresponding with 1S time type, at the timer event in first doubly linked list The timing managed set by object is 1S;Second doubly linked list is corresponding with 2S time type, and second double The timing set to the timer event process object of chained list is 2S, and the rest may be inferred, two-way in timer chain meter Chained list is according to its time type set.
Accordingly, the addition that timer event is dealt with objects in timer chain meter only needs to be traveled through according to time type To find time type identical doubly linked list, timer event process object is added to chained list afterbody;Timer The deletion of event handling object will directly delete corresponding node, and node before and after connecting, Two-way Chain in timer chain meter The time for greatly reducing addition timer event process object and deletion timer event process object is answered in the setting of table Miscellaneous degree, improves efficiency.
In one embodiment, server engine needs usually to need to be timed device event according to the exploitation of application logic The establishment of process object, and the timer event process object of establishment is opened, and then trigger and perform timer event process object, To complete to apply the timed task in logic.
Principle shown in reference picture 9, developer can be by calling the constructed fuction of timer class to call in Lua application layers The Lua interface function create_timer that Lua functions defined in Lua interface layers, i.e. C++ cementing layers are registered, this Lua connect The tolua_interface_timer_creater_timer00 functions that mouth function will have been corresponded in C++ cementing layers, now, In tolua_interface_timer_creater_timer00 functions can it is newly-built go out timer event process object, and Distribute unique mark index.Using unique mark index as key, stored using timer event process object as value, and The unique mark index that the timer event is dealt with objects is returned into Lua application layers, and then completes timer event processing The establishment of object.
When needing to open the timer event process object created, by incoming corresponding parameter, such as interval time (inteval)Whether execution is circulated(isloop), now, the function defined in Lua interface layers will be called, such as StartTimer functions, now, the function that C++ cementing layers will be called to be registered by the function defined in Lua interface layers, and will Timer event process object unique mark index, interval time and whether circulate execution etc. be used as parameter transmission.
Corresponding timer event process object is searched in C++ cementing layers according to the unique mark of transmission, and will be incoming Interval time and whether circulate perform the two parameters assign the timer event process object, at completion timing device event Manage the unlatching of object.
After opening timer event process object, timer event process object will be added in timer chain meter Detection, with treat the timer event process object expire after call the timer event deal with objects in ProceessOnTimerOut methods, Lua interface layers institute is called according to unique mark by ProceessOnTimerOut methods The interface function of definition, searching Lua according to unique mark index by interface function defined in the Lua interface layers of calling should With the object in layer, the Lua scripts processing timer event in Lua application layers is triggered.
In one embodiment, as shown in Fig. 2 the self-defined communications protocol in server engine will be used to realize client Communication between server, between server and server, by using unified self-defined communications protocol to the full extent The durability of packet parsing between each server is ensure that, improves development efficiency and the extent for multiplexing of each server capability.
It is used to realize that communication bag form to be such as used in communication by taking game server engine as an example, in game server engine Shown in following table:
Wherein, traffic ID identifies the server corresponding to each business, for example, GameServer is responsible for row board logic Realize;Play ID corresponding game by unique mark, such as fighting landlord etc.;Platform ID is used to identify user sources platform, i.e., Client.
For the version of individual command word, when the content of individual command word needs to expand or changed, consider first to order Word is expanded.If being not met by demand, consideration is realized using new command word.
As shown in Figure 10, after client is packaged according to the communication bag form described in upper table will carry out network transmission with Communication bag is transmitted into the server for the server engine for having run above-mentioned server engine implementation method institute framework, server The communication bag received will be parsed.
As shown in figure 11, in one embodiment, a kind of server engine realize system include monitor module 110, thing Part distribution module 130 and script calling module 150.
Monitor module 110, the event currently triggered for carrying out action listener.
In the present embodiment, monitor module 110 and carry out action listener to obtain the event triggered in server, currently trigger Event includes network event and timer event, wherein, network event refers to the event related to network communication, for example, objective The event or service end that the service end that communication packet transmitted by the end of family reaches is triggered send communication packet to client Event;Timer event refers to the task that timing required for server performs, for example, every 30 somewhat check server with Whether the connection between client is still effective.
Further, as shown in Fig. 2 network communication layer is the basis of server engine, for realizing the monitoring of event.
Case distribution module 130, the event handling object for obtaining the event for carrying out case distribution and being located at cementing layer.
In the present embodiment, cementing layer equivalent to server engine intermediate layer, for the various applications in glued application layer The primitive layer of logical sum bottom, by the clear Compact representations of C Plus Plus by the greatly simplified complexity using interface exploitation, thing The event that part distribution module 130 currently to trigger will be dispensed to corresponding event handling object in cementing layer, to call phase The event handling object answered carries out respective handling.Specifically, the event of each triggering has unique corresponding event handling object.
In one embodiment, the cementing layer of server engine will be realized by C Plus Plus, to be provided more for server It is abundant, or even complicated algorithm and interface, the modularized design being easy to implement in server, and then improve autgmentability.
Script calling module 150, for handling the thing by the event handling object reference Lua scripts positioned at cementing layer Part.
In the present embodiment, Lua scripts are parasitized in server engine, are realized as the application layer in server engine various Using logic, the event handling object positioned at cementing layer is by for being responsible for receiving and handling the event currently triggered.Script calls Corresponding object in the event handling object reference Lua scripts belonging to event that module 150 currently to trigger carries out event Processing, to realize the response of the event.
Fig. 2 is please referred to, Lua scripts are will be present in server engine in Lua application layers, for realizing various answer With logic, therefore the interface provided by cementing layer is delivered to Lua application layers by the various events that server engine is triggered In, and then call Lua scripts to respond the event by script calling module 150, realize corresponding function.
It is more understandable because Lua scripts are the lightweight scripts for extending C++ programmings, therefore, for developer Speech, reduces coding difficulty, it is not necessary to expends excessive learning cost, and then the various applications based on server engine are opened Hair quickly greatly improves, and shortens the construction cycle of application.
As shown in figure 12, in one embodiment, the system also includes event judge module 210, client object creates Module 230 and memory module 250.
Event judge module 210, whether the event for judging currently to trigger is server event, if it is not, then notifying thing Part distribution module 130, if so, then notifying client object creation module 230.
In the present embodiment, the event that currently triggers may be network event or timer event, wherein, network event includes Server event and client event, wherein, server event is readable event, the triggering of server event will represent newly Client be connected with server;Client event is readable event or writeable event, is be different from server event other Network event, client event are that readable event then represents new communication packet arrival, and writeable event has then represent letter Breath will return to client.
Event judge module 210 is judged the event currently triggered, if it is service to determine the event currently triggered Device event, then illustrate there is new client to be connected with server, it is necessary to addition of the client object creation module 230 to client Relevant treatment is done, if it is not server event to determine the event currently triggered, the event for illustrating currently to be triggered is client End event or timer event are, it is necessary to which case distribution module 130 is distributed to the event currently triggered.
Client object creation module 230, for the client connection according to corresponding to monitoring obtained server event The corresponding client event process object of data creation.
In the present embodiment, for the server event currently triggered, client object creation module 230 will receive corresponding Client connects data, is connected with connecting data initialization client by the client of reception, is registered in server engine Client, create the client event process object corresponding to the client.Specifically, client event process object will by with In the client event that client corresponding to processing triggers in server engine.
Memory module 250, the client event for storage creation are dealt with objects, according to client event processing pair As the storage location generation positional information at place, and the positional information and checking information are returned to the client.
In the present embodiment, memory module 250 is stored the client event process object of establishment, in order to client When event is triggered, handled by being distributed to corresponding client event.
As shown in figure 13, in one embodiment, above-mentioned memory module 250 includes Node extraction unit 251 and node adds Add unit 253.
Node extraction unit 251, for extracting node from idle chained list, in the client event processing that node deposit creates Object.
In the present embodiment, for ease of carry out client event process object storage and extraction, will set idle chained list and Realized using chained list, idle chained list and cause chained list memory cell is used as using array.
Node extraction unit 251 takes any node from idle chained list, and the node is idle node, can be by the visitor of establishment Event handling object in family end is stored in this acquirement into node.Compared with traditional memory mechanism, it is not necessary to carry out idle section The lookup of point, in other words, it is not necessary to which whether query node is idle in turn from the beginning to the end, and its time complexity inquired about is O (n), wherein, n is the scale of inquiry operation, and increases with n increase, time complexity O(n)It is smaller, then perform effect Rate is higher.
And the storage of the client event process object carried out by said process directly can take out in idle chained list First node can obtain idle node, its time complexity O(1), greatly reduce time complexity.
Node adding device 253, for being stored into the node of client event process object added to using in chained list.
In the present embodiment, by realizing the storage of multiple client event handling object using chained list, for being connected to For the magnanimity client of server, the magnanimity client event process object corresponding to magnanimity client is stored in and used Chained list will ensure that the order and high efficiency of storage.
Accordingly, the storage dealt with objects in the client event realized by idle chained list and using chained list it Afterwards, once a certain client disconnects with server, then memory module 250 is needed to deal with objects corresponding client event Deleted.
Specifically, memory module 250 will be to being searched, to search the client institute disconnected using chained list Node where corresponding client event process object and client event process object, removes the visitor stored in node Family end event handling object, and the node is deleted from using chained list, and added in idle chained list, by idle chained list and It will ensure that time complexity is constant using the memory mechanism that chained list is realized, it is not necessary to consider the increasing of time complexity Add.
As shown at 14, in one embodiment, above-mentioned case distribution module 130 includes resolution unit 131a, searching unit 133a, matching unit 135a and event handling object acquisition unit 137a.
Resolution unit 131a, for obtaining data corresponding to the event, and parse data corresponding to event and obtain accordingly Positional information and checking information.
In the present embodiment, data corresponding to the event are the data that client is passed back, include the client and server Engine establishes the checking information corresponding to positional information and the event resulting during connection.Listen to after the triggering of event, Resolution unit 131a will obtain data corresponding to the event, and be parsed, to obtain the positional information in data and checking Information.
Further, the data corresponding to the event include positional information and checking information, wherein, positional information is used for The storage location of the event handling object of the processing event is indicated, checking information is then used to verify the section corresponding to the positional information Whether the event handling object stored in point is corresponding with the event, to ensure the accuracy of program operation.
For example, the data corresponding to the event can use this data structure of epoll_event.data, 64 are contained Field, wherein, first 32 bit field is used to preserve checking information, and latter 32 save position subscript.
Searching unit 133a, node corresponding to positional information is obtained using chained list for searching in cementing layer.
In the present embodiment, the positional information that searching unit 133a obtains according to parsing looked into using chained list Look for, to obtain corresponding node, the event handling object corresponding to the event currently triggered is stored in the node.
Matching unit 135a, for searching whether obtained node matches with the event by checking information checking, if so, Then notification event process object acquiring unit 137a, if it is not, then stopping performing.
In the present embodiment, node also saving unique sequence information when preserving event handling object, the number in node Group subscript is the position of the node.Therefore, the positional information that matching unit 135a obtains according to parsing checks to obtain under array The mark node consistent with the positional information, and then the sequence information preserved in node is read, by the sequence information and parse To checking information be compared, judge whether it is consistent, can notification event process object acquiring unit if so, be then verified The event handling object that 137a is stored using the node responds to the event currently triggered.
Event handling object acquisition unit 137a, for obtaining the event handling object being stored in node.
In the present embodiment, event handling object acquisition unit 137a from search obtained in obtained node be stored in it is therein Event handling object, with the event currently triggered using the event handling object handles.
In the distribution of above-mentioned event and the acquisition of event handling object, by checking information enter event handling object Row secondary-confirmation, in the case of high concurrent, especially in the case where magnanimity client connects, store event handling object There is the overlapping situation of handle and happened occasionally in node, i.e., a certain client may be completed currently because abnormal conditions are also untreated Another client for being just newly connected of event covered, the handle in turn resulted in event process object is overlapping, in fact, The event handling object that now node is stored is not to look for obtained event handling object, is not right with current event Answer, therefore, will can prevent the event handling object handles using covering from working as by the secondary-confirmation that checking information is carried out Preceding event, it ensure that the accuracy of operation.
In one embodiment, above-mentioned script calling module 150 is additionally operable to by the event handling object positioned at cementing layer Corresponding interface function in Lua interface layers is called, triggering Lua scripts by interface function handles the event.
In the present embodiment, registration correlation function is also called mould by the cementing layer in server engine to Lua application layers, script Block 150 notifies Lua scripts to handle the event currently triggered by calling related Lua interface functions.
Further, referring to Fig. 2, the cementing layer in server engine includes C++ cementing layers and Lua interface layers, its In, C++ cementing layers then provide the distribution for the event that realizes and the acquisition of event handling object, Lua interface layers for Lua application layers The interface of access cementing layer, i.e. C++ main programs.
Because the data structure in obtained event handling object is present in the form of C Plus Plus, for Lua application layers For, it is that can not directly invoke, it is necessary to carry out the conversion of data structure to it, by by number existing in the form of C Plus Plus According to structure be converted in the form of Lua language existing for data structure.
Therefore, advance equipment mapping table, wherein, mapping table have recorded the event handling realized in the form of C Plus Plus Mapping relations between the event handling object that the form of object and corresponding Lua language is realized.
Script calling module 150 is turned the data structure in obtained event handling object by the mapping table of setting Change, be converted to Lua language realization event handling object, and then search obtain in Lua interface layers with the event after conversion The Lua interface functions corresponding to object are managed, to call Lua interface functions trigger event in Lua application layers, call Lua scripts In function handle the event.
Wherein, because C++ cementing layers are realized by C Plus Plus, and Lua application layers are realized by Lua language, The language realized is different, therefore can not directly invoke Lua scripts, it is necessary to by mapping the data to being write using C Plus Plus Structure carries out changing the function in the addressable Lua scripts.
In one embodiment, said system also includes time-obtaining module, and the time-obtaining module is used for from setting Obtained in timer event i.e. by overdue minimum time.
In the present embodiment, server engine usually sets several timer events, therefore time during running Acquisition module is obtained i.e. from several timer events of setting by overdue minimum time.
As shown in figure 15, in one embodiment, it is single including action listener unit 111 and triggering judgement to monitor module 110 Member 113.
Action listener unit 111, for the timeout value using the minimum time of acquisition as action listener, open event prison Listen, and the network event or timer currently triggered by the current action listener of the triggering or time-out stopping of network event Event.
In the present embodiment, the action listener carried out in server engine is that circulation is carried out, and is getting timer event In i.e. by after overdue minimum time, timeout value of the action listener unit 111 using this minimum time as action listener, i.e., The new round currently started monitors corresponding timeout value.
Further, after the timeout value there is provided action listener, action listener unit 111 will cause reactor object Start a new round to monitor, question response device object notice network event is triggered or time-out will carry out the processing of network event afterwards Then followed by processing timer event, or processing timer event.The reactor object is Reactor objects, is in In network communication layer
Judging unit 113 is triggered, for judging whether network event is triggered, if so, then notification event judge module 210, if it is not, then notification event distribution module 130.
In the present embodiment, after the action listener stopping currently being carried out, triggering judging unit 113 will determine that so that current Whether the reason for action listener carried out stops is the triggering of network event, if so, then entering step S210 carries out network thing The processing of part, if it is not, then illustrating that timer event is triggered, therefore, it is necessary to distribute timer event into step S130, with place Manage the timer event.
As shown in figure 16, in one embodiment, above-mentioned case distribution module 130 includes inspection unit 131b and timer Object acquisition unit 133b.
Inspection unit 131b, for being examined in each timer chain meter, according to addition timer in timer chain meter The sequencing of event handling object judges whether timer event process object expires successively, if so, then notifying timer pair As acquiring unit 133b, if it is not, then notifying time-obtaining module 310.
In the present embodiment, be not triggered if inspection unit 131b determines network event, timer event is triggered, then according to Secondary each timer chain meter of inspection, the sequencing inspection according to timer event process object added to timer chain meter are It is no to expire, if the first timer event process object checked is not yet due, it can directly stop checking, directly notify the time Acquisition module 310, if it is not, then notice timer object acquiring unit 133b acquires overdue timer event processing pair As, and respond.
Because timer event process object is to be added to according to the sequencing of time in timer chain meter, first Timer event process object will be overdue earliest, therefore, if inspection unit 131b checks to obtain first timer event Deal with objects not yet due, then necessarily checked again, to save system resource.
If triggering judging unit 113 determines network event and is triggered, and network event is handled by script calling module 150 Inspection unit 131b will be notified after finishing, and then the processing of network event and timer event in server engine is obtained It is unified, improve the accuracy of operation.
Timer object acquiring unit 133b, for obtaining overdue timer event process object.
In the present embodiment, timer object acquiring unit 133b is obtained from timer chain meter at overdue timer event Object is managed, to call Lua scripts to be responded by the timer event process object positioned at cementing layer.
In one embodiment, timer chain meter is used to load all task of timer, for storing timer event Process object, and then the task of timer for completing setting is dealt with objects by timer event.
Further, timer chain meter is made up of multiple doubly linked lists, the timer event in each doubly linked list Process object all will be corresponding with same time type.
Accordingly, the addition that timer event is dealt with objects in timer chain meter only needs to be traveled through according to time type To find time type identical doubly linked list, timer event process object is added to chained list afterbody;Timer The deletion of event handling object will directly delete corresponding node, and node before and after connecting, Two-way Chain in timer chain meter The time for greatly reducing addition timer event process object and deletion timer event process object is answered in the setting of table Miscellaneous degree, improves efficiency.
In one embodiment, server engine needs usually to need to be timed device event according to the exploitation of application logic The establishment of process object, and the timer event process object of establishment is opened, and then trigger and perform timer event process object, To complete to apply the timed task in logic.
Developer can be by calling the constructed fuction of timer class to call defined in Lua interface layers in Lua application layers The Lua interface function create_timer that Lua functions, i.e. C++ cementing layers are registered, this Lua interface function will correspond to C++ Tolua_interface_timer_creater_timer00 functions in cementing layer, now, tolua_interface_ In timer_creater_timer00 functions can it is newly-built go out timer event process object, and distribute unique mark index.Using unique mark index as key, stored using timer event process object as value, and by the timer thing The unique mark index of part process object returns to Lua application layers, and then completes the establishment of timer event process object.
When needing to open the timer event process object created, by incoming corresponding parameter, such as interval time (inteval)Whether execution is circulated(isloop), now, the function defined in Lua interface layers will be called, such as StartTimer functions, now, the function that C++ cementing layers will be called to be registered by the function defined in Lua interface layers, and will Timer event process object unique mark index, interval time and whether circulate execution etc. be used as parameter transmission.
Corresponding timer event process object is searched in C++ cementing layers according to the unique mark of transmission, and will be incoming Interval time and whether circulate perform the two parameters assign the timer event process object, at completion timing device event Manage the unlatching of object.
After opening timer event process object, timer event process object will be added in timer chain meter Detection, with treat the timer event process object expire after call the timer event deal with objects in ProceessOnTimerOut methods, Lua interface layers institute is called according to unique mark by ProceessOnTimerOut methods The interface function of definition, searching Lua according to unique mark index by interface function defined in the Lua interface layers of calling should With the object in layer, the Lua scripts processing timer event in Lua application layers is triggered.
In one embodiment, the self-defined communications protocol in server engine will be used to realizing client and server it Between, the communication between server and server, each clothes ensure that by using unified self-defined communications protocol to the full extent The durability of packet parsing, improves development efficiency and the extent for multiplexing of each server capability between business device.
The method and system of above-mentioned server engine, the event that action listener is currently triggered is carried out, enter to act Part is distributed to obtain the event handling object that the event is located at cementing layer, passes through the event handling object reference Lua positioned at cementing layer Script handles the event, and because Lua scripts are deposited in server engine, server engine realizes event by Lua scripts Processing so that developer is that the new exploitation using logic can be achieved by Lua scripts, because Lua scripts are lightweights Script, therefore greatly reduce learning cost of the developer to server engine is new in server engine to realize Using the quick exploitation of logic.
One of ordinary skill in the art will appreciate that realize all or part of flow in above-described embodiment method, being can be with The hardware of correlation is instructed to complete by computer program, described program can be stored in a computer read/write memory medium In, the program is upon execution, it may include such as the flow of the embodiment of above-mentioned each method.Wherein, described storage medium can be magnetic Dish, CD, read-only memory(Read-Only Memory, ROM)Or random access memory(Random Access Memory, RAM)Deng.
Embodiment described above only expresses the several embodiments of the present invention, and its description is more specific and detailed, but simultaneously Therefore the limitation to the scope of the claims of the present invention can not be interpreted as.It should be pointed out that for one of ordinary skill in the art For, without departing from the inventive concept of the premise, various modifications and improvements can be made, these belong to the guarantor of the present invention Protect scope.Therefore, the protection domain of patent of the present invention should be determined by the appended claims.

Claims (16)

1. a kind of implementation method of server engine, comprises the following steps:
Carry out the event that action listener is currently triggered;
Data corresponding to the event are obtained, and data corresponding to parsing the event obtain corresponding positional information and checking is believed Breath;
Carry out case distribution and obtain the event handling object that the event is located at cementing layer;
The event is handled by the event handling object reference Lua scripts positioned at cementing layer;
The progress case distribution obtains the step of event is located at the event handling object of cementing layer, including:Search glued Node corresponding to positional information is obtained using chained list in layer, search obtained node by checking information checking is with the event No matching, if so, the event handling object being stored in the node is obtained, wherein, the cementing layer is in communications protocol middle position Between Web communication layer and Lua application layers.
2. according to the method for claim 1, it is characterised in that the progress case distribution obtains the event positioned at gluing Before the step of event handling object of layer, methods described also includes:
Whether the event for judging currently to trigger is server event, if it is not, then obtaining the event position into progress case distribution In the event handling object of cementing layer the step of, if so, then
The corresponding client event processing pair of client connection data creation corresponding to the server event obtained according to monitoring As;
Store the client event process object of the establishment.
3. according to the method for claim 2, it is characterised in that the client event process object of the storage establishment The step of include:
Node is extracted from idle chained list, the client event process object of the establishment is stored in the node;
By the node of the deposit client event process object added to using in chained list.
4. according to the method for claim 1, it is characterised in that described to pass through the event handling object positioned at cementing layer The step of calling Lua scripts to handle the event includes:
By corresponding interface function in the event handling object reference Lua interface layers positioned at cementing layer, connect by described Mouth function triggers the Lua scripts and handles the event.
5. according to the method for claim 1, it is characterised in that the event for carrying out action listener and currently being triggered Before step, methods described also includes:
Obtained from the timer event of setting i.e. by overdue minimum time.
6. according to the method for claim 5, it is characterised in that the event for carrying out action listener and currently being triggered Step includes:
Using the minimum time as the timeout value of action listener, action listener, and the triggering or super for passing through network event are opened When stop network event or timer event that current action listener is currently triggered;
Judge whether network event is triggered, if so, then into judge the event that currently triggers whether be server event step Suddenly, if it is not, then
The step of event is located at the event handling object of cementing layer is obtained into the progress case distribution.
7. according to the method for claim 6, it is characterised in that the progress case distribution obtains the event positioned at gluing The step of event handling object of layer, includes:
Each timer chain meter is examined in, according to the priority of addition timer event process object in the timer chain meter Order judges whether timer event process object expires successively, if so, then
Obtain the overdue timer event process object.
8. according to the method for claim 7, it is characterised in that methods described also includes:
If network event is determined to be triggered, and the network event is processed finish after will enter it is described be examined in it is each The step of timer chain meter.
9. a kind of server engine realizes system, it is characterised in that including:
Monitor module, the event currently triggered for carrying out action listener;
Case distribution module, the event handling object for obtaining the event for carrying out case distribution and being located at cementing layer, wherein, institute Stating case distribution module includes:Resolution unit, for obtaining data corresponding to the event, and parse number corresponding to the event According to obtaining corresponding positional information and checking information;Searching unit, institute is obtained using chained list for searching in the cementing layer Node corresponding to positional information is stated, cementing layer is in communications protocol between Web communication layer and Lua application layers;Matching is single Member, for verifying whether the node that the lookup obtains matches with the event by the checking information, if so, then notifying thing Part deals with objects acquiring unit;The event handling object acquisition unit is used to obtain the event handling being stored in the node Object;
Script calling module, for handling the event by the event handling object reference Lua scripts positioned at cementing layer.
10. system according to claim 9, it is characterised in that the system also includes:
Event judge module, whether the event for judging currently to trigger is server event, if it is not, then notifying the event point Module is sent out, if so, then notifying client object creation module;
The client corresponding to server event that the client object creation module is used to be obtained according to monitoring connects data Create corresponding client event process object;
Memory module, the client event for storing the establishment are dealt with objects.
11. system according to claim 10, it is characterised in that the memory module includes:
Node extraction unit, for extracting node from idle chained list, it is stored in the node at the client event of the establishment Manage object;
Node adding device, used in chained list for the node of the deposit client event process object to be added to.
12. system according to claim 9, it is characterised in that the script calling module is additionally operable to be located at by described Corresponding interface function in the event handling object reference Lua interface layers of cementing layer, the Lua is triggered by the interface function The script processing event.
13. system according to claim 9, it is characterised in that the system also includes:
Time-obtaining module, for being obtained overdue minimum time from the timer event of setting i.e..
14. system according to claim 13, it is characterised in that the monitoring module includes:
Action listener unit, for the timeout value using the minimum time as action listener, action listener is opened, and pass through net The triggering of network event or time-out stop network event or timer event that current action listener is currently triggered;
Judging unit is triggered, for judging whether network event is triggered, if so, the event judge module is then notified, if it is not, Then notify the case distribution module.
15. system according to claim 14, it is characterised in that the case distribution module includes:
Inspection unit, for being examined in each timer chain meter, according to addition timer event in the timer chain meter The sequencing of process object judges whether timer event process object expires successively, if so, then notice timer object obtains Take unit;
The timer object acquiring unit is used to obtain the overdue timer event process object.
16. system according to claim 15, it is characterised in that if the triggering judging unit determines the network thing Part is triggered, and the network event be disposed by the script calling module after will notify the inspection unit.
CN201310284753.5A 2013-07-08 2013-07-08 The method and system of server engine Active CN104281488B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201310284753.5A CN104281488B (en) 2013-07-08 2013-07-08 The method and system of server engine

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201310284753.5A CN104281488B (en) 2013-07-08 2013-07-08 The method and system of server engine

Publications (2)

Publication Number Publication Date
CN104281488A CN104281488A (en) 2015-01-14
CN104281488B true CN104281488B (en) 2018-01-19

Family

ID=52256389

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310284753.5A Active CN104281488B (en) 2013-07-08 2013-07-08 The method and system of server engine

Country Status (1)

Country Link
CN (1) CN104281488B (en)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105740326B (en) * 2016-01-21 2021-01-15 腾讯科技(深圳)有限公司 Thread state monitoring method and device for browser
CN106375324B (en) * 2016-09-08 2020-02-14 深圳先进技术研究院 Network communication system and method based on TCP/IP communication protocol
CN108073389B (en) * 2017-12-11 2021-05-04 长沙海米网络技术有限公司 Engine system based on script language
CN110096340B (en) * 2018-01-29 2020-11-17 北京世纪好未来教育科技有限公司 Timing task processing method and device
CN114840219B (en) * 2022-07-06 2023-05-05 湖南傲思软件股份有限公司 Distributed event processing system

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102880464A (en) * 2012-08-31 2013-01-16 中山市世宇动漫科技有限公司 Three-dimensional game engine system
CN103051692A (en) * 2012-12-11 2013-04-17 中国能源建设集团广东省电力设计研究院 Mobile operation system working platform supporting extreme network environment
CN103186372A (en) * 2011-12-29 2013-07-03 上海聚位网络科技发展有限公司 Game engine

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2009031093A1 (en) * 2007-09-07 2009-03-12 Ambx Uk Limited A method for generating an effect script corresponding to a game play event

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103186372A (en) * 2011-12-29 2013-07-03 上海聚位网络科技发展有限公司 Game engine
CN102880464A (en) * 2012-08-31 2013-01-16 中山市世宇动漫科技有限公司 Three-dimensional game engine system
CN103051692A (en) * 2012-12-11 2013-04-17 中国能源建设集团广东省电力设计研究院 Mobile operation system working platform supporting extreme network environment

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
LUA脚本语言在游戏引擎中的应用分析;魏江平;《微型电脑应用》;20080420;第24卷(第04期);1 *

Also Published As

Publication number Publication date
CN104281488A (en) 2015-01-14

Similar Documents

Publication Publication Date Title
CN104281488B (en) The method and system of server engine
CN108833197B (en) Active detection method and detection platform based on cloud
CN103605764B (en) A kind of network crawler system and web crawlers multitask execution and dispatching method
CN105550228B (en) Intelligent storage device and based on the access recognition methods of Intelligent storage device, system
CN109120461B (en) A kind of service feature end-to-end monitoring method, system and device
CN105512044B (en) Update method and system for the library of object of keyword driving test
US20120173693A1 (en) Method and Device for Association Management of Network Resources
US7818752B2 (en) Interface for application components
CN107590072A (en) A kind of application and development and the method and apparatus of test
CN107809383A (en) A kind of map paths method and device based on MVC
US11294740B2 (en) Event to serverless function workflow instance mapping mechanism
US20160321036A1 (en) Dynamically monitoring code execution activity to identify and manage inactive code
CN103701653B (en) The processing method of a kind of interface hot plug configuration data and network configuration server
CN116976457A (en) Model loading method, reasoning system, device and computer equipment
CN106302459A (en) Networking operational approach and device
CN111736983A (en) Micro-service deployment method facing task and resource perception
CN106911730A (en) A kind of cloud disk service device accesses moving method and device
CN107766707B (en) Method and apparatus for responding to user request in application container engine
CN113360361A (en) Method, device and equipment for constructing distributed operation and maintenance simulation system
JP2006025434A (en) System and method for high capacity fault correlation
CN107862040A (en) The update method of data, device and a kind of cluster in a kind of caching of application example
CN106020822B (en) Weak reference implementation method and device towards Pool object
CN105447012B (en) A kind of write-in mutual exclusion method and device for database
CN108667649B (en) A kind of malfunction elimination method, apparatus and server
CN109947488A (en) Object initialization method, apparatus, equipment and the storage medium of general utility functions module

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