Live broadcast room data processing method and system

By binding the mapping relationship between the user end and the server in the live broadcast room data processing system, synchronizing the operation data in real time and using the designated server cluster to perform statistics and settlement of data results, the problem of excessive delay in live broadcast room data synchronization is solved and the user experience is improved.

CN114579802BActive Publication Date: 2025-09-05BIGO TECH PTE LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202210130281.7
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-02-11
Publication Date
2025-09-05
Estimated Expiration
2042-02-11

AI Technical Summary

Technical Problem

The existing live broadcast room data synchronization method causes excessive delay, affecting the user experience.

Method used

After the mapping relationship between the user end and the server is bound, the operation data is synchronized in real time and the designated server cluster performs statistics and settlement of data results. Distributed server deployment and TCP full-duplex communication protocol are used to reduce data transmission delay.

Benefits of technology

By synchronizing operational data in real time and uniformly performing statistics and settlement of data results, data synchronization latency is reduced and the user experience is optimized.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN114579802B_ABST
    Figure CN114579802B_ABST
Patent Text Reader

Abstract

The embodiment of the present application discloses a method and system for processing live broadcast room data. The technical solution provided by the embodiment of the present application is to bind the user ID of the current user terminal, the server address of the current server and the room ID of the target virtual room to build a mapping relationship after the current user terminal connects to the current server and enters the target virtual room; receive the operation data of the current user terminal, and generate an operation display result according to the operation data; return the operation display result to the current user terminal, and synchronize the operation display result to the associated user terminal based on the mapping relationship; write the operation data to the designated server cluster for statistics and settlement of data results. By adopting the above technical means, the operation data of the same virtual room is synchronously displayed in real time, and the designated server cluster performs statistics and settlement of data results, so as to reduce the data synchronization delay and optimize the user experience.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The embodiments of the present application relate to the field of Internet technology, and in particular to a live broadcast room data processing method and system. Background Art

[0002] Currently, live streaming applications often require data synchronization between live streaming rooms. For example, to enhance the user interaction experience of live streaming applications, various mini-game portals are set up on the live streaming room page. Users can enter the game room by clicking on the game portal. In live streaming scenarios with multiple regional service clusters, when users from different regions enter the same game room to play, all relevant operation data generated by each user terminal during the game must be returned to the designated server for processing. The designated server then synchronizes all operation data to each user terminal, thereby synchronizing the game information displayed on the interfaces of each user terminal in the same game room.

[0003] However, the method of returning the operation data to the designated server for data synchronization tends to increase the delay of information display and affect the user experience. Summary of the Invention

[0004] The embodiments of the present application provide a live broadcast room data processing method and system, which can improve the synchronization efficiency of live broadcast room operation data and solve the technical problem of excessive delay in live broadcast room data synchronization.

[0005] In a first aspect, an embodiment of the present application provides a method for processing live broadcast room data, comprising:

[0006] After the current user connects to the current server and enters the target virtual room, the user ID of the current user, the server address of the current server, and the room ID of the target virtual room are bound to create a mapping relationship, and the mapping relationship is stored in the database. The database is used to store the mapping relationships constructed by each server in the region;

[0007] Receive the current user's operation data and generate the operation display results based on the operation data;

[0008] Return the operation display result to the current user terminal, and synchronize the operation display result to the target virtual room based on the mapping relationship, and connect to the associated user terminal of the associated user ID of the corresponding server address;

[0009] Write the operation data to the specified server cluster for statistics and settlement of data results.

[0010] In a second aspect, an embodiment of the present application provides a live broadcast room data processing system, including:

[0011] Server clusters in multiple regions and databases configured for the corresponding server clusters, the server clusters comprising multiple servers;

[0012] The server is used to bind the user ID of the current user, the server address of the current server and the room ID of the target virtual room to create a mapping relationship after the current user connects to the current server and enters the target virtual room, and store the mapping relationship in the database;

[0013] The database is used to store the mapping relationship between each server in the region;

[0014] The server is also used to receive the operation data of the current user terminal, generate the operation display result according to the operation data, return the operation display result to the current user terminal, and synchronize the operation display result to the target virtual room based on the mapping relationship, and connect the associated user terminal of the associated user ID of the corresponding server address; write the operation data to the specified server cluster in the server cluster for statistics and settlement of data results.

[0015] In a third aspect, an embodiment of the present application provides a live broadcast room data processing device, comprising:

[0016] A binding module is used to bind the user ID of the current user terminal, the server address of the current server, and the room ID of the target virtual room to establish a mapping relationship after the current user terminal connects to the current server and enters the target virtual room, and store the mapping relationship in a database, wherein the database is used to store the mapping relationship established by each server in the corresponding area;

[0017] A generating module, configured to receive the operation data of the current user terminal and generate an operation display result according to the operation data;

[0018] a synchronization module, configured to return the operation display result to the current user terminal, and synchronize the operation display result to the associated user terminal of the associated user ID of the corresponding server address in the target virtual room based on the mapping relationship;

[0019] The statistics module is used to write the operation data to a designated server cluster for statistics and settlement of data results.

[0020] In a fourth aspect, an embodiment of the present application provides a live broadcast room data processing device, including:

[0021] memory and one or more processors;

[0022] The memory is used to store one or more programs;

[0023] When the one or more programs are executed by the one or more processors, the one or more processors implement the live broadcast room data processing method as described in the first aspect.

[0024] In a fifth aspect, an embodiment of the present application provides a storage medium containing computer-executable instructions, which, when executed by a computer processor, are used to execute the live broadcast room data processing method as described in the first aspect.

[0025] The embodiment of the present application, after the current user terminal is connected to the current server and enters the target virtual room, binds the user ID of the current user terminal, the server address of the current server and the room ID of the target virtual room to build a mapping relationship, and stores the mapping relationship in a database, which is used to store the mapping relationship built by each server in the region; receives the operation data of the current user terminal, generates an operation display result according to the operation data; returns the operation display result to the current user terminal, and synchronizes the operation display result to the target virtual room based on the mapping relationship, connects the associated user terminal of the associated user ID of the corresponding server address; writes the operation data to the designated server cluster for data result statistics and settlement. By adopting the above technical means, the operation data of the same virtual room is displayed synchronously in real time, and the designated server cluster performs statistics and settlement of the data results, thereby ensuring the efficiency of data synchronization display while uniformly performing statistics and settlement of data results, reducing data synchronization delay and optimizing user experience. BRIEF DESCRIPTION OF THE DRAWINGS

[0026] Figure 1 This is a flow chart of a live broadcast room data processing method provided by an embodiment of the present application;

[0027] Figure 2 This is a structural diagram of a live broadcast room data processing system provided by an embodiment of the present application;

[0028] Figure 3 This is a flowchart of game map synchronization in an embodiment of the present application;

[0029] Figure 4 This is a flowchart of the synchronization of operation display results provided by the embodiment of the present application;

[0030] Figure 5 This is a structural diagram of a live broadcast room data processing device provided by an embodiment of the present application;

[0031] Figure 6 It is a structural diagram of a live broadcast room data processing device provided in an embodiment of the present application. DETAILED DESCRIPTION

[0032] In order to make the purpose, technical solutions and advantages of the present application clearer, the specific embodiments of the present application are further described in detail below in conjunction with the accompanying drawings. It is understood that the specific embodiments described herein are only used to explain the present application and are not intended to limit the present application. It should also be noted that, for ease of description, only parts related to the present application, not all of the contents, are shown in the accompanying drawings. Before discussing the exemplary embodiments in more detail, it should be mentioned that some exemplary embodiments are described as processes or methods depicted as flow charts. Although the flow charts describe each operation (or step) as a sequential process, many of the operations therein can be implemented in parallel, concurrently or simultaneously. In addition, the order of the operations can be rearranged. The process can be terminated when its operation is completed, but can also have additional steps not included in the accompanying drawings. The process can correspond to a method, function, procedure, subroutine, subprogram, etc.

[0033] The present application provides a method for processing live broadcast room data, which aims to synchronize the results of operation display according to the operation data by storing the user ID in the virtual room, and at the same time, perform statistics and settlement on the data results of the operation data. In this way, the data synchronization delay of the live broadcast room is reduced and the user experience is optimized. For the existing live broadcast data synchronization method, the relevant operation data generated by the live broadcast room needs to be returned to the designated server for consumption processing, and the statistics of the data results are completed. Then, the designated server synchronizes all the operation data to each user terminal, thereby synchronizing the information displayed on the interface of each user terminal in the same virtual room. Since the operation data needs to be returned to the designated server for consumption statistics before information synchronization is performed, the delay of data synchronization display will be increased, thereby affecting the user experience. Based on this, a method for processing live broadcast room data according to an embodiment of the present application is provided to solve the technical problem of excessive data synchronization delay in existing live broadcast rooms.

[0034] Example:

[0035] Figure 1 A flowchart of a live broadcast room data processing method provided in an embodiment of the present application is provided. The live broadcast room data processing method provided in this embodiment can be executed by a live broadcast room data processing device. The live broadcast room data processing device can be implemented through software and / or hardware. The live broadcast room data processing device can be composed of two or more physical entities or a single physical entity. Generally speaking, the live broadcast room data processing device can be a processing device such as a server host.

[0036] The following description is made by taking the server as the main body of the live broadcast room data processing method as an example. Figure 1 , the live broadcast room data processing method specifically includes:

[0037] S110. After the current user terminal connects to the current server and enters the target virtual room, the user ID of the current user terminal, the server address of the current server and the room ID of the target virtual room are bound to build a mapping relationship, and the mapping relationship is stored in the database. The database is used to store the mapping relationships built by each server in the area.

[0038] Exemplarily, the live broadcast room data processing method of the embodiment of the present application is mainly used to synchronize data display of the network view page embedded in the client live broadcast room. Taking the live broadcast room mini-game as an example, users can enter the live broadcast room game through the entrance provided by the live broadcast room page. In the live broadcast room, the game entrance is generally suspended on the live broadcast room page in the form of a floating window. After the user clicks the game entrance button, the game will be displayed in a half-screen page / full-screen page. At this time, the live broadcast room page is displayed as a small window. Users can create multi-person rooms in the game, and a game can be started when the number of players reaches 2 or more. During the game process, for the relevant operation data generated by the user, the live broadcast data processing method of the embodiment of the present application is implemented on the server of the live broadcast room data processing system to synchronize the data. The game results are counted and settled through the game operation data, thereby completing the synchronous display of information of a game.

[0039] Since users can open mini-games in a floating window within the livestreaming room, the mini-games appear as half-screen or full-screen pages on the livestreaming room page, allowing users to play games while watching the livestream. By creating multiplayer rooms, the pain points of single-player games can be addressed, expanding web games into multiplayer formats, increasing user interactivity in the livestreaming room and making the livestream more engaging.

[0040] It should be noted that the live broadcast room data processing method of the embodiments of this application is intended to synchronize the display of data generated by the live broadcast room. This can include synchronized display of game data in the live broadcast room, synchronized display of data in the live broadcast room chat room, etc. The embodiments of this application do not specify or limit the specific data synchronization scenarios, and will not be elaborated on here.

[0041] Specifically, refer to Figure 2, provides a live broadcast room data processing system of an embodiment of the present application, server clusters 11 in multiple regions and a database 12 set corresponding to the server clusters 11, the server cluster 11 includes multiple servers; the server is used to bind the user ID of the current user terminal, the server address of the current server and the room ID of the target virtual room to build a mapping relationship after the current user terminal connects to the current server and enters the target virtual room, and store the mapping relationship in the database 12; the database 12 is used to store the mapping relationship built by each server in the corresponding area; the server is also used to receive the operation data of the current user terminal, generate an operation display result according to the operation data, return the operation display result to the current user terminal, and synchronize the operation display result to the target virtual room based on the mapping relationship, and connect the associated user terminal of the associated user ID of the corresponding server address; write the operation data into the specified server cluster 11 in the server cluster 11 for statistics and settlement of data results.

[0042] For example, Figure 2 As shown, the server clusters of the embodiments of the present application can be server clusters deployed in Asia, America, Europe, and other regions. Each server cluster includes multiple servers to achieve distributed data processing and improve the system's fault tolerance. A database cluster is also set up for each region. The database cluster can be composed of Redis-based database nodes and cache nodes for storing relevant data.

[0043] Optionally, the implementation of this application also selects a designated server cluster from multiple server clusters as the main server cluster for data statistics and settlement of operation data. For example, in a live game scenario, the server cluster of the Asia region is used as the designated server cluster. The operation data generated by the game is first synchronized with the operation display results. At the same time, the operation data is sent from the current server to the server cluster of the Asia region. The server cluster of the Asia region performs unified statistics and settlement, thereby facilitating the consumption and processing of game-related operation data. At the same time, the operation display results are directly synchronized by the current server, which can also reduce the synchronization delay of the operation display results and optimize the user experience.

[0044] Furthermore, the embodiment of the present application uses the Kafka message queue to process the message of the designated server cluster. The operation data generated by each server sent to the server cluster will be written into the Kafka message queue, and then the designated server cluster (such as Figure 2 The Central Asia server cluster reads the operational data one by one for data statistics and settlement. This improves data processing efficiency and ensures the timeliness of data processing.

[0045] Optionally, the server of the embodiment of the present application is connected to the current user end based on the full-duplex communication protocol of TCP, and transmits data through the TCP channel. Different from the traditional client adopting the http request for data transmission, the embodiment of the present application adopts the connection method based on the full-duplex communication protocol of TCP. Each interaction of the user is optimized from the original handshake and data transmission method to the data transmission method based on the full-duplex communication protocol of TCP. After the first handshake establishes the TCP channel, all subsequent information is transmitted through the TCP channel, which can further reduce the data transmission delay. Similarly, the server side can also actively push messages to the client side based on the above-mentioned full-duplex communication protocol based on TCP. The server side manages users according to the virtual room dimension, monitors the operations of each virtual room user, and broadcasts the operation display results of the operation data to all users in the room, thereby realizing the synchronous display of data of all users in the virtual room.

[0046] For example, in a live broadcast room game scenario, after the user clicks on the game entrance on the live broadcast room page to enter the game, he creates a game room in the game. At this time, the user end will generate a virtual room creation request to the server cluster in each region.

[0047] Correspondingly, each server cluster is used to receive a virtual room creation request from the user terminal, and return feedback data based on the virtual room creation request, so that the user terminal selects a server in the corresponding server cluster to connect to according to the reception time of each feedback data.

[0048] It is understandable that the reception time of feedback data reflects the communication quality between the current user terminal and the server clusters in each region. Choosing to connect to the corresponding server cluster to create a game room can ensure the communication quality between the user terminal and the server cluster and reduce data synchronization delay.

[0049] Specifically, after a user enters the game, the web frontend loads all necessary frontend components and then initiates a virtual room creation request to the Ping interfaces provided by each server cluster (Asia, Europe, and America). Based on the time it takes for the server cluster interface to return data, three requests are made, and the average is calculated as the user's average ping value in each region. The server cluster with the lowest ping value is then automatically selected to create the game room. At the same time, a server in the server cluster is selected to connect to process the user's operation data in the virtual room.

[0050] Optionally, the client can also provide a list of created virtual rooms for the user to connect to. Based on the user's average ping value in each region, virtual rooms with good communication quality are recommended for the user to join. After the user enters a virtual room, a server in the corresponding server cluster is automatically assigned to the current user.

[0051] It is understood that when a user joins or creates a virtual room, the user terminal establishes a TCP full-duplex communication protocol connection with a server in the server cluster corresponding to the virtual room. The server connecting to the user terminal then binds the user ID of the current user terminal, the server address of the current server, and the room ID of the target virtual room to create a mapping relationship, which is then stored in the database. When other users subsequently enter the same room, the mapping relationship is similarly constructed using the above method, with the room ID used as an index to facilitate mapping relationship queries. It is understood that different user terminals corresponding to the same virtual room can connect to different servers in the same server cluster, with their operational data processed separately by these different servers.

[0052] Furthermore, when the number of online users in the virtual room meets the game requirements, the user can start the game. At this time, the user's start game request triggers the synchronization of game map information of each user terminal in the current virtual room. Figure 3 , the game map synchronization process includes:

[0053] S1101: When it is determined that the game start request of the current user terminal is the first game start request corresponding to the target virtual room, generate a game map based on the game start request of the current user terminal;

[0054] S1102: Return the game map to the current user terminal and store the game map in the database to synchronize the game map to the target virtual room and connect to the associated user terminal of the associated user ID of the corresponding server address.

[0055] For example, when all users in the virtual room are ready, all users can initiate a game start request to the connected server through their own user terminal. After receiving the request, each server will generate a game map and store it in the database in a pre-registered manner. Since the game maps all come from the same virtual room, only the first game map successfully stored in the database is effective, and other maps are invalid. For servers that successfully pre-register, the game map can be directly returned to the client connected to itself. For servers that fail to pre-register, the map generated by itself is discarded and the map in the database is used instead to return to the user terminal connected to itself. At this time, all users in the virtual room receive the same game map, thereby realizing the synchronous display of the game map and ensuring the game effect.

[0056] S120: Receive operation data from the current user terminal and generate an operation display result according to the operation data;

[0057] S130: Return the operation display result to the current user terminal, and synchronize the operation display result to the target virtual room based on the mapping relationship, and connect to the associated user terminal of the associated user ID of the corresponding server address.

[0058] After a virtual room is created, any user-side operations within the virtual room must be synchronized with other users in the room. For example, after entering a live game, a user can purchase game equipment. This action generates relevant operation data based on the user's game operation. This operation data is sent to the corresponding server to which the current user is connected. The server then generates corresponding game display results based on this game operation data, such as the game equipment view and the number of game equipment. This display result is then sent to the current client for display.

[0059] Furthermore, to synchronize game data, the game operation data generated by the current user's client must be synchronized with the client's of other users in the current virtual room. Therefore, the server for the current user's client stores the operation display results in a database. It then queries the database for pre-built mappings, fetching the user IDs and corresponding server addresses of each client associated with the current virtual room ID, to synchronize the operation display results.

[0060] Reference Figure 4 The operation display result synchronization process includes:

[0061] S1301: Query a mapping relationship based on the room ID of the target virtual room to determine the associated user ID in the target virtual room;

[0062] S1302: Synchronize the operation and display the result to the associated user terminal corresponding to the associated user ID based on the server address bound to the associated user ID.

[0063] As you can understand, the mapping relationship records all user IDs in the same virtual room and the server addresses to which their clients are connected. The virtual room ID is then used to query the associated clients in the same virtual room as the current client, as well as the server addresses to which they are connected. The current server then sends the operation display results to each server address. In this way, the operation display results are sent to each associated client via the server to which they are connected, achieving synchronization of the operation display results.

[0064] Specifically, the server of the current user terminal may broadcast the operation display result to the server address bound to each associated user ID, so as to send the operation display result to the associated user terminal of each associated user ID through the corresponding server.

[0065] The embodiment of the present application adopts a distributed server deployment method, and users can directly connect to the server through the server domain name address, thereby ensuring high availability and scalability of the service. In order to solve the situation where multiple users in a single room are not connected to the same service node due to distributed server deployment, the redis database is introduced so that when each user terminal establishes a connection with the server, the user ID and the server address to which the user terminal is connected will be bound to establish a mapping relationship. When a single service node triggers a broadcast event, the user ID of the associated user terminal in the virtual room is obtained through the redis database, and the server addresses corresponding to all user IDs are pulled. Each service node is asynchronously notified, and then each server broadcasts to its own user terminal, thereby achieving message synchronization.

[0066] In one embodiment, after detecting that the current user terminal is disconnected and reconnected, the server queries the mapping relationship according to the user ID of the current user terminal, extracts the corresponding target virtual room operation display result based on the mapping relationship, and returns it to the current user terminal.

[0067] Specifically, based on pre-built mappings and the operation display results stored in the database, if a user client loses connection, they can reconnect to the same virtual room ID. At this point, the client may be connected to a different server than before. To ensure data synchronization, the newly connected server only needs to retrieve all operation display results for the virtual room ID from the database and then synchronize the operation data of the reconnected client, thus completing the disconnection and reconnection operation, optimizing the user's live room game experience.

[0068] S140: Write the operation data to the designated server cluster for statistics and settlement of data results.

[0069] On the other hand, since the aforementioned servers only synchronize the display results of operations, statistics and settlement of operation data require that the operation data be written to a designated server cluster for consumption. This data is written to the designated server cluster via the Kafka message queue by sequentially placing the operation data into a pre-built Kafka message queue.

[0070] For example, for a game equipment purchase operation in a live game, the operation display result is generated based on the above S120-S130 and the display result is returned to the user end for display. At this time, the operation data has not been consumed yet, and statistical processing is required to facilitate the subsequent settlement of the game results. Therefore, the operation data is asynchronously written into the Kafka message queue, and the designated server cluster consumes and processes it uniformly to perform corresponding business operations (such as game equipment, points statistics, etc.). Finally, the result of a game is uniformly generated by the designated server cluster and returned to each user end after the game ends. It is understandable that since the server of each user end does not directly consume the operation data, it only generates the operation display result based on the operation data, which can reduce the data statistics and settlement process, thereby improving the efficiency of data synchronization and reducing the delay of data synchronization display.

[0071] Optionally, embodiments of the present application can also establish monitoring objects on the user side or server side, objectify the data in the game, and directly synchronize data based on changes in the monitoring objects. This can reduce the consumption during the game rendering process and reduce the delay caused by game rendering on the client side.

[0072] In the above, after the current user terminal connects to the current server and enters the target virtual room, the user ID of the current user terminal, the server address of the current server and the room ID of the target virtual room are bound to construct a mapping relationship, and the mapping relationship is stored in the database, which is used to store the mapping relationship constructed by each server in the region; the operation data of the current user terminal is received, and the operation display result is generated according to the operation data; the operation display result is returned to the current user terminal, and the operation display result is synchronized to the target virtual room based on the mapping relationship, and the associated user terminal of the associated user ID of the corresponding server address is connected; the operation data is written to the designated server cluster for data result statistics and settlement. By adopting the above technical means, the operation data of the same virtual room is synchronously displayed in real time, and the data results are statistically and settled by the designated server cluster, so that the efficiency of data synchronization display is guaranteed while the data results are uniformly counted and settled, the data synchronization delay is reduced, and the user experience is optimized.

[0073] Based on the above embodiments, Figure 5 This is a structural diagram of a live broadcast room data processing system provided by this application. Figure 5 The live broadcast room data processing system provided in this embodiment specifically includes: a binding module 21, a generation module 22, a synchronization module 23 and a statistics module 24.

[0074] The binding module 21 is used to bind the user ID of the current user terminal, the server address of the current server, and the room ID of the target virtual room to establish a mapping relationship after the current user terminal connects to the current server and enters the target virtual room, and store the mapping relationship in a database. The database is used to store the mapping relationship established by each server in the corresponding area;

[0075] The generating module 22 is used to receive the operation data of the current user terminal and generate the operation display result according to the operation data;

[0076] The synchronization module 23 is used to return the operation display result to the current user terminal, and synchronize the operation display result to the target virtual room based on the mapping relationship, and connect to the associated user terminal of the associated user ID of the corresponding server address;

[0077] The statistics module 24 is used to write the operation data into a designated server cluster for statistics and settlement of data results.

[0078] Specifically, the binding module 21 is used to generate a game map based on the start game request of the current user terminal when it is determined that the start game request of the current user terminal is the first start game request of the corresponding target virtual room; return the game map to the current user terminal, and store the game map in the database to synchronize the game map to the target virtual room, and connect the associated user terminal of the associated user ID of the corresponding server address.

[0079] The synchronization module 23 is used to query the mapping relationship according to the room ID of the target virtual room, determine the associated user ID in the target virtual room, and synchronize the operation display result to the associated user terminal corresponding to the associated user ID based on the server address bound to the associated user ID.

[0080] The operation display result is broadcast to the server address bound to each associated user ID, so as to send the operation display result to the associated user terminal of each associated user ID through the corresponding server.

[0081] The statistics module 24 is used to sequentially put the operation data into a pre-built Kafka message queue, so as to write the operation data into a designated server cluster based on the Kafka message queue.

[0082] In addition, the live broadcast room data processing system is also used to query the mapping relationship based on the user ID of the current user terminal after detecting that the current user terminal is disconnected and reconnected, extract the corresponding target virtual room operation display result based on the mapping relationship and return it to the current user terminal.

[0083] In the above, after the current user terminal connects to the current server and enters the target virtual room, the user ID of the current user terminal, the server address of the current server and the room ID of the target virtual room are bound to construct a mapping relationship, and the mapping relationship is stored in the database, which is used to store the mapping relationship constructed by each server in the region; the operation data of the current user terminal is received, and the operation display result is generated according to the operation data; the operation display result is returned to the current user terminal, and the operation display result is synchronized to the target virtual room based on the mapping relationship, and the associated user terminal of the associated user ID of the corresponding server address is connected; the operation data is written to the designated server cluster for data result statistics and settlement. By adopting the above technical means, the operation data of the same virtual room is synchronously displayed in real time, and the data results are statistically and settled by the designated server cluster, so that the efficiency of data synchronization display is guaranteed while the data results are uniformly counted and settled, the data synchronization delay is reduced, and the user experience is optimized.

[0084] The live broadcast room data processing system provided in the embodiment of the present application can be used to execute the live broadcast room data processing method provided in the above embodiment, and has corresponding functions and beneficial effects.

[0085] Based on the above practical example, the present application embodiment also provides a live broadcast room data processing device, referring to Figure 6 The live broadcast room data processing device includes: a processor 31, a memory 32, a communication module 33, an input device 34 and an output device 35. The memory 32 is a computer-readable storage medium that can be used to store software programs, computer executable programs and modules, such as the program instructions / modules corresponding to the live broadcast room data processing method described in any embodiment of the present application (for example, the binding module, generation module, synchronization module and statistics module in the live broadcast room data processing system). The communication module 33 is used for data transmission. The processor 31 executes various functional applications and data processing of the device by running the software programs, instructions and modules stored in the memory, that is, realizes the above-mentioned live broadcast room data processing method. The input device 34 can be used to receive input digital or character information, and generate key signal input related to the user settings and function control of the device. The output device 35 may include a display device such as a display screen. The live broadcast room data processing device provided above can be used to execute the live broadcast room data processing method provided in the above-mentioned embodiment, and has corresponding functions and beneficial effects.

[0086] On the basis of the above embodiments, the embodiments of the present application further provide a storage medium containing computer-executable instructions, wherein the computer-executable instructions are used to execute a live broadcast room data processing method when executed by a computer processor, and the storage medium can be any of various types of memory devices or storage devices. Of course, the storage medium containing computer-executable instructions provided in the embodiments of the present application is not limited to the live broadcast room data processing method described above, and can also execute related operations in the live broadcast room data processing method provided in any embodiment of the present application.

[0087] The above are only preferred embodiments of the present application and the technical principles employed. The present application is not limited to the specific embodiments described herein, and various obvious changes, readjustments, and substitutions that are possible for those skilled in the art will not depart from the scope of protection of the present application. Therefore, although the present application has been described in more detail through the above embodiments, the present application is not limited to the above embodiments and may include more other equivalent embodiments without departing from the concept of the present application. The scope of the present application is determined by the scope of the claims.

Claims

1. A live broadcast room data processing method, characterized in that: include: After the current user terminal connects to the current server and enters the target virtual room, the user ID of the current user terminal, the server address of the current server, and the room ID of the target virtual room are bound to form a mapping relationship, and the mapping relationship is stored in a database, which is used to store the mapping relationships constructed by each server in the corresponding area; Receive operation data from the current user terminal, and generate an operation display result based on the operation data; Returning the operation display result to the current user terminal, querying the mapping relationship according to the room ID of the target virtual room, determining the associated user ID in the target virtual room, and synchronizing the operation display result to the associated user terminal corresponding to the associated user ID based on the server address bound to the associated user ID; The operation data is written to the designated server cluster for statistics and settlement of data results.

2. The live broadcast room data processing method according to claim 1, characterized in that: The step of synchronizing the operation display result to the associated user terminal corresponding to the associated user ID based on the server address bound to the associated user ID includes: The operation display result is broadcasted to the server address bound to each associated user ID, so as to send the operation display result to the associated user terminal of each associated user ID through the corresponding server.

3. The live broadcast room data processing method according to claim 1, characterized in that: Writing the operation data into a designated server cluster includes: The operation data are sequentially placed into a pre-built Kafka message queue, so as to write the operation data into a designated server cluster based on the Kafka message queue.

4. The live broadcast room data processing method according to any one of claims 1 to 3, characterized in that: Also includes: When it is determined that the game start request of the current user terminal is the first game start request corresponding to the target virtual room, generating a game map based on the game start request of the current user terminal; Return the game map to the current user terminal and store the game map in the database to synchronize the game map to the target virtual room and connect to the associated user terminal of the associated user ID of the corresponding server address.

5. The live broadcast room data processing method according to claim 1, characterized in that: Also includes: After detecting that the current user terminal is disconnected and reconnected, the mapping relationship is queried according to the user ID of the current user terminal, and the operation display result of the corresponding target virtual room is extracted based on the mapping relationship and returned to the current user terminal.

6. A live broadcast room data processing system, characterized in that: include: Server clusters in multiple regions and databases corresponding to the server clusters, wherein the server clusters include multiple servers; The server is configured to bind the user ID of the current user, the server address of the current server, and the room ID of the target virtual room to create a mapping relationship after the current user connects to the current server and enters the target virtual room, and store the mapping relationship in a database; The database is used to store the mapping relationship constructed by each server in the region; The server is also used to receive operation data from the current user terminal, generate an operation display result based on the operation data, return the operation display result to the current user terminal, query the mapping relationship based on the room ID of the target virtual room, determine the associated user ID in the target virtual room, and synchronize the operation display result to the associated user terminal corresponding to the associated user ID based on the server address bound to the associated user ID; write the operation data into a designated server cluster in the server cluster for statistics and settlement of data results.

7. The live broadcast room data processing system according to claim 6, characterized in that: Each of the server clusters is used to receive a virtual room creation request from a user terminal, and return feedback data based on the virtual room creation request, so that the user terminal selects the server of the corresponding server cluster to connect to according to the reception time of each feedback data.

8. The live broadcast room data processing system according to claim 6, characterized in that: The server is connected to the current user terminal based on the full-duplex communication protocol of TCP, and performs data transmission through the TCP channel.

9. A live broadcast room data processing device, characterized in that: include: A binding module is used to bind the user ID of the current user terminal, the server address of the current server, and the room ID of the target virtual room to establish a mapping relationship after the current user terminal connects to the current server and enters the target virtual room, and store the mapping relationship in a database, wherein the database is used to store the mapping relationship established by each server in the corresponding area; A generating module, configured to receive the operation data of the current user terminal and generate an operation display result according to the operation data; a synchronization module, configured to return the operation display result to the current user terminal, query the mapping relationship according to the room ID of the target virtual room, determine the associated user ID in the target virtual room, and synchronize the operation display result to the associated user terminal corresponding to the associated user ID based on the server address bound to the associated user ID; The statistics module is used to write the operation data into a designated server cluster for statistics and settlement of data results.

10. A live broadcast room data processing device, characterized in that: include: memory and one or more processors; The memory is used to store one or more programs; When the one or more programs are executed by the one or more processors, the one or more processors implement the live broadcast room data processing method as described in any one of claims 1-5.

11. A storage medium containing computer-executable instructions, characterized in that: When executed by a computer processor, the computer executable instructions are used to execute the live broadcast room data processing method as described in any one of claims 1-5.

Citation Information

Patent Citations

  • Interaction method and related device

    CN111327914A

  • Content synchronization server and content synchronization method using motion matching

    WO2014123299A1