Game server state monitoring method and system based on cloud computing
By constructing a multi-dimensional data association structure and a cross-dimensional model, a virtual economic circulation map and scene interaction heat distribution are generated, which solves the problem of insufficient accuracy in game server status monitoring in existing technologies, realizes a more accurate resource scheduling strategy, and improves server operating efficiency.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-12-17
- Publication Date
- 2026-03-10
AI Technical Summary
In existing technologies, game server status monitoring relies on hardware resource indicators or player behavior data, which makes it difficult to accurately pinpoint the root cause of abnormal loads. This leads to lagging resource scheduling strategies and issues such as response delays or resource imbalances in popular game scenarios.
By acquiring player interaction event records and server resource consumption indicators from the game server cluster, a multi-dimensional data association structure is constructed to generate a virtual economic flow map and scene interaction heat distribution. Combining fragmentation characteristics and response latency characteristics, the data is input into a cross-dimensional association model to assess the load status, generate resource bottleneck location information, and adjust resource scheduling strategies.
It achieves deep integration of player behavior with server performance data, accurately identifies server load status and resource bottlenecks, and improves the accuracy and effectiveness of server resource scheduling.
Smart Images

Figure CN121636296A_ABST
Abstract
Description
TECHNICAL FIELD
[0001] The present application relates to the field of data processing, in particular to a game server state monitoring method and system based on cloud computing. BACKGROUND
[0002] With the rapid development of the online game industry, the stable operation of the game server cluster is crucial to the player experience, and the server state monitoring technology has thus become a key link to guarantee the quality of game services. At present, game server state monitoring mainly relies on server hardware resource indicators or player behavior data, and in the existing technology, hardware resource indicator monitoring focuses on the resource consumption peak of the server itself, and it is difficult to reflect the dynamic influence of player behavior patterns on resource demand; player behavior data statistics focus on trend analysis at the macro operation level and cannot be directly linked to the specific resource bottlenecks of the server. The separation of this data processing method makes it difficult to accurately locate the root cause of load abnormalities, and the resource scheduling strategy often lags behind the actual load changes, which can easily cause problems such as response delay or resource allocation imbalance in popular game scenarios. SUMMARY
[0003] The present application provides a game server state monitoring method and system based on cloud computing.
[0004] In a first aspect, the embodiments of the present application provide a game server state monitoring method based on cloud computing, the method comprising: obtaining player interaction event records and server resource consumption indicators of a game server cluster within a preset monitoring period, and constructing a multidimensional data association structure, the multidimensional data association structure being used to associate the time attributes of player behavior data and server performance data; performing behavior pattern analysis on the player interaction event records in the multidimensional data association structure, generating a virtual economic flow transfer map and a scene interaction heat distribution, the virtual economic flow transfer map containing path dependence relationships of virtual item transactions between players, and the scene interaction heat distribution being used to represent the activity intensity of players in different game scene areas; performing feature extraction on the server resource consumption indicators in the multidimensional data association structure, obtaining fragmentation features of memory access sequences and response delay features of network sessions, the fragmentation features being used to describe the continuity state of memory page allocation, and the response delay features containing handshake time distribution in the session establishment stage; inputting the virtual economic flow transfer map, the scene interaction heat distribution, and the fragmentation features and the response delay features into a pre-constructed cross-dimension association model, performing server load state evaluation, and generating a load state evaluation result containing resource bottleneck positioning information; According to the resource bottleneck positioning information in the load state evaluation result, a resource scheduling instruction is generated, and a computing resource allocation strategy of the game server cluster is adjusted through the resource scheduling instruction.
[0005] In a second aspect, the embodiments of the present application provide a computer system, comprising: a memory for storing computer executable instructions or computer programs; a processor for executing the computer executable instructions or computer programs stored in the memory to implement the cloud computing based game server state monitoring method described above.
[0006] The embodiments of the present application have the following beneficial effects: The present application constructs a multi-dimensional data association structure by obtaining player interaction event records and server resource consumption indicators of a game server cluster, realizes deep binding of player behavior data and server performance data in time attribute, performs behavior pattern analysis on the player interaction event records in the multi-dimensional data association structure, and generates a virtual economic flow map that can capture path dependence relationships of virtual item transactions between players. The scene interaction heat distribution can accurately represent the activity intensity of players in different game scene areas, and the two together constitute a quantitative representation dimension of player behavior. The fragmentation features of memory access sequences and network session response delay features extracted from the server resource consumption indicators are input into the pre-constructed cross-dimension association model together with the player behavior features, realizing deep fusion evaluation of player behavior topology features, spatial features and server resource micro features, and enabling more accurate identification of server load state and resource bottleneck positioning information. The resource scheduling instruction generated based on the load state evaluation result can adjust the computing resource allocation strategy of the game server cluster, effectively improving the accuracy and effectiveness of server resource scheduling. BRIEF DESCRIPTION OF DRAWINGS
[0007] Figure 1 is an architecture schematic diagram of an application scenario provided by the embodiments of the present application; Figure 2 is a structure schematic diagram of a computer system provided by the embodiments of the present application; Figure 3 is a flow schematic diagram of the cloud computing based game server state monitoring method provided by the embodiments of the present application. DETAILED DESCRIPTION
[0008] In order to make the purpose, technical solutions and advantages of the present application clearer, the present application will be described in further detail below with reference to the accompanying drawings, and the described embodiments should not be regarded as limiting the present application. All other embodiments obtained by those of ordinary skill in the art without making creative efforts fall within the scope of protection of the present application.
[0009] In the following description, "some embodiments" are referred to, which describe a subset of all possible embodiments, but it can be understood that "some embodiments" can be the same subset or different subsets of all possible embodiments, and can be combined with each other without conflict.
[0010] In the following description, the terms "first, second, third" are only to distinguish similar objects, and do not represent a specific order of the objects. It can be understood that "first, second, third" can be interchanged in a specific order or sequence as allowed, so that the embodiments of the application described herein can be implemented in an order other than that illustrated or described herein.
[0011] Unless otherwise defined, all technical and scientific terms used herein have the same meaning as commonly understood by one of ordinary skill in the art to which the application belongs. The terms used herein are only for the purpose of describing the embodiments of the application and are not intended to limit the application.
[0012] Referring to Figure 1 is an architecture diagram of an application scenario provided by the embodiments of the application. A terminal (exemplarily showing a game terminal 400) is connected to a computer system 200 through a network 300, wherein the network 300 can be a wide area network or a local area network, or a combination of the two, and data transmission is achieved using wireless or wired links.
[0013] The game terminal 400 is configured to run a game and send game running data to the computer system 200. The computer system 200 is configured to obtain relevant data and execute a cloud computing-based game server state monitoring method provided by the embodiments of the application.
[0014] In some embodiments, the computer system 200 can be a standalone game server, or a server cluster or distributed system composed of multiple game servers. The game terminal 400 can be a smart phone, a tablet computer, a notebook computer, a desktop computer, etc., but is not limited thereto. The terminal and the server can be directly or indirectly connected through wired or wireless communication, which is not limited in the embodiments of the application.
[0015] Next, the computer system for implementing the cloud computing-based game server state monitoring method provided by the embodiments of the application is described. Referring to Figure 2 , Figure 2 is a structure diagram of a computer system provided by the embodiments of the application, Figure 2The illustrated computer system includes at least one processor 210, memory 250, at least one network interface 220, and an external interface 230. The various components of computer system 200 are coupled together by a bus system 240, which can include a data bus, a power bus, a control bus, and a state signal bus. For the sake of clarity, the various buses are illustrated in Figure 2 as the bus system 240. The use of the term "bus" in this description should be taken as being specifically directed to the bus system 240. Figure 2
[0016] Processor 210 can be an integrated circuit chip having signal processing capabilities, such as a general purpose processor, a Digital Signal Processor (DSP), or other programmable logic device, discrete gate or transistor logic, discrete hardware components, or the like. The general purpose processor can be a microprocessor, or any conventional processor, or the like.
[0017] External interface 230 includes, for example, one or more speakers and / or one or more visual display devices. External interface 230 can also include one or more input devices 432, such as a keyboard, a mouse, a microphone, a touch screen display, a camera, or the like.
[0018] Memory 250 can be removable, non-removable, or a combination thereof. Exemplary hardware devices include solid-state memory, hard drives, optical disc drives, or the like. Memory 250 optionally includes one or more storage devices remotely located from processor 210.
[0019] Memory 250 includes volatile memory or nonvolatile memory, or both. Nonvolatile memory can be read only memory (ROM), programmable ROM (PROM), erasable programmable ROM (EPROM), electrically erasable programmable ROM (EEPROM), flash memory, or the like. Volatile memory can include random access memory (RAM), static RAM (SRAM), dynamic RAM (DRAM), or the like. Memory 250 is intended to include any suitable type of memory.
[0020] In some embodiments, memory 250 is capable of storing data to support various operations, examples of which include programs, modules, and data structures or subsets or superset thereof, which are described in the examples below.
[0021] Operating system 251 includes systems programming that provides system services and performs hardware dependent tasks, such as a kernel, a device driver, a middleware, or the like, for implementing various basic services and for handling various hardware dependent tasks. The network communication module 252 is used to reach the game terminal via one or more (wired or wireless) network interfaces 220, such as Bluetooth, WiFi, and Universal Serial Bus (USB). Presentation module 253 is configured to enable the display of information (e.g., external interface for operating peripheral devices and displaying content and information) via one or more output devices 231 (e.g., display screen, speaker, etc.) associated with external interface 230; The input processing module 254 is used to detect and translate one or more user inputs or interactions from one or more input devices 232.
[0022] Based on the above description of the application scenarios and systems provided in the embodiments of this application, the following describes the cloud computing-based game server status monitoring method provided in the embodiments of this application. In actual implementation, the cloud computing-based game server status monitoring method provided in the embodiments of this application can be implemented by a computer system. See also Figure 3 , Figure 3 This is a flowchart illustrating the cloud-based game server status monitoring method provided in this application embodiment. Next, it will be combined with... Figure 3 The steps shown are explained.
[0023] Step S100: Obtain player interaction event records and server resource consumption indicators of the game server cluster within a preset monitoring period, and construct a multi-dimensional data association structure. The multi-dimensional data association structure is used to associate the time attributes of player behavior data and server performance data.
[0024] Player interaction event logs contain information about various player interactions in the game, such as virtual item trading and scene switching. Server resource consumption metrics reflect the usage of various server resources during operation, such as memory consumption and network resource usage. For example, player interaction event logs and server resource consumption metrics for a preset monitoring period are first obtained from the game server cluster. This can be achieved by deploying a data acquisition program on the server side, which can monitor various server logs in real time and organize and store the relevant data. For instance, for player interaction event logs, player transaction records and scene switching records can be extracted from the game's database; for server resource consumption metrics, data such as memory usage and network bandwidth consumption can be obtained through system monitoring tools. Then, a multi-dimensional data association structure is constructed based on this data. A relational database can be used to store and manage the multi-dimensional data association structure, storing player behavior data and server performance data in different tables and linking them using a time field.
[0025] Step S200: Analyze the behavioral patterns of player interaction event records in the multidimensional data association structure to generate a virtual economic flow map and a scene interaction heat distribution. The virtual economic flow map contains the path dependency relationship of virtual item transactions between players, and the scene interaction heat distribution is used to characterize the density of player activities in different game scene areas.
[0026] In one implementation, step S200 may specifically include the following steps S210 to S260: Step S210: Classify the player interaction event records in the multidimensional data association structure by event type to obtain the virtual item transaction event set and the scene switching event set. At the same time, calculate the comprehensive interaction intensity index of each event. The comprehensive interaction intensity index is generated by a weighted combination of event duration, number of players involved and operation frequency. Filter out events with a comprehensive interaction intensity index below a preset threshold to obtain a high-value interaction event set.
[0027] Event type classification categorizes player interaction event records according to event type, into virtual item trading events and scene transition events. Virtual item trading events involve players trading virtual items, while scene transition events involve players switching between different game scenes. The interaction intensity comprehensive index is an indicator that comprehensively considers the event's duration, the number of players involved, and the frequency of actions, reflecting the event's importance and impact.
[0028] For example, player interaction event records in a multidimensional data association structure are categorized by event type. Events can be divided into virtual item trading events and scene switching events by matching keywords and operation types in the event records. For instance, if an event record contains keywords such as "trade" or "purchase," it is classified as a virtual item trading event; if it contains keywords such as "scene switching" or "entering a scene," it is classified as a scene switching event. Then, a comprehensive interaction intensity index is calculated for each event. A weighted summation method can be used, multiplying the event duration, the number of players involved, and the operation frequency by their respective weights, and then summing the results to obtain the comprehensive interaction intensity index. Finally, events with a comprehensive interaction intensity index below a preset threshold are filtered out to obtain a set of high-value interaction events.
[0029] Step S220: Perform time-dependent filtering on virtual item transaction events in the high-value interaction event set, identify related transaction event groups that occur consecutively within a preset time window, determine related transaction event groups through indirect relationships of transaction entity identifiers, delete isolated non-related transaction events, and obtain the virtual item transaction event set after time-dependent filtering.
[0030] For example, time-series dependency filtering of virtual item transaction events in a high-value interaction event set can be performed using time-series data analysis algorithms, such as sequence pattern mining algorithms. For instance, sequence pattern mining algorithms can discover consecutive, related transaction event sequences occurring within a preset time window. Then, related transaction event groups are identified. This can be determined by analyzing the indirect relationships between transaction entity identifiers. For example, if two transaction events have an indirect relationship between their transaction entity identifiers, such as a transaction conducted through another transaction entity, these two events are grouped into the same related transaction event group. Finally, isolated, non-related transaction events are deleted, resulting in a time-series dependency-filtered set of virtual item transaction events. Events that do not belong to any related transaction event group can be removed from the set by iterating through all virtual item transaction events.
[0031] Step S230: Extract transaction paths from the set of virtual item transaction events after time-series dependency filtering, group the transaction events by virtual item type, track the continuity of the transaction subject identifier in each group of events, and generate a unidirectional transaction path sequence by combining the item circulation attenuation coefficient. The item circulation attenuation coefficient decreases linearly with the increase of the number of transactions.
[0032] The continuity of transaction entity identifiers refers to the sequential appearance of transaction entity identifiers within a set of transaction events; that is, the identifier of the recipient in one transaction event is the same as the identifier of the initiator in the next transaction event. The item circulation decay coefficient is a coefficient used to measure the degree of value decay of virtual items during circulation; it decreases linearly with the number of transactions. A one-way transaction path sequence is an ordered representation of transaction paths, demonstrating the one-way circulation of virtual items between players.
[0033] In one implementation, step S230 may specifically include the following steps S231 to S236: Step S231: Extract a subset of transaction events containing the same virtual item type from the set of virtual item transaction events after time-series dependency filtering, and sort each subset according to the order of transaction occurrence time to obtain a time-ordered sequence of transaction events.
[0034] For example, a subset of transaction events containing the same virtual item type is extracted from the time-dependent filtered set of virtual item transaction events. This can be done by iterating through all transaction events and classifying them according to the virtual item type within each event, grouping events of the same type into the same subset. For instance, if the virtual item type in a transaction event is "equipment," then that transaction event is grouped into the "equipment" subset. Then, each subset is sorted according to the order in which the transactions occurred. A sorting algorithm, such as quicksort, can be used to sort the transaction event subsets. For example, quicksort can arrange the transaction events in the subsets according to the chronological order in which the transactions occurred, resulting in a time-ordered sequence of transaction events.
[0035] Step S232: Perform transaction loop detection on the time-ordered transaction event sequence, identify the circular association relationship of the transaction subject identifier in the sequence, and mark the same subject identifier as both the receiver and the initiator within the preset path length as a potential transaction loop, and exclude abnormal path segments containing transaction loops.
[0036] For example, transaction loop detection can be performed on a time-ordered sequence of transaction events. Graph theory algorithms, such as depth-first search, can be used to analyze the transaction event sequence. For instance, a depth-first search can start from a transaction event and progressively search for subsequent related transaction events, checking if the same entity acts as both the receiver and the initiator within a preset path length. If such a situation exists, it is marked as a potential transaction loop. Then, abnormal path segments containing transaction loops are excluded. This can be achieved by traversing all potential transaction loops and removing path segments containing transaction loops from the time-ordered sequence of transaction events.
[0037] Step S233: Perform subject continuity tracking on the transaction event sequence after excluding abnormal path segments. Verify the consistency between the transaction recipient identifier of the previous transaction event and the transaction initiator identifier of the next transaction event. Mark the event group that passes the verification N times consecutively as the subject continuous transaction chain, where N≥3.
[0038] For example, the continuity of a transaction event sequence after excluding abnormal path segments is tracked. This can be achieved by traversing the transaction event sequence and verifying the consistency between the transaction recipient identifier of the previous transaction event and the transaction initiator identifier of the next transaction event. For instance, for the i-th and (i+1)-th transaction events in the sequence, it is checked whether the transaction recipient identifier of the i-th transaction event is the same as the transaction initiator identifier of the (i+1)-th transaction event. If they are the same, the consistency check is considered successful. Then, event groups that pass the check N times consecutively are marked as a continuous transaction chain. This can be achieved by setting a counter to record the number of consecutive successful checks; when the counter reaches N, the corresponding event group is marked as a continuous transaction chain.
[0039] Step S234: Adjust the weight of the main continuous transaction chain by combining the item circulation decay coefficient. The initial value of the decay coefficient of each transaction event is 1. After each transaction circulation decay coefficient, the preset decay step size is reduced. Calculate the weighted sum of the decay coefficients of all events in the transaction chain as the path activity index.
[0040] The item circulation decay coefficient is a coefficient used to measure the degree of value decay of virtual items during circulation, and it decreases linearly with the increase of the number of transactions. Weight adjustment is a weighted processing of transaction events in the main continuous transaction chain based on the item circulation decay coefficient to reflect the value changes of virtual items during circulation. The path activity index is an indicator used to measure the activity level of the main continuous transaction chain, which is obtained by calculating the weighted sum of the decay coefficients of all events in the transaction chain.
[0041] For example, the weights of the main continuous transaction chain can be adjusted by incorporating the item circulation decay coefficient. The initial decay coefficient for each transaction event is 1, and it decreases by a preset decay step size after each transaction. Then, the weighted sum of the decay coefficients of all events in the transaction chain is calculated as a path activity index. This can be achieved by iterating through all transaction events in the main continuous transaction chain, multiplying the decay coefficient of each event by its weight (such as transaction amount, transaction quantity, etc.), and then summing all the results.
[0042] Step S235: Filter the continuous transaction chains of the main body according to the path activity index, and retain the effective transaction chains with an activity index higher than the preset activity threshold to obtain the effective transaction chain set.
[0043] Specifically, continuous transaction chains of a subject are filtered based on path activity metrics. This can be done by traversing all continuous transaction chains of a subject and checking whether the path activity metric of each transaction chain is higher than a preset activity threshold. If it is higher than the preset activity threshold, the transaction chain is marked as a valid transaction chain. Then, a set of valid transaction chains is obtained. All valid transaction chains can be collected into a set.
[0044] Step S236: Group and store the set of valid transaction chains according to the type of virtual item. Each group includes an item type identifier, a path start identifier, a path end identifier, and a path node sequence, generating a one-way transaction path sequence that includes activity indicators.
[0045] For example, the set of valid transaction chains is grouped and stored according to the type of virtual item. This can be achieved by traversing all valid transaction chains and classifying them according to the type of virtual item within each chain, grouping chains of the same type together. For instance, if the virtual item type in a transaction chain is "Item," then the chain is grouped into the "Item" group. Then, information including item type identifier, path start identifier, path end identifier, and path node sequence is generated for each group of transaction chains. The path start identifier, path end identifier, and path node sequence can be determined by analyzing transaction events within the transaction chain. Finally, an activity metric is added to the one-way transaction path sequence, generating a one-way transaction path sequence containing the activity metric. The activity metric can be stored as a weight for the path in the one-way transaction path sequence.
[0046] Step S240: Calculate the scene dwell index for the scene switching event set. The scene dwell index is calculated based on the cumulative dwell time of the player in the scene area and the scene switching frequency. The scene dwell index is positively correlated with the cumulative dwell time and negatively correlated with the scene switching frequency. The scene dwell index is adjusted in combination with the periodic characteristics of player behavior. The periodic characteristics of player behavior are determined by the distribution of login time periods in the historical interaction records to obtain the periodically adjusted scene dwell index.
[0047] The Scene Dwelling Index is an indicator used to measure the length of time players spend in a game scene and the frequency of their activity. It is calculated based on the cumulative dwell time and scene switching frequency of players within a scene area. Cumulative dwell time is the total time a player spends in a specific scene area, and scene switching frequency is the number of times a player switches scenes within that area. Player behavior periodicity refers to the cyclical nature of player behavior in the game, such as players logging in and engaging in activities at certain fixed times. This periodicity can be determined by analyzing the distribution of login times in historical interaction records. The periodically adjusted Scene Dwelling Index is the result obtained by adjusting the Scene Dwelling Index based on the periodicity of player behavior.
[0048] For example, a scene dwell index is calculated for a set of scene switching events. This can be achieved by iterating through the set of scene switching events and calculating the cumulative dwell time and scene switching frequency for each player in each scene area. Then, the scene dwell index is calculated based on the cumulative dwell time and scene switching frequency. For example, the scene dwell index can be calculated using the following formula: Scene Dwell Index = Cumulative Dwell Time / Scene Switching Frequency. Next, the scene dwell index is adjusted based on the periodic characteristics of player behavior. The periodic characteristics of player behavior can be determined by analyzing the distribution of login times in historical interaction records. For example, if it is found that players log in to the game more frequently between 8 PM and 10 PM, the scene dwell index during this period can be appropriately increased. Finally, the periodically adjusted scene dwell index is obtained.
[0049] Step S250: Construct an initial virtual economic flow graph based on the unidirectional transaction path sequence. In the graph, the node unit is the player character identifier, and the directed edge unit is the virtual item transaction event. The weight value of the directed edge is dynamically adjusted according to the time interval of the transaction event. The closer the time interval, the greater the weight value. Generate an initial virtual economic flow graph with time weight.
[0050] In one implementation, step S250 may specifically include the following steps S251 to S256: Step S251: Extract the uniqueness of all player role identifiers in the one-way transaction path sequence, and establish a mapping table between player role identifiers and node IDs, with each unique player role identifier corresponding to a unique node ID.
[0051] Player character identifiers are information used to uniquely identify each player character in the game, such as the player's username and character name. Uniqueness extraction involves extracting all distinct player character identifiers from the one-way transaction path sequence, ensuring that each player character identifier appears only once. A mapping table is a data structure used to record the mapping relationship between player character identifiers and node IDs; it can be in the form of a dictionary, table, etc.
[0052] For example, uniqueness can be extracted from all player character identifiers in a one-way transaction path sequence. This can be achieved by traversing the one-way transaction path sequence and storing the player character identifiers in a set. Due to the properties of sets, identical player character identifiers will only be stored once, thus achieving uniqueness extraction. A unique node ID is assigned to each unique player character identifier, and the node IDs are numbered in an incrementing manner, for example, starting from 1 and increasing sequentially. Finally, a mapping table between player character identifiers and node IDs is established. Player character identifiers can be used as keys, and node IDs as values, stored in a dictionary to form the mapping table.
[0053] Step S252: Convert the player role identifiers in the one-way transaction path sequence into node IDs according to the mapping relationship table, and obtain a path node ID sequence composed of node IDs. The path node ID sequence maintains the continuity of the original transaction subject.
[0054] For example, player role identifiers in a one-way transaction path sequence are converted into node IDs based on a mapping table. This can be done by traversing the one-way transaction path sequence, finding the corresponding node ID in the mapping table for each player role identifier in a transaction event, and replacing it with the node ID. This results in a path node ID sequence composed of node IDs. Because the continuity of the original transaction entity is maintained during the conversion process, the path node ID sequence also maintains this continuity.
[0055] Step S253: Construct directed edges for the path node ID sequence, using adjacent node ID pairs in the sequence as the start and end IDs of the directed edges, recording the transaction event timestamps corresponding to each directed edge, and generating a set of directed edges containing timestamp information.
[0056] For example, constructing directed edges from a path node ID sequence can be done by traversing the path node ID sequence and using adjacent node ID pairs as the start and end IDs of the directed edges. For instance, for the path node ID sequence [1,2,3], directed edges (1,2) and (2,3) can be constructed. Then, the timestamp of the transaction event corresponding to each directed edge is recorded. Timestamp information can be added to the corresponding directed edges based on the time information of each transaction event in the one-way transaction path sequence. Finally, a set of directed edges containing timestamp information is generated, and all directed edges and their corresponding timestamp information can be stored in a list or set.
[0057] Step S254: Calculate the temporal interval weight of each directed edge. The temporal interval weight is calculated by the difference between the current timestamp and the transaction event timestamp. The smaller the difference, the larger the weight; the larger the difference, the smaller the weight. Generate a set of directed edges with temporal weights.
[0058] For example, calculating the temporal interval weight of each directed edge can be done by traversing the set of directed edges containing timestamp information. For each directed edge, obtain its corresponding transaction event timestamp, and then calculate the difference between the current timestamp and the transaction event timestamp. Next, calculate the temporal interval weight based on the difference. For example, the temporal interval weight can be calculated using the following formula: Temporal interval weight = 1 / (difference + 1), where adding 1 is to avoid a division-by-zero error when the difference is 0. Finally, a set of directed edges with temporal weights is generated, and each directed edge and its corresponding temporal interval weight can be stored in a new set.
[0059] Step S255: Construct a graph structure based on the node ID mapping table and a set of directed edges with time-series weights. The node attributes include the player character identifier and the cumulative number of transactions, and the directed edge attributes include the time-series interval weight and the type of traded item, thus generating the initial graph structure.
[0060] Specifically, constructing a graph structure based on a node ID mapping table and a set of directed edges with time-series weights can be achieved using a graph database or graph algorithm library. For example, the NetworkX library can be used to construct the graph structure. Then, attributes are added to each node. Based on the node ID mapping table, a player character identifier attribute can be added to each node. Simultaneously, by traversing the set of directed edges, the number of transactions each node has participated in is counted and added to the node as a cumulative transaction count attribute. Next, attributes are added to each directed edge. The time-series interval weight and the type of traded item are added as attributes to the directed edges. Finally, the initial graph structure is generated.
[0061] Step S256: Divide the initial graph structure into node communities. Based on the transaction frequency and path similarity between nodes, divide the nodes into multiple community units, calculate the transaction connection density between community units, highlight the paths with a connection density greater than the density threshold in the initial graph structure, and generate an initial virtual economic flow graph with time-series weights and community structure.
[0062] Transaction frequency refers to the number of transactions between nodes, while path similarity is the degree of similarity between transaction paths between nodes. Transaction connection density between community units represents the tightness of transaction connections between different community units, which can be expressed as the ratio of the number of transaction edges between community units to the maximum possible number of transaction edges. The density threshold is a pre-defined critical value used to determine which connections between communities need to be highlighted. The initial virtual economic flow graph with temporal weights and community structure is obtained by adding node community partitioning information and highlighted inter-community connection paths to the initial graph structure.
[0063] For example, the initial graph structure can be partitioned into node communities using community discovery algorithms such as the Louvain algorithm and the Infomap algorithm. These algorithms divide nodes into multiple community units based on transaction frequency and path similarity between nodes. Then, the transaction connection density between community units is calculated. This can be done by traversing all community unit pairs, counting the number of transaction edges between them, and calculating the transaction connection density. Next, paths with a community connection density greater than a density threshold are highlighted in the initial graph structure. This highlighting can be achieved by changing the color, thickness, and other attributes of these paths. Finally, an initial virtual economic flow graph with temporal weights and community structure is generated.
[0064] Step S260: Perform multi-scale grid mapping on the periodically adjusted scene dwell index, mapping the dwell index to grid cells of different resolutions, and integrate the multi-resolution grid data through a cross-scale feature fusion algorithm to eliminate the loss of local features caused by single-scale division and generate a multi-scale fused scene interaction heat distribution.
[0065] In one implementation, step S260 may specifically include the following steps S261 to S266: Step S261: Obtain the spatial topology data of the game scene, and determine the multi-scale grid division rules based on the scene terrain features and functional area division. The multi-scale grid division rules include three resolutions: coarse-grained grid, medium-grained grid and fine-grained grid. The coarse-grained grid covers a large area of the scene, while the fine-grained grid focuses on complex functional areas.
[0066] For example, spatial topology data of a game scene can be obtained through interfaces or tools provided by the game engine. For instance, the scene editor in the Unity engine can be used to obtain terrain and object information. Then, multi-scale meshing rules are determined based on the scene's terrain features and functional area division. For example, the size and range of coarse-grained, medium-grained, and fine-grained meshes can be determined based on the scene's terrain complexity and functional area distribution. For areas with simple terrain and widely distributed functional areas, coarse-grained meshes can be used; for areas with complex terrain and concentrated functional areas, fine-grained meshes can be used.
[0067] Step S262: Map the periodically adjusted scene dwell index to three different resolution grid cells. The initial thermal value of each grid cell is the aggregate value of the dwell index of all players in that cell, resulting in a coarse-grained thermal matrix, a medium-grained thermal matrix, and a fine-grained thermal matrix.
[0068] For example, the periodically adjusted scene dwell index can be mapped to grid cells of three different resolutions. This can be done by iterating through the periodically adjusted scene dwell indexes of all players and assigning the dwell index to the corresponding grid cell based on the player's location. Then, the initial heat value of each grid cell can be calculated. This can be done by summing the dwell indices of all players within the cell. Finally, coarse-grained, medium-grained, and fine-grained heat matrices are obtained. The initial heat values of the coarse-grained, medium-grained, and fine-grained grids can be stored in the matrices respectively to form the corresponding heat matrices.
[0069] Step S263: High-frequency feature extraction is performed on the fine-grained heat matrix. The spatial high-pass filtering algorithm is used to extract local hotspot features in the fine-grained grid. The local hotspot features reflect the dense changes in player activity in a small area.
[0070] High-frequency feature extraction involves extracting features reflecting changes in small regions from a fine-grained heatmap matrix. Spatial high-pass filtering algorithms can enhance high-frequency components in images or data while suppressing low-frequency components. Local hotspot features are areas of dense player activity variation within a fine-grained grid; these areas typically have high heatmap values, reflecting hotspots of player activity within a small area. For example, high-frequency feature extraction from a fine-grained heatmap matrix can be performed using spatial high-pass filtering algorithms, such as the Laplacian filter and the Sobel filter. These filters enhance the high-frequency components in the matrix, thereby extracting local hotspot features. For instance, convolving the fine-grained heatmap matrix using a Laplacian filter yields a high-frequency feature matrix. Local hotspot features are then extracted from this high-frequency feature matrix. A threshold can be set to mark regions exceeding the threshold as local hotspot features.
[0071] Step S264: Extract low-frequency features from the coarse-grained heatmap matrix and use a spatial low-pass filtering algorithm to extract global distribution features from the coarse-grained grid. The global distribution features reflect the overall trend of player activity in a large-scale scene.
[0072] Low-frequency feature extraction extracts features reflecting large-scale scene changes from a coarse-grained thermal matrix. Spatial low-pass filtering algorithms can enhance low-frequency components in images or data while suppressing high-frequency components. Global distribution features represent the overall trend of player activity within a coarse-grained grid, reflecting the distribution of player activity across a large scene.
[0073] Low-frequency feature extraction from coarse-grained thermal matrices can be achieved using spatial low-pass filtering algorithms, such as Gaussian filters and mean filters. These filters enhance the low-frequency components of the matrix, thereby extracting global distribution features. For example, convolving a coarse-grained thermal matrix with a Gaussian filter yields a low-frequency feature matrix. Global distribution features can then be extracted from this matrix. This global distribution can be determined by analyzing the statistical information of the low-frequency feature matrix, such as its mean and variance.
[0074] Step S265: Using the medium-grained thermal matrix as a reference, the high-frequency and low-frequency features are weighted and fused with the reference matrix through a cross-scale feature fusion algorithm to obtain a fused feature matrix. The weight of high-frequency features increases with the increase of grid resolution, while the weight of low-frequency features increases with the decrease of grid resolution.
[0075] The weight of high-frequency features increases with increasing grid resolution, meaning that in fine-grained grids, high-frequency features contribute more to the fusion result because fine-grained grids are better able to reflect the dense changes in player activity in a small area. The weight of low-frequency features increases with decreasing grid resolution, indicating that in coarse-grained grids, low-frequency features have a more significant impact on the fusion result because coarse-grained grids mainly reflect the overall trend of player activity in a large-scale scene.
[0076] For example, the weights of high-frequency and low-frequency features can be determined according to different grid resolutions, setting corresponding weight calculation rules. For instance, for high-frequency features corresponding to fine-grained grids, their weights can be set to an increasing function value related to grid resolution; for low-frequency features corresponding to coarse-grained grids, their weights can be set to a decreasing function value related to grid resolution. Next, a cross-scale feature fusion algorithm is used to weight and fuse the high-frequency and low-frequency features with the medium-grained heatmap matrix. The cross-scale feature fusion algorithm can employ a deep learning-based fusion model, such as a convolutional neural network (CNN). The medium-grained heatmap matrix, high-frequency features, and low-frequency features are used as inputs, and the features are processed and fused through the convolutional and pooling layers of the CNN. During the fusion process, based on the determined high-frequency and low-frequency feature weights, different features are weighted and summed to obtain the fused feature matrix.
[0077] Step S266: Suppress abnormal heat points on the fused feature matrix, calculate the deviation of the current heat value based on the historical scene interaction heat distribution, mark grid cells with deviation exceeding the preset deviation threshold as abnormal heat points, reduce the weight value of abnormal heat points, and generate a multi-scale fused scene interaction heat distribution.
[0078] Anomaly suppression involves processing the fused feature matrix to eliminate the impact of potential anomalies on the final result. Anomalies are mesh cells whose deviation exceeds a preset deviation threshold.
[0079] For example, based on historical scene interaction heatmap distributions, the deviation of the heatmap value for each grid cell in the current fused feature matrix is calculated. This deviation can be determined by calculating the relationship between the mean and standard deviation of the current heatmap value and historical heatmap values. For instance, the z-score method can be used to calculate the difference between the current heatmap value and the historical mean, and then divide it by the historical standard deviation to obtain the deviation. Grid cells with deviations exceeding a preset deviation threshold are then marked as anomalous heatmap points. Next, the weight of these anomalous heatmap points is reduced. Linear or non-linear decay methods can be used to adjust the heatmap values of these anomalous heatmap points, reducing their proportion in the final scene interaction heatmap distribution. Finally, a multi-scale fused scene interaction heatmap distribution is generated, which more accurately reflects the real-world player activity in the game scene and avoids interference from anomalous heatmap points.
[0080] Step S300: Extract features from the server resource consumption indicators in the multidimensional data association structure to obtain the fragmentation features of the memory access sequence and the response latency features of the network session. The fragmentation features are used to describe the continuity of memory page allocation, and the response latency features include the handshake time distribution during the session establishment phase.
[0081] In one implementation, step S300 may specifically include the following steps S310 to S360: Step S310: Extract memory resource consumption indicators from the multidimensional data association structure to obtain memory page allocation records, memory page release records, and memory access frequency records. Perform lifecycle correlation analysis on memory page allocation records and release records to identify memory page groups that are continuously allocated and continuously released. Calculate the address continuity index of the memory page group. The address continuity index is determined by the ratio of the number of consecutive memory pages to the total number of memory pages.
[0082] For example, extracting memory resource consumption metrics from a multidimensional data association structure can be achieved by querying relevant data tables within the structure to obtain memory page allocation records, memory page release records, and memory access frequency records. Then, a lifecycle correlation analysis is performed on the memory page allocation and release records. A time series analysis method can be used to sort the allocation and release records chronologically, and then identify groups of memory pages that are allocated and released consecutively. Next, the address continuity metric for these memory page groups is calculated. This is obtained by dividing the number of consecutive memory pages by the total number of memory pages.
[0083] Step S320: Calculate the locality index for memory access frequency records. The locality index is determined by the ratio of the number of times a memory page is accessed within a preset time window to the average access interval within that time window. The more accesses and the smaller the average access interval, the higher the locality index.
[0084] For example, calculating the locality of access index (LOI) based on memory access frequency records can be done by iterating through the records and counting the number of times each memory page is accessed and the average access interval within a preset time window. Then, the LIO is calculated based on the number of accesses and the average access interval. The LIO is obtained by dividing the number of times a memory page is accessed within the preset time window by the average access interval within that time window.
[0085] Step S330: Standardize the address continuity index, access locality index, and memory page lifetime fluctuation value respectively, and convert them into dimensionless and scale-consistent standardized values; combine the standardized address continuity index, access locality index, and memory page lifetime fluctuation value to generate fragmentation features of the memory access sequence. The fragmentation features include the proportion of continuous memory pages, the locality index distribution, and the memory page lifetime fluctuation value. The memory page lifetime fluctuation value is the standard deviation of the active duration of memory pages.
[0086] For example, standardizing the address continuity index, locality of access index, and memory page lifetime fluctuation value can be achieved using a general standardization method, such as the Z-score standardization method. This involves subtracting the mean from the data for each index and then dividing by its standard deviation to obtain the standardized value. Then, the standardized address continuity index, locality of access index, and memory page lifetime fluctuation value are combined to generate the fragmentation characteristics of the memory access sequence. Finally, combining the standardized percentage of contiguous memory pages, the locality of access index distribution, and the memory page lifetime fluctuation value yields the fragmentation characteristics of the memory access sequence.
[0087] Step S340: Extract network resource consumption indicators from the multidimensional data association structure to obtain network session establishment records and session data transmission records. Filter out valid network sessions that contain a complete handshake process. Valid network sessions are determined by M handshake processes without retransmission and session duration exceeding a preset session threshold, where M≥3.
[0088] The network session establishment record documents the process of establishing a network session between the server and the client, including handshake time and handshake information. The session data transmission record documents the data transmission between the server and the client after the network session is established, including transmission time and data volume. A valid network session is one that includes a complete handshake process, determined by M handshakes without retransmissions and a session duration exceeding a preset session threshold. The M handshakes refer to multiple handshake interactions during network session establishment, such as three-way or four-way handshakes. The preset session threshold is a pre-defined limit on session duration used to filter out valid network sessions with longer durations.
[0089] For example, network resource consumption metrics are extracted from a multidimensional data association structure. This can be achieved by querying relevant data tables within the multidimensional data association structure to obtain network session establishment records and session data transmission records. Then, valid network sessions containing complete handshake processes are selected. All network session establishment records are iterated through, checking if they meet the conditions of M handshake processes without retransmissions and session duration exceeding a preset session threshold. If the conditions are met, the network session is marked as a valid network session.
[0090] Step S350: Perform a temporal distribution analysis of valid network sessions by session type. Divide the sessions into login sessions, battle sessions, transaction sessions, and social sessions according to game function modules. Statistically analyze the proportion distribution of each type of session in different time periods to obtain the temporal distribution characteristics of session types.
[0091] For example, a temporal distribution analysis of session types is performed on valid network sessions. Sessions are categorized into login sessions, combat sessions, trading sessions, and social sessions based on game functional modules. The session type can be determined by analyzing relevant information in the network session establishment records, such as the session initiation time and the content of the session's actions. Then, the percentage distribution of each session type is statistically analyzed across different time periods. A day or a time period is divided into multiple smaller time periods, and the number of sessions of each type within each time period is counted, then the percentage of each type of session within that time period is calculated. Finally, the temporal distribution characteristics of session types are obtained.
[0092] Step S360: Calculate the handshake time distribution for different types of sessions based on the temporal distribution characteristics of session types. The handshake time distribution includes the time interval statistics, fluctuation range, and temporal change trend of the handshake phase. Combine the handshake time distribution with the temporal distribution characteristics of session types to generate the response latency characteristics of network sessions.
[0093] In one implementation, step S360 may specifically include the following steps S361 to S366: Step S361: Extract the timestamp information of the handshake process from the login session subset of the valid network session, including the initial handshake initiation time, the intermediate handshake response time and the final handshake confirmation time, calculate the interval between adjacent timestamps, and obtain the handshake phase time interval of the login session.
[0094] The login session subset is the set of sessions belonging to the login session type within valid network sessions. The interval between adjacent timestamps is the time difference between two consecutive timestamps, reflecting the time consumption of each step in the handshake phase. The handshake phase time interval of a login session is the time interval information for each step in the handshake phase of the login session. Extracting the timestamp information of the handshake process from the login session subset of valid network sessions can be done by traversing the login session subset and extracting the initial handshake initiation time, intermediate handshake response time, and final handshake confirmation time from the network session establishment record of each login session. Then, the interval between adjacent timestamps is calculated. Subtracting the initial handshake initiation time from the intermediate handshake response time yields the first time interval; subtracting the intermediate handshake response time from the final handshake confirmation time yields the second time interval. This gives the handshake phase time interval of the login session.
[0095] Step S362: Process the combat session, transaction session and social session subset using the same method, calculate the handshake phase time interval for each type of session, and ensure that the time interval data for different types of sessions are counted independently to obtain a categorized handshake time interval dataset.
[0096] Step S363: Divide the categorized handshake time interval dataset into time windows, group the time interval data according to the preset time windows, and calculate the central tendency index and dispersion index of the time intervals within each window. The central tendency index reflects the average time consumption level, and the dispersion index reflects the time consumption fluctuation.
[0097] For example, a time window can be divided into categorized handshake interval datasets. The time interval data is grouped according to a preset time window; for instance, a day can be divided into multiple hourly segments, with each segment serving as a time window. Then, the central tendency and dispersion indices for the time intervals within each window are calculated. For the time interval data within each time window, the mean is calculated as the central tendency index, and the standard deviation is calculated as the dispersion index.
[0098] Step S364: Analyze the time-series trends of the central tendency and dispersion indicators. Compare the differences between the indicators in the current window and the historical windows using a sliding window. The difference value is the ratio of the current indicator to the historical average indicator, generating a time-series trend sequence.
[0099] The sliding window method can be used to analyze the time-series trends of central tendency and dispersion indicators. This involves continuously moving the window and comparing the differences between the indicators in the current window and historical windows. For each time window, the ratio of the current indicator to the historical average indicator is calculated, yielding the difference value. Then, the difference values from each time window are collected to generate a time-series trend sequence.
[0100] Step S365: For each session type, combine the central tendency index, dispersion index, and temporal change trend sequence of its handshake time interval into a handshake time consumption feature vector for that session type.
[0101] For example, for each session type, the central tendency, dispersion, and time-series trend sequence of the handshake interval are combined to form a handshake time consumption feature vector for that session type. The central tendency, dispersion, and time-series trend sequence can be arranged sequentially to form a vector. For instance, if the central tendency is the mean, the dispersion is the standard deviation, and the time-series trend sequence is a sequence containing multiple variance values, then the mean, standard deviation, and variance value sequence can be sequentially combined into a vector as the handshake time consumption feature vector for that session type.
[0102] Step S366: Associate the proportion of each type of session in the temporal distribution feature of session type with the handshake time feature vector of each session type in the corresponding time period to generate network session response delay features containing temporal correlation.
[0103] For example, the proportion of each session type in the temporal distribution features of session types in each time period is associated with the handshake time consumption feature vector of each session type in the corresponding time period. This can be achieved by iterating through each time period and associating the proportion of each session type within that time period with the corresponding handshake time consumption feature vector. For instance, the proportion can be used as a weight to weight the handshake time consumption feature vector, and then the weighted handshake time consumption feature vectors of different session types can be combined to generate network session response latency features that include temporal correlation.
[0104] Step S400: Input the virtual economic flow map, scene interaction heat distribution and fragmentation characteristics, and response latency characteristics into the pre-built cross-dimensional correlation model to perform server load status assessment and generate load status assessment results containing resource bottleneck location information.
[0105] In one implementation, step S400 may specifically include the following steps S410 to S460: Step S410: Extract dynamic features of the virtual economic circulation graph structure, calculate the node connection strength distribution, path diversity index and community interaction elasticity coefficient of the graph. The node connection strength distribution reflects the density of transaction associations between players, the path diversity index reflects the richness of item circulation paths, and the community interaction elasticity coefficient reflects the stability of transaction relationships between communities, and generate a dynamic feature vector of the graph.
[0106] In one implementation, step S410 may specifically include the following steps S411 to S416: Step S411: Traverse all node units in the virtual economic flow graph, calculate the sum of the incoming edge weights and the sum of the outgoing edge weights of each node, calculate the node connection strength, perform frequency distribution statistics on the connection strength of all nodes, and obtain the node connection strength distribution characteristics.
[0107] Node units are nodes in the virtual economic flow graph, representing player characters in the game. The sum of incoming edge weights is the sum of the weights of all directed edges from other nodes to that node, while the sum of outgoing edge weights is the sum of the weights of all directed edges from that node to other nodes. Node connection strength is measured by the sum of incoming and outgoing edge weights, reflecting the degree of transactional association between that node and other nodes. Frequency distribution statistics involve statistically analyzing the connection strength of all nodes to obtain the distribution of node connection strength. Node connection strength distribution characteristics are features obtained through frequency distribution statistics that reflect the distribution of node connection strength. For example, all node units in the virtual economic flow graph are traversed. For each node, its incoming and outgoing edge weights are calculated and added together to obtain the node connection strength. Then, frequency distribution statistics are performed on the connection strength of all nodes. The node connection strength can be divided into different intervals, and the number of nodes in each interval is counted to obtain the frequency distribution of node connection strength. Finally, the frequency distribution information is organized into node connection strength distribution characteristics.
[0108] Step S412: Calculate the path diversity for each unidirectional transaction path sequence in the virtual economic flow graph. The path diversity index is determined by the ratio of the number of different paths with the same start and end points to the total number of paths. Different paths are defined as paths that contain at least one different intermediate node. Calculate the average path diversity index of all start-end pairs to obtain the global path diversity index.
[0109] A one-way transaction path sequence is a sequence of paths representing the one-way flow of virtual items in the virtual economic circulation graph. Path diversity calculation involves analyzing each one-way transaction path sequence to calculate a path diversity index. The number of different paths with the same start and end point is the number of different paths from the same start node to the same end node in the virtual economic circulation graph. The total number of paths is the total number of all one-way transaction paths in the virtual economic circulation graph. Different paths are defined as paths containing at least one different intermediate node; that is, two paths are considered different if they differ in even one intermediate node. The global path diversity index is the average of the path diversity indices of all start-end pairs, reflecting the richness of item circulation paths throughout the entire virtual economic circulation graph.
[0110] For example, path diversity is calculated for each unidirectional transaction path sequence in the virtual economic flow graph. All start-end pairs are traversed, and for each start-end pair, the number of different paths from that start point to that end point and the total number of paths are counted, calculating the path diversity index. Then, the average path diversity index of all start-end pairs is calculated to obtain the global path diversity index.
[0111] Step S413: Based on the community division results of the initial virtual economic flow graph, calculate the transaction flow between communities. The transaction flow between communities is the sum of the weights of the directed edges between different community nodes. Calculate the fluctuation range of the transaction flow between communities within a preset time window. The fluctuation range is the ratio of the maximum flow to the minimum flow. Generate community interaction fluctuation characteristics.
[0112] The community segmentation result of the initial virtual economic circulation graph is obtained by segmenting nodes into communities during the construction of the initial virtual economic circulation graph, dividing the nodes into multiple community units. The transaction flow between communities is the transaction flow between different community units, which is measured by the sum of the weights of the directed edges between different community nodes. For example, based on the community segmentation result of the initial virtual economic circulation graph, the transaction flow between communities is calculated. All directed edges between different community nodes are traversed, and the weights of these directed edges are added together to obtain the transaction flow between communities. Then, the fluctuation range of the transaction flow between communities within a preset time window is statistically analyzed. Within the preset time window, the maximum and minimum values of the transaction flow between communities are recorded, and the ratio between the two is calculated to obtain the fluctuation range. Finally, the fluctuation range is used as a characteristic of community interaction fluctuation.
[0113] Step S414: Convert the community interaction fluctuation characteristics into a community interaction elasticity coefficient. The elasticity coefficient is the ratio of 1 to the fluctuation amplitude. The smaller the fluctuation amplitude, the larger the elasticity coefficient, reflecting the degree to which the transaction relationship between communities is affected by short-term fluctuations.
[0114] Step S415: Combine the node connection strength distribution features, global path diversity index, and community interaction elasticity coefficient in a preset order. Convert each feature into a standardized numerical vector. The length of the feature vector is dynamically adjusted according to the feature dimension to ensure that each feature dimension is aligned.
[0115] For example, the node connection strength distribution feature, global path diversity index, and community interaction resilience coefficient are combined in a preset order. First, each feature is converted into a standardized numerical vector. Standardization methods, such as Z-score standardization, can be used to standardize the data for each feature. Then, the length of the feature vector is dynamically adjusted according to the feature dimensions to ensure alignment of each feature dimension. For example, if the node connection strength distribution feature has 10 dimensions, the global path diversity index has 1 dimension, and the community interaction resilience coefficient has 1 dimension, they can be combined into a feature vector of length 12.
[0116] Step S416: Perform temporal smoothing on the combined numerical vectors to generate dynamic feature vectors of the spectrum that reflect the long-term changing trend of the spectrum structure.
[0117] Temporal smoothing processes the combined numerical vectors to eliminate the impact of short-term fluctuations and extract long-term trends. The dynamic eigenvectors of the spectral data are vectors that, after temporal smoothing, reflect the long-term changing trends of the spectral structure.
[0118] For example, time-series smoothing is performed on the combined numerical vector. Time-series smoothing methods such as moving average and exponential smoothing can be used to process the numerical vector. For instance, using the moving average method, a suitable window size is selected, and a moving average is calculated for each element in the numerical vector to obtain the smoothed numerical vector. Finally, the smoothed numerical vector is used as the dynamic feature vector of the graph, reflecting the long-term changing trend of the graph structure.
[0119] Step S420: Encode the spatial semantic association features of the scene interaction heat distribution, combine the functional area semantic labels of the game scene, calculate the spatial matching degree between the heat distribution and the semantic labels, and generate a spatial semantic association feature vector. The spatial matching degree is the ratio of the overlapping area of the grid cell whose heat value exceeds the adaptive threshold to the corresponding semantic region.
[0120] In one implementation, step S420 may specifically include the following steps S421 to S426: Step S421: Obtain semantic label data of functional areas in the game scene. Each semantic label corresponds to a polygonal area in the scene, including the area boundary coordinates and functional type description. The functional type description includes combat area, trading area, quest area, etc.
[0121] Semantic label data for functional areas in a game scene describes information about different functional areas within the scene. Each semantic label corresponds to a polygonal region in the scene, and its specific location and extent can be determined by the region's boundary coordinates. The functional type description clarifies the region's purpose; for example, a combat area is where players engage in combat, a trading area is where players trade items, and a quest area is where players accept and complete quests. This semantic label data can be obtained from predefined map data or configuration files during game development. For instance, in the game's map editor, semantic labels can be added to different regions, and their boundary coordinates and functional type descriptions can be recorded.
[0122] Step S422: Extract high-heat regions from the scene interaction heat distribution, and use an adaptive threshold segmentation algorithm to determine the set of grid cells with heat values exceeding the threshold. High-heat regions are determined by connected regions composed of continuous high-heat value grid cells.
[0123] For example, high-heat regions are extracted from the scene interaction heat distribution. An adaptive threshold segmentation algorithm, such as the Otsu algorithm, is used to process the heat value data of the scene interaction heat distribution to determine a suitable threshold. Then, all grid cells are traversed, and grid cells with heat values exceeding the threshold are marked. Next, a connected component analysis algorithm, such as the flood filling algorithm, is used to determine the connected regions composed of consecutive high-heat value grid cells as high-heat regions.
[0124] Step S423: Calculate the spatial matching degree between the high thermal region and the semantic tag of each functional region. The spatial matching degree is the ratio of the number of overlapping grid cells between the high thermal region and the semantic tag region to the total number of grid cells in the semantic tag region, and obtain the matching degree value of each semantic tag.
[0125] Step S424: Perform time stability analysis on the matching degree value, count the frequency of change of the matching degree value of each semantic tag within the preset time window, the frequency of change is the number of times the matching degree value exceeds the preset fluctuation threshold, and generate the time stability feature of the matching degree.
[0126] Step S425: Sort the matching degree values and matching degree time stability features of each semantic label according to the semantic label type to obtain a two-dimensional feature array containing the matching degree sequence and the stability sequence.
[0127] A two-dimensional feature array is an array containing information in two dimensions. In this step, the matching degree values and matching degree time stability features of each semantic label are sorted according to the semantic label type, forming a two-dimensional feature array containing a matching degree sequence and a stability sequence. The matching degree sequence is the sequence of matching degree values sorted by semantic label type, and the stability sequence is the sequence of matching degree time stability features sorted by semantic label type.
[0128] Step S426: Reduce the dimensionality of the two-dimensional feature array. Use a feature selection algorithm to retain feature dimensions with a contribution greater than the contribution threshold. The contribution is determined by the correlation analysis between the feature and the load state. Generate a spatial semantic association feature vector after dimensionality reduction.
[0129] Dimensionality reduction processes a two-dimensional feature array to reduce its dimensionality while retaining important feature information. Feature selection algorithms are used to select important features, determining which features to retain based on their contribution. Contribution refers to the degree of correlation between a feature and the load state; correlation analysis determines the magnitude of each feature's contribution to load state assessment. The contribution threshold is a pre-defined critical value used to filter out features with higher contributions. The spatial semantic association feature vector is a vector containing important feature information obtained after dimensionality reduction.
[0130] For example, dimensionality reduction is performed on a two-dimensional feature array. Feature selection algorithms, such as Principal Component Analysis (PCA) and Recursive Feature Emission (RFE), are used to process the two-dimensional feature array. Correlation analysis is used to determine the contribution of each feature to the load state, and feature dimensions with a contribution greater than a contribution threshold are retained. Finally, the retained feature dimensions are combined to form a dimensionality-reduced spatial semantic association feature vector.
[0131] Step S430: Perform cross-index correlation modeling on fragmentation features and response latency features, calculate the temporal cross-correlation coefficient between memory fragmentation degree and network latency, and generate cross-index correlation feature vector. The cross-correlation coefficient reflects the degree of synchronization between the two over time.
[0132] For example, cross-metric correlation modeling is performed on fragmentation and response latency characteristics. The time-series cross-correlation coefficient between memory fragmentation and network latency can be calculated using time series analysis methods, such as cross-correlation functions, to analyze the time-series data of fragmentation and response latency characteristics and calculate the cross-correlation coefficient between them. This cross-correlation coefficient is then included as part of the cross-metric correlation feature vector. Other characteristics related to the correlation between the two, such as their trends and fluctuations, can also be considered and incorporated into the cross-metric correlation feature vector.
[0133] Step S440: Input the dynamic feature vector of the graph, the spatial semantic association feature vector, and the cross-index association feature vector into the cross-dimensional attention fusion module. Dynamic weights are assigned to features of different dimensions through the attention mechanism. The feature weights are adjusted inversely according to the load evaluation error in the training data. The smaller the error, the larger the corresponding feature weight, and a weighted fusion feature vector is generated.
[0134] For example, the dynamic feature vector of the graph, the spatial semantic association feature vector, and the cross-index association feature vector are input into the cross-dimensional attention fusion module. The cross-dimensional attention fusion module can employ a deep learning model, such as the Transformer model. Within the module, the attention mechanism assigns dynamic weights to features of different dimensions based on their importance. The feature weights are adjusted backward using the load evaluation error from the training data, and the model parameters are updated using the backpropagation algorithm, gradually reducing the error. Finally, the features of different dimensions are weighted and fused according to their assigned weights to generate a weighted fused feature vector.
[0135] Step S450: Input the weighted fused feature vector into the deep feature processing network of the cross-dimensional correlation model. The network includes a feature expansion layer, a feature compression layer, and a multi-task output layer. The feature expansion layer increases the feature dimension through nonlinear transformation, the feature compression layer reduces redundant dimensions through principal component analysis, and the multi-task output layer simultaneously outputs the server load status assessment value and the probability distribution of resource bottleneck type.
[0136] In one implementation, step S450 may specifically include the following steps S451 to S456: Step S451: Input the weighted fused feature vector into the feature extension layer of the deep feature processing network, and perform nonlinear feature extension through a multilayer perceptron. The hidden layer of the perceptron uses the exponential linear unit activation function to map the input features to a higher-dimensional feature space, thereby obtaining a high-dimensional extended feature vector.
[0137] A Multilayer Perceptron (MLP) is an artificial neural network model consisting of an input layer, hidden layers, and an output layer. In the feature expansion layer, the MLP performs non-linear feature expansion on the weighted fused feature vector. The Exponential Linear Unit (ELU) activation function is a non-linear activation function that can provide a non-zero output when the input is negative, helping to alleviate the vanishing gradient problem. The high-dimensional expanded feature vector is obtained by mapping the weighted fused feature vector to a higher-dimensional feature space through the feature expansion layer, thus containing more feature information.
[0138] For example, a weighted fused feature vector is input into the feature extension layer of a deep feature processing network. The input layer of the multilayer perceptron receives the weighted fused feature vector, and the hidden layers perform a non-linear transformation on the input features using an exponential linear unit activation function. Through the processing of multiple hidden layers, the input features are mapped to a higher-dimensional feature space. Finally, a high-dimensional extended feature vector is obtained from the output layer of the multilayer perceptron.
[0139] Step S452: Standardize the high-dimensional extended feature vector by adjusting the mean and variance of each feature dimension to make the feature value distribution conform to the standard normal distribution, eliminating the dimensional differences between different feature dimensions, and obtaining the standardized high-dimensional feature vector.
[0140] For example, feature standardization is performed on the high-dimensional extended feature vector. The mean and variance of each feature dimension are calculated. The value of each feature dimension is subtracted from its mean, and then divided by its standard deviation to obtain the standardized feature value. In this way, the mean and variance of each feature dimension are adjusted so that the feature value distribution conforms to a standard normal distribution. Finally, the standardized high-dimensional feature vector is obtained.
[0141] Step S453: Input the standardized high-dimensional feature vector into the feature compression layer, and extract the principal components whose cumulative contribution rate of explained variance exceeds the preset contribution rate threshold through the principal component analysis algorithm. The main feature information is retained, data redundancy is reduced, and a low-redundancy feature vector is obtained.
[0142] For example, standardized high-dimensional eigenvectors are input into a feature compression layer. Principal component analysis (PCA) is used to process the standardized high-dimensional eigenvectors. The covariance matrix of the standardized high-dimensional eigenvectors is calculated, and its eigenvalues and eigenvectors are solved. The eigenvectors are sorted according to the magnitude of their eigenvalues, and principal components whose cumulative contribution rate of explained variance exceeds a preset contribution rate threshold are selected. The standardized high-dimensional eigenvectors are projected onto these principal components to obtain low-redundancy eigenvectors.
[0143] Step S454: Divide the low-redundancy feature vector into two parallel processing branches. The first branch is input into the load assessment sub-network and outputs the server load status assessment value through the linear regression layer. The second branch is input into the bottleneck classification sub-network and outputs the resource bottleneck type probability distribution through the softmax classification layer.
[0144] The load assessment subnetwork is used to evaluate the server load status. It processes the input feature vector through a linear regression layer and outputs a server load status assessment value. The linear regression layer is a neural network layer used to establish linear relationships, which can predict the output value based on the input features. The bottleneck classification subnetwork is used to classify resource bottleneck types. It processes the input feature vector through a softmax classification layer and outputs a probability distribution of the resource bottleneck type. The softmax classification layer is a neural network layer used for multi-class classification problems, which can convert the input feature vector into probability values corresponding to each category.
[0145] For example, the low-redundancy feature vector is divided into two parallel processing branches. The first branch is input to the load assessment sub-network, where a linear regression layer processes the input low-redundancy feature vector and calculates the server load status assessment value through a linear regression model. The second branch is input to the bottleneck classification sub-network, where a softmax classification layer processes the input low-redundancy feature vector, converting it into probability values corresponding to each resource bottleneck type, and outputting the resource bottleneck type probability distribution.
[0146] Step S455: Set range constraints on the server load status assessment value. When the assessment value exceeds the preset reasonable load range, adjust it to the range boundary value.
[0147] A reasonable load range is a pre-defined, acceptable range for server load conditions, representing the load range of a server under normal operating conditions. When the server load assessment value exceeds this reasonable load range, it indicates that the assessment result may be abnormal and needs adjustment. Adjusting the assessment value to the range boundary value ensures that the assessment result is within a reasonable range, improving the reliability of the assessment result. For example, a range constraint is imposed on the server load assessment value. The server load assessment value is checked to see if it exceeds the preset reasonable load range. If the assessment value is less than the lower limit of the range, it is adjusted to the lower limit value; if the assessment value is greater than the upper limit of the range, it is adjusted to the upper limit value.
[0148] Step S456: Filter the probability distribution of resource bottleneck types with confidence, retain bottleneck types whose probability values exceed a preset probability threshold. When there are multiple types that exceed the threshold, sort them from high to low probability values to generate a probability distribution of resource bottleneck types containing sorting information.
[0149] Confidence screening processes the probability distribution of resource bottleneck types to identify those with higher confidence levels. A preset probability threshold is a pre-defined critical value used to determine which bottleneck types have sufficiently high probabilities to be retained. When multiple bottleneck types exceed the threshold, sorting them by probability value from highest to lowest makes the results clearer and facilitates subsequent analysis and processing. The resource bottleneck type probability distribution containing ranking information is the distribution obtained after confidence screening and sorting, including both bottleneck type probability values and ranking information.
[0150] Step S460: Filter the probability distribution of bottleneck types output by the model with confidence. When the difference between the highest probability value and the second highest probability value is less than a preset threshold, trigger secondary feature extraction, add inter-community transaction features of the virtual economic flow map, and generate a load status assessment result containing resource bottleneck location information after re-evaluation.
[0151] Confidence filtering analyzes and processes the probability distribution of bottleneck types output by the model to ensure the reliability of the results. The difference between the highest and second-highest probability values reflects the model's certainty in judging the most likely bottleneck type. When the difference is less than a preset threshold, it indicates that the model's judgment of the most likely bottleneck type is not certain enough, and further analysis is needed. Secondary feature extraction adds new feature information based on the original features to improve the model's judgment accuracy. The inter-community transaction features of the virtual economic circulation graph are relevant features of inter-community transactions in the virtual economic circulation graph, such as inter-community transaction volume and frequency. Re-evaluation involves re-evaluating the server load status using a cross-dimensional correlation model after adding new feature information. The load status evaluation result containing resource bottleneck location information is obtained after re-evaluation and contains more accurate resource bottleneck location information.
[0152] Step S500: Based on the resource bottleneck location information in the load status assessment results, generate resource scheduling instructions and adjust the computing resource allocation strategy of the game server cluster through resource scheduling instructions.
[0153] In one implementation, step S500 may specifically include the following steps S510-S560: Step S510: Extract resource bottleneck location information and diffusion warning flags from the load status assessment results. The diffusion warning flag is added when the bottleneck diffusion probability exceeds the preset diffusion threshold. When the diffusion warning flag exists, the corresponding resource bottleneck type is listed as a priority processing object, and the main resource bottleneck type that needs to be adjusted at present is determined.
[0154] Resource bottleneck location information, explicitly identified in the load status assessment results, details the specific location and type of resource bottlenecks within the server cluster, providing crucial information for subsequent resource scheduling. A propagation warning flag is a special flag added to the load status assessment results when the bottleneck propagation probability exceeds a preset propagation threshold. This flag alerts the system that the current resource bottleneck may propagate, affecting more server nodes, thus requiring priority attention. The primary resource bottleneck type is determined based on the resource bottleneck location information and the propagation warning flag; these are the resource bottleneck types that require immediate adjustment, such as memory or network resource bottlenecks.
[0155] Extracting resource bottleneck location information and diffusion warning indicators from load status assessment results can be done by parsing the data structure of the load status assessment results and searching for the corresponding fields. Check if diffusion warning indicators exist; if so, prioritize the corresponding resource bottleneck type. For example, if the diffusion warning indicator corresponds to a memory resource bottleneck, then the memory resource bottleneck will be the primary resource bottleneck type requiring adjustment.
[0156] Step S520: Query the preset resource adjustment strategy knowledge base, obtain the corresponding basic adjustment plan according to the main resource bottleneck type, and the basic adjustment plan includes the target resource type, adjustment direction and basic adjustment range calculation rules.
[0157] The pre-built resource adjustment strategy knowledge base is a pre-constructed knowledge base that stores adjustment strategies and solutions for different resource bottleneck types. The basic adjustment solution is a basic adjustment solution for the main resource bottleneck types obtained from the knowledge base. It includes the target resource type, i.e., the type of resource that needs to be adjusted, such as memory resources or network resources; the adjustment direction, i.e., whether the resource needs to be increased or decreased; and the basic adjustment range calculation rules, which are used to determine the initial resource adjustment range.
[0158] The pre-defined resource adjustment strategy knowledge base can be queried using the primary resource bottleneck type as a keyword. After finding the corresponding basic adjustment plan, the target resource type, adjustment direction, and basic adjustment magnitude calculation rules are extracted. For example, if the primary resource bottleneck type is a memory bottleneck, the basic adjustment plan retrieved from the knowledge base might indicate that the target resource type is memory, the adjustment direction is to increase memory resources, and the basic adjustment magnitude calculation rules might be related to the server's current load and memory utilization.
[0159] Step S530: Dynamically adjust the base adjustment range based on the server load status assessment value. The higher the load assessment value, the larger the adjustment range. The adjustment range is positively correlated with the load assessment value, and a dynamic adjustment range value is generated.
[0160] The server load status assessment value is obtained during the preceding server load status assessment process and reflects the server's current load. The basic adjustment range is the initial adjustment range obtained according to the calculation rules in the basic adjustment scheme. The dynamic adjustment of the basic adjustment range involves further adjusting the basic adjustment range based on the server load status assessment value, so that the adjustment range more accurately adapts to the actual server load. Since a higher load assessment value indicates a heavier server load, the adjustment range is positively correlated with the load assessment value; that is, the higher the load assessment value, the larger the adjustment range. The dynamic adjustment range value is the final adjustment range value obtained after dynamic adjustment.
[0161] For example, the base adjustment range can be dynamically adjusted based on the server load status assessment value. According to preset adjustment rules, the load assessment value is input as a parameter into the adjustment function, which adjusts the base adjustment range based on the magnitude of the load assessment value. For instance, if the load assessment value is high, the adjustment function will correspondingly increase the base adjustment range, generating a dynamic adjustment range value.
[0162] Step S540: Perform a scheduling risk assessment on the dynamic adjustment magnitude value. The scheduling risk assessment is determined by calculating the predicted value of system performance fluctuation before and after resource adjustment. The fluctuation prediction value is generated based on the performance change pattern in historical scheduling records. When the fluctuation prediction value exceeds the preset risk threshold, the adjustment magnitude value is reduced.
[0163] The predicted system performance fluctuations before and after resource adjustments are obtained by analyzing performance change patterns in historical scheduling records. These predictions foreshadow potential system performance fluctuations after resource adjustments. A preset risk threshold is a pre-defined critical value used to determine whether the predicted fluctuations are within an acceptable range. When the predicted fluctuations exceed the preset risk threshold, it indicates that resource scheduling may pose a significant risk, requiring a reduction in the adjustment magnitude to minimize system performance fluctuations.
[0164] For example, a scheduling risk assessment is performed on the dynamic adjustment magnitude. First, performance change pattern data is extracted from historical scheduling records. This data can include changes in system performance under different resource adjustment magnitudes. Then, based on this pattern data and the current dynamic adjustment magnitude, a predicted system performance fluctuation before and after the resource adjustment is calculated. The predicted fluctuation is compared with a preset risk threshold. If the predicted fluctuation exceeds the preset risk threshold, the adjustment magnitude is reduced, for example, by a certain percentage, until the predicted fluctuation is within an acceptable range.
[0165] Step S550: Based on the target resource type, adjustment direction, adjustment range value after risk assessment, and preset server selection rules, determine the target server cluster for which resources need to be adjusted. The server selection rules are formulated based on the current load level and historical stability indicators of the servers.
[0166] In one implementation, step S550 may specifically include the following steps S551 to S556: Step S551: Obtain real-time operating status data of each server node from the game server cluster management system, including current load level, resource utilization, historical fault records and performance stability score. The performance stability score is determined based on the performance fluctuation range within a preset time window.
[0167] A game server cluster management system is used to manage and monitor game server clusters, providing real-time operational status data for each server node. The current load level reflects the server's current workload, resource utilization indicates the proportion of various server resources (such as memory and network bandwidth) being used, historical fault records document past server failures, and the performance stability score is determined based on performance fluctuations within a preset time window and is used to assess server stability.
[0168] Real-time operational status data of each server node can be obtained from the game server cluster management system by calling the interface provided by the system. Performance stability scores are calculated based on the performance fluctuation range of the servers within a preset time window. For example, the load fluctuation of the servers within a preset time window can be statistically analyzed; the smaller the fluctuation range, the higher the performance stability score.
[0169] Step S552: Perform preliminary screening of server nodes according to server selection rules. When the target resource type is memory resource, screen server nodes whose memory utilization exceeds a preset utilization threshold; when it is network resource, screen server nodes whose network bandwidth utilization exceeds a preset utilization threshold; and obtain a set of candidate server nodes.
[0170] The server selection criteria are based on the server's current load level and historical stability metrics, used to filter server nodes that require resource adjustments. The preset utilization threshold and preset resource utilization threshold are pre-set critical values used to determine whether server resource usage exceeds normal ranges. The candidate server node set is a set of server nodes that may require resource adjustments after initial screening.
[0171] For example, server nodes are initially screened according to server selection rules. When the target resource type is memory resource, the real-time operating status data of each server node is traversed to filter out server nodes whose memory utilization exceeds a preset utilization threshold. When the target resource type is network resource, server nodes whose network bandwidth utilization exceeds a preset utilization threshold are filtered out. The filtered server nodes are then combined into a candidate server node set.
[0172] Step S553: Perform load balancing assessment on the candidate server node set and calculate the load balancing index of each node. The load balancing index is the ratio of the current load level of the node to the average load level of the cluster. The larger the ratio deviates from 1, the more unbalanced the load is. Nodes with larger ratio deviations from 1 are selected for adjustment first.
[0173] For example, a load balancing assessment is performed on the candidate server node set. First, the cluster average load level is calculated, which is the average of the current load levels of all nodes in the candidate server node set. Then, the load balancing index of each node is calculated by dividing the node's current load level by the cluster average load level. The candidate server nodes are sorted according to the degree to which their load balancing index deviates from 1, and nodes with a ratio deviating more from 1 are prioritized for adjustment.
[0174] Step S554: Sort the candidate server nodes by stability based on historical stability indicators, which include failure frequency and failure recovery time. The lower the failure frequency and the shorter the recovery time, the higher the stability ranking.
[0175] For example, candidate server nodes are ranked for stability based on historical stability metrics. Historical fault records are extracted from the real-time operational status data of each server node, and the frequency of fault occurrence and fault recovery time are statistically analyzed. Candidate server nodes are ranked according to fault frequency and fault recovery time, with nodes having lower fault frequencies and shorter recovery times ranking higher in stability.
[0176] Step S555: Determine the final target server cluster based on the load balancing index and stability ranking. Select nodes with large load balancing index deviations and high stability rankings. The size of the target server cluster is determined based on the adjustment range value; the larger the adjustment range value, the more nodes it contains.
[0177] The final target server cluster is a set of server nodes that require resource adjustments, determined by comprehensively considering load balancing index and stability ranking. Nodes with large deviations in the load balancing index indicate that their load differs significantly from the cluster average load, requiring adjustments to achieve load balancing. Nodes with higher stability rankings indicate better stability, ensuring system reliability during resource adjustments. The adjustment magnitude determines the size of the target server cluster; a larger adjustment magnitude requires more resources to be adjusted, and therefore includes more nodes.
[0178] For example, the final target server cluster is determined based on load balancing index and stability ranking. Taking into account both load balancing index deviation and stability ranking, nodes with large load balancing index deviation and high stability ranking are selected. The size of the target server cluster is determined based on the adjustment magnitude value; for example, the number of nodes to be selected can be determined based on a preset relationship between the adjustment magnitude value and the number of nodes.
[0179] Step S556: Assign specific resource adjustment values to each node in the target server cluster. The adjustment values are allocated proportionally according to the node's load level, with higher load levels receiving larger adjustment values.
[0180] The resource adjustment value is the specific amount of resource adjustment allocated to each node in the target server cluster, and it is distributed proportionally according to the node's load level. The higher the load level of a node, the greater its resource demand, and therefore the larger the adjustment value allocated to it.
[0181] For example, a specific resource adjustment value is assigned to each node in the target server cluster. First, the load level of each node in the target server cluster is calculated. Then, based on the proportion of a node's load level to the total load level of the target server cluster, the adjustment value is proportionally allocated to each node. For instance, if a node's load level accounts for a large proportion of the total load level of the target server cluster, then the resource adjustment value allocated to that node will also be correspondingly larger.
[0182] Step S560: Integrate the target server cluster identifier, target resource type, adjustment direction, adjustment magnitude value, and execution time window into a resource scheduling instruction. Select a period with low server load for the execution time window and generate a resource scheduling instruction with time constraints.
[0183] The target server cluster identifier uniquely identifies the target server cluster requiring resource adjustments. The target resource type specifies the type of resource to be adjusted, the adjustment direction indicates whether the resource is increased or decreased, the adjustment magnitude represents the specific amount of resource adjustment, and the execution time window selects a period with low server load to minimize the impact of resource scheduling on normal server operation. The resource scheduling instruction is a set of instructions that integrates this information and guides the game server cluster in making resource adjustments.
[0184] For example, the target server cluster identifier, target resource type, adjustment direction, adjustment magnitude, and execution time window are integrated into a resource scheduling instruction. This information can be stored in a data structure to form the resource scheduling instruction. Selecting a period of low server load as the execution time window can be done by analyzing historical load data of the game server cluster. Finally, a resource scheduling instruction with time constraints is generated and sent to the game server cluster management system to execute the resource scheduling operation.
[0185] Furthermore, it should be noted that the implementation of this application involves various algorithms, which can be learned from relevant content in the prior art. For the sake of brevity, these algorithms will not be elaborated upon in the embodiments of this application. In addition, those skilled in the art can refine the details when implementing the solution of this application based on general consensus in the field. For example, they can use common knowledge to eliminate dimensional conflicts before feature fusion by means of normalization / standardization / normalization, use interpolation to eliminate dimensional differences, reasonably set thresholds based on historical data, experience or business scenario requirements, train the model based on general model training methods, set the number of layers in the model structure based on actual needs, and select activation functions, etc.
[0186] For example, in step S210, the calculation process of the comprehensive interaction intensity index can be as follows: First, the duration of the event, the number of players involved, and the operation frequency are normalized to the same preset numerical range to obtain dimensionless duration scores, player number scores, and operation frequency scores; then, the duration scores, player number scores, and operation frequency scores are weighted and summed to generate the comprehensive interaction intensity index. Similar examples are not provided here.
[0187] This application provides a computer-readable storage medium storing computer-executable instructions or computer programs. When the computer-executable instructions or computer programs are executed by a processor, the processor will execute the cloud-based game server status monitoring method provided in this application. For example, ... Figure 3 The method for monitoring the status of a game server based on cloud computing is shown.
[0188] In some embodiments, the computer-readable storage medium may be a read-only memory (ROM), random access memory (RAM), erasable programmable read-only memory (EPROM), electrically erasable programmable read-only memory (EEPROM), flash memory, magnetic surface memory, optical disk, or CD-ROM, etc.; or it may be a device that includes one or any combination of the above-mentioned memories.
[0189] The above description is merely an embodiment of this application and is not intended to limit the scope of protection of this application. Any modifications, equivalent substitutions, and improvements made within the spirit and scope of this application are included within the scope of protection of this application.
Claims
1. A cloud computing based game server state monitoring method, characterized by, The method comprises: acquiring player interaction event records and server resource consumption indicators of a game server cluster within a preset monitoring period, constructing a multidimensional data association structure, the multidimensional data association structure being used to associate time attributes of player behavior data and server performance data; performing behavior pattern analysis on the player interaction event records in the multidimensional data association structure, generating a virtual economic flow transfer graph and a scene interaction heat distribution, the virtual economic flow transfer graph containing path dependence relationships of virtual item transactions between players, and the scene interaction heat distribution being used to represent the activity intensity of players in different game scene areas; extracting features from the server resource consumption indicators in the multidimensional data association structure, obtaining fragmentation features of memory access sequences and response delay features of network sessions, the fragmentation features being used to describe the continuity state of memory page allocation, and the response delay features containing handshake time consumption distribution in the session establishment stage; inputting the virtual economic flow transfer graph, the scene interaction heat distribution, and the fragmentation features and the response delay features into a pre-constructed cross-dimension association model, performing server load state evaluation, and generating a load state evaluation result containing resource bottleneck positioning information; generating resource scheduling instructions according to the resource bottleneck positioning information in the load state evaluation result, and adjusting the computing resource allocation strategy of the game server cluster through the resource scheduling instructions.
2. The method of claim 1, wherein, The behavior pattern analysis on the player interaction event records in the multidimensional data association structure, and the generation of the virtual economic flow transfer graph and the scene interaction heat distribution, comprise: performing event type classification on the player interaction event records in the multidimensional data association structure, obtaining a virtual item transaction event set and a scene switching event set, and simultaneously calculating an interaction intensity comprehensive indicator of each event, the interaction intensity comprehensive indicator being generated through weighted combination of event duration, number of involved players, and operation frequency, filtering events with an interaction intensity comprehensive indicator lower than a preset threshold, and obtaining a high-value interaction event set; performing time sequence dependence filtering on the virtual item transaction events in the high-value interaction event set, identifying associated transaction event groups occurring continuously within a preset time window, the associated transaction event groups being determined through indirect association relationships of transaction subject identifiers, and deleting non-associated transaction events existing in isolation, to obtain a virtual item transaction event set filtered according to time sequence dependence; performing transaction path extraction on the virtual item transaction event set filtered according to time sequence dependence, grouping transaction events according to virtual item types, tracing the continuity of transaction subject identifiers in each group of events, and generating a one-way transaction path sequence in combination with an item flow transfer decay coefficient, the item flow transfer decay coefficient being linearly reduced with an increase in transaction times. scene dwell index calculation is performed on the scene switching event set, wherein the scene dwell index is calculated based on accumulated dwell time of the player in the scene area and scene switching frequency, the scene dwell index is positively correlated with the accumulated dwell time and negatively correlated with the scene switching frequency; the scene dwell index is adjusted in combination with periodic characteristics of player behavior, the periodic characteristics of player behavior are determined by login time period distribution in historical interaction records, and a periodically adjusted scene dwell index is obtained; An initial virtual economic flow transfer graph is constructed based on the one-way transaction path sequence, node units in the graph are player role identifiers, directed edge units are virtual item transaction events, and weight values of the directed edges are dynamically adjusted according to time interval of the transaction events, the weight value is larger when the time interval is closer, and an initial virtual economic flow transfer graph with time sequence weight is generated; Multi-scale grid mapping is performed on the periodically adjusted scene dwell index, the dwell index is mapped to grid units of different resolutions, multi-resolution grid data is integrated, local feature loss caused by single-scale division is eliminated, and a multi-scale fused scene interaction heat distribution is generated.
3. The method of claim 2, wherein, The time-dependent filtered virtual item transaction event set is subjected to transaction path extraction, the transaction events are grouped according to virtual item types, the continuity of transaction subject identifiers in each group of events is tracked, and a one-way transaction path sequence is generated in combination with an item flow decay coefficient, including: A transaction event sub-set containing the same virtual item type is extracted from the time-dependent filtered virtual item transaction event set, each sub-set is sorted according to transaction occurrence time sequence, and a time-ordered transaction event sequence is obtained; Transaction closed loop detection is performed on the time-ordered transaction event sequence, a cyclic association relationship of a transaction subject identifier appearing in the sequence is identified, when the same subject identifier acts as both a receiver and an initiator within a preset path length, it is marked as a potential transaction closed loop, and abnormal path segments containing the transaction closed loop are excluded; The transaction event sequence after the exclusion of abnormal path segments is subjected to subject continuity tracking, the transaction receiver identifier of a previous transaction event and the transaction initiator identifier of a subsequent transaction event are subjected to consistency checking, and an event group that passes the continuity check for N consecutive times is marked as a subject continuous transaction chain, wherein N is greater than or equal to 3; The subject continuous transaction chain is subjected to weight adjustment in combination with the item flow decay coefficient, the decay coefficient of each transaction event is initially 1, and the decay coefficient decreases by a preset decay step after each transaction flow transfer, the weighted sum of the decay coefficients of all events in the transaction chain is calculated as a path activity index; The subject continuous transaction chain is screened according to the path activity index, and effective transaction chains with an activity index higher than a preset activity threshold are retained, and an effective transaction chain set is obtained; The effective transaction chain set is stored in groups according to virtual item types, each group contains an item type identifier, a path starting point identifier, a path end point identifier and a path node sequence, and a one-way transaction path sequence containing an activity index is generated.
4. The method of claim 2, wherein, The initial virtual economic flow transfer graph is constructed based on the one-way transaction path sequence, the node unit of the graph is a player role identifier, the directed edge unit is a virtual item transaction event, and the weight value of the directed edge is dynamically adjusted according to the time interval of the transaction event. The closer the time interval is, the greater the weight value is. An initial virtual economic flow transfer graph with a time sequence weight is generated, including: All player role identifiers in the one-way transaction path sequence are uniquely extracted to establish a mapping relationship table of player role identifiers and node IDs. Each unique player role identifier corresponds to a unique node ID. The player role identifiers in the one-way transaction path sequence are converted into node IDs according to the mapping relationship table to obtain a path node ID sequence composed of node IDs. The path node ID sequence is subjected to directed edge construction. Adjacent node ID pairs in the sequence are taken as the start point ID and the end point ID of the directed edge. The transaction event timestamp corresponding to each directed edge is recorded to generate a directed edge set containing timestamp information. The time interval weight of each directed edge is calculated. The time interval weight is calculated by the difference between the current timestamp and the transaction event timestamp. The smaller the difference is, the greater the weight value is. The larger the difference is, the smaller the weight value is. A directed edge set with a time sequence weight is generated. The node ID mapping relationship table and the directed edge set with a time sequence weight are used to construct a graph structure. The node attribute includes the player role identifier and the cumulative transaction frequency. The directed edge attribute includes the time interval weight and the transaction item type. An initial graph structure is generated. The initial graph structure is subjected to node community division. The nodes are divided into multiple community units based on the transaction frequency and path similarity between nodes. The transaction connection density between community units is calculated. The paths with a connection density greater than a density threshold in the initial graph structure are highlighted. An initial virtual economic flow transfer graph with a time sequence weight and a community structure is generated.
5. The method of claim 2, wherein, The periodically adjusted scene retention index is subjected to multi-scale grid mapping. The retention index is mapped to grid units with different resolutions. The multi-resolution grid data is integrated to eliminate local feature loss caused by single-scale division. A multi-scale fused scene interaction heat distribution is generated, including: The spatial topology structure data of the game scene is obtained. The multi-scale grid division rule is determined according to the scene terrain features and functional area division. The multi-scale grid division rule includes three resolutions of coarse-grained grid, medium-grained grid and fine-grained grid. The periodically adjusted scene retention index is mapped to grid units with three resolutions respectively. The initial heat value of each grid unit is the aggregation value of all player retention indexes in the unit. Coarse-grained heat matrix, medium-grained heat matrix and fine-grained heat matrix are obtained. The fine-grained heat matrix is subjected to high-frequency feature extraction to extract local hotspot features in the fine-grained grid. The coarse-grained heat matrix is subjected to low-frequency feature extraction to extract global distribution features in the coarse-grained grid. The medium-grained thermal matrix is taken as a reference, high-frequency features and low-frequency features are fused with the reference matrix by a cross-scale feature fusion algorithm, a fused feature matrix is obtained, the weight of the high-frequency features increases with the increase of the grid resolution, and the weight of the low-frequency features increases with the decrease of the grid resolution; The fused feature matrix is subjected to abnormal thermal point suppression, the deviation degree of the current thermal value is calculated based on the historical scene interactive thermal distribution, the grid unit whose deviation degree exceeds a preset deviation threshold is marked as an abnormal thermal point, the weight value of the abnormal thermal point is reduced, and a multi-scale fused scene interactive thermal distribution is generated.
6. The method of claim 1, wherein, The server resource consumption indicators in the multi-dimensional data association structure are subjected to feature extraction, obtaining fragmentation features of memory access sequences and response delay features of network sessions, including: Memory resource consumption indicators are extracted from the multi-dimensional data association structure, obtaining memory page allocation records, memory page release records and memory access frequency records, the memory page allocation records and release records are subjected to life cycle correlation analysis, a memory page group that is continuously allocated and continuously released is identified, an address continuity index of the memory page group is calculated, and the address continuity index is determined by the ratio of the number of continuous memory pages to the total number of memory pages; An access locality index is calculated for the memory access frequency records, and the access locality index is determined by the ratio of the access frequency of a memory page within a preset time window to the average access interval within the time window, the more the access frequency and the smaller the average access interval, the higher the locality index; The address continuity index, the access locality index and the memory page life cycle fluctuation value are respectively subjected to standardization processing, and are converted into standardized values that are dimensionless and consistent in scale; the address continuity index, the access locality index and the memory page life cycle fluctuation value after standardization are combined to generate fragmentation features of memory access sequences, the fragmentation features include a continuous memory page proportion, a locality index distribution and a memory page life cycle fluctuation value, and the memory page life cycle fluctuation value is a standard deviation of the active duration of a memory page; Network resource consumption indicators are extracted from the multi-dimensional data association structure, obtaining network session establishment records and session data transmission records, and effective network sessions containing complete handshake processes are screened out, and the effective network sessions are determined by M times of handshake processes without retransmission and a session duration longer than a preset session threshold, wherein M is greater than or equal to 3; Session type time sequence distribution analysis is performed on the effective network sessions, the sessions are divided into login sessions, battle sessions, transaction sessions and social sessions according to game function modules, the proportion distribution of each type of session in different time periods is counted, and a session type time sequence distribution feature is obtained; Based on the session type time sequence distribution feature, a handshake time consumption distribution of different types of sessions is calculated, the handshake time consumption distribution includes time interval statistics, fluctuation range and time sequence change trend of the handshake phase, the handshake time consumption distribution and the session type time sequence distribution feature are combined to generate a response delay feature of a network session.
7. The method of claim 6, wherein, The handshake time consumption distribution of different types of sessions is calculated based on the session type timing distribution characteristics, and the handshake time consumption distribution includes time interval statistics, fluctuation range and timing change trend of the handshake phase. The handshake time consumption distribution and the session type timing distribution characteristics are combined to generate response delay features of network sessions, including: Timestamp information of the handshake process is extracted from the login session subset of the effective network sessions, including initial handshake initiation time, intermediate handshake response time and final handshake confirmation time. The interval value of adjacent timestamps is calculated to obtain the handshake phase time interval of the login session; The same method is used to process the combat session, transaction session and social session subsets to calculate the handshake phase time interval of each type of session to obtain a type-specific handshake time interval dataset; The time window is divided for the type-specific handshake time interval dataset, and the time interval data is grouped according to the preset time window. The central tendency index and dispersion index of the time interval in each window are calculated; The timing change trend of the central tendency index and dispersion index is analyzed. The index difference between the current window and the historical window is compared through the sliding window. The difference value is the ratio of the current index to the historical average index. The timing change trend sequence is generated; For each type of session, the central tendency index, dispersion index and timing change trend sequence of the handshake time interval are combined into a handshake time consumption feature vector of the session type; The proportion of each type of session in each period in the session type timing distribution characteristics is associated with the handshake time consumption feature vector of each session type in the corresponding period to generate network session response delay features containing timing association.
8. The method of claim 1, wherein, The virtual economic flow transfer map, the scene interaction heat distribution, the fragmentation feature and the response delay feature are input into the pre-constructed cross-dimensional association model to perform server load state evaluation and generate load state evaluation results containing resource bottleneck positioning information, including: The graph structure dynamic feature of the virtual economic flow transfer map is extracted to calculate the node connection strength distribution, path diversity index and social community interaction elasticity coefficient of the graph to generate a graph dynamic feature vector; The spatial semantic association feature of the scene interaction heat distribution is encoded. The spatial matching degree of the heat distribution and the semantic label is calculated by combining the functional area semantic label of the game scene to generate a spatial semantic association feature vector. The spatial matching degree is the overlap area ratio of the grid cell with a heat value exceeding the adaptive threshold to the corresponding semantic area; The cross-index association modeling is performed on the fragmentation feature and the response delay feature to calculate the time series cross-correlation coefficient of the memory fragmentation degree and the network delay to generate a cross-index association feature vector. The cross-correlation coefficient reflects the synchronization degree of the two over time; The graph dynamic feature vector, spatial semantic association feature vector and cross-index association feature vector are input into the cross-dimensional attention fusion module. The dynamic weight is assigned to different dimensional features through the attention mechanism. The feature weight is adjusted in the reverse direction according to the load evaluation error in the training data. The smaller the error is, the larger the corresponding feature weight is. A weighted fusion feature vector is generated. The weighted fusion feature vector is input into a deep feature processing network of the cross-dimension correlation model, the network comprising a feature expansion layer, a feature compression layer and a multi-task output layer, the feature expansion layer increasing feature dimension through nonlinear transformation, the feature compression layer reducing redundant dimension through principal component analysis, and the multi-task output layer simultaneously outputting a server load state evaluation value and a resource bottleneck type probability distribution; The bottleneck type probability distribution output by the model is subjected to confidence filtering, when the difference between the highest probability value and the second highest probability value is less than a preset threshold, triggering secondary feature extraction, increasing the inter-community transaction feature of the virtual economic flow graph, and generating a load state evaluation result containing resource bottleneck positioning information after reevaluation.
9. The method of claim 8, wherein, The graph structure dynamic feature extraction of the virtual economic flow graph is performed, the node connection strength distribution, path diversity index and community interaction elasticity coefficient of the graph are calculated, and a graph dynamic feature vector is generated, including: All node units in the virtual economic flow graph are traversed, the total sum of in-edge weights and out-edge weights of each node are counted, the node connection strength is calculated, and the frequency distribution of all node connection strengths is counted to obtain the node connection strength distribution feature; Path diversity calculation is performed on each one-way transaction path sequence in the virtual economic flow graph, the path diversity index is determined through the ratio of the number of different paths with the same starting point and ending point to the total number of paths, different paths are defined as paths containing at least one different intermediate node, the average value of the path diversity index of all starting point-terminal point pairs is calculated to obtain the global path diversity index; Based on the community division result of the initial virtual economic flow graph, the transaction flow between communities is calculated, the inter-community transaction flow is the total weight of directed edges between different community nodes, the fluctuation amplitude of the inter-community transaction flow within a preset time window is counted, the fluctuation amplitude is the ratio of the maximum flow to the minimum flow, and a community interaction fluctuation feature is generated; The community interaction fluctuation feature is converted into a community interaction elasticity coefficient, the elasticity coefficient is the ratio of 1 to the fluctuation amplitude, the smaller the fluctuation amplitude, the larger the elasticity coefficient, reflecting the degree of influence of short-term fluctuations on inter-community transaction relationships; The node connection strength distribution feature, global path diversity index and community interaction elasticity coefficient are combined in a preset order, each feature is converted into a standardized numerical vector, the length of the feature vector is dynamically adjusted according to the feature dimension to ensure that each feature dimension is aligned; The combined numerical vector is subjected to time series smoothing to generate a graph dynamic feature vector reflecting the long-term change trend of the graph structure.
10. A computer system, characterized by It comprises: a memory for storing computer executable instructions or computer programs; a processor for executing the computer executable instructions or computer programs stored in the memory to implement the cloud computing-based game server state monitoring method of any one of claims 1 to 9.
Citation Information
Cited By
Method and system for analyzing database performance indexes based on large model
CN121958054A