Universal ranking list setting method and device based on user interaction, electronic equipment, readable storage medium and computer program product
By setting dynamic configuration information in user interaction and providing expansion interfaces, the problem of inefficient development of rankings in the existing technology is solved, flexible configuration and real-time update of rankings are realized, and R&D efficiency and user experience are improved.
Patent Information
- Application Number
- CN202411739129.4
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-11-29
- Publication Date
- 2025-03-21
AI Technical Summary
When the existing technology processes and displays rankings in user interaction, it requires a lot of time and effort to customize development, resulting in low R&D efficiency and high time cost.
By setting dynamic configuration information, dynamic configuration information of user interaction is obtained, interactive data is obtained from the data source based on this information, and ranking data is generated. At the same time, a first expansion interface and a second expansion interface are provided, allowing flexible configuration and update of ranking data.
It realizes real-time modification and update of ranking related information without interrupting services, reduces the developer's customized development workload, and improves the research and development efficiency and flexibility of user interaction rankings.
Smart Images

Figure CN119656602A_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of software user interaction management, and in particular, to a method, device, electronic device, readable storage medium and computer program for setting a universal ranking list based on user interaction. Background Art
[0002] The display of rankings for user interactions plays a vital role in user interaction planning. Various types of user interactions usually require the display of ranking information. For example, in various gift-giving rankings, displaying the ranking of gift-giving rankings can not only stimulate the competitive awareness of participants, but also significantly enhance the sense of superiority of top-ranked users, thereby effectively driving the overall revenue of user interactions.
[0003] The processing and display of user interaction list data is a frequent and necessary task. In actual operation, each user interaction requires a lot of time and effort to compile and process list-related data. These tasks include but are not limited to data collection, organization, sorting, and final display. Due to the diversity of user interaction forms and the differences in list requirements, these tasks often cannot simply reuse previous results, but require customized development for each user interaction. This undoubtedly increases the workload of R&D and reduces overall work efficiency.
[0004] In order to improve the efficiency of user interaction ranking research and development and reduce unnecessary time costs, we urgently need to develop a universal user interaction ranking backend data return solution. The core of this solution is that through high modularity and configurability, the backend can return ranking data in a standardized way, and the frontend can display it flexibly and efficiently based on this data. Summary of the invention
[0005] In order to solve the existing technical problems, the present application provides a general method, device, electronic device, readable storage medium and computer program product for setting a ranking list based on user interaction.
[0006] In a first aspect, an embodiment of the present application provides a general method for setting a ranking list based on user interaction, wherein the user interaction is set with a unique identification code, and the method steps specifically include:
[0007] S1: obtaining dynamic configuration information of user interaction through a unique identification code, the dynamic configuration information includes the following fields: unique identification code, user interaction name, open region information, start time and end time;
[0008] S2: Obtaining interaction data based on user interaction from a data source based on dynamic configuration information;
[0009] S3: Generate ranking data based on the interaction data and ranking-related information stored in the dynamic configuration information. The fields in the ranking data include user ID, avatar, name, points, ranking, and the difference in points from the previous user.
[0010] Among them, dynamic configuration information supports real-time modification and updating.
[0011] Optionally, a first extension interface is set based on step S2, and the first extension interface is configured to: be executed before step S2 is executed, cover the execution of step S2, or be executed after step S2 is executed; the first extension interface is used to add, modify or delete field information and data information in the interaction data based on dynamic configuration information to update part or all of the data in the interaction data.
[0012] Optionally, a second extension interface is provided based on step S3, and the second extension interface is configured to: cover the execution of step S3 or execute after the execution of step S3 is completed, and the second extension interface is used to reorder and update the ranking data based on the interaction data and related information of the ranking list.
[0013] Optionally, step S2 includes:
[0014] Acquire at least one data source according to the configuration information;
[0015] Based on the type of the data source, using a data access method corresponding to the type of the data source, respectively obtaining part of the interaction data from at least one data source;
[0016] Aggregate partial interaction data into interaction data.
[0017] Optionally, the data source includes: a relational database, a NoSQL database, and an in-memory database.
[0018] Optionally, the in-memory database includes redis.
[0019] Optionally, the interactive data is configured with an update mechanism to update the interactive data at preset intervals to ensure the real-time and accuracy of the interactive data.
[0020] Optionally, the update mechanism is to receive data through message event kafka and update the interaction data.
[0021] In a second aspect, an embodiment of the present application provides a general device for setting a ranking list based on user interaction, wherein the user interaction is provided with a unique identification code, and the device specifically includes:
[0022] A configuration information acquisition module is configured to acquire configuration information of user interaction through a unique identification code;
[0023] An interaction data acquisition module, configured to acquire interaction data based on user interaction from a data source based on configuration information;
[0024] A ranking data acquisition module is configured to generate ranking data based on the interaction data and ranking related information stored in the dynamic configuration information, wherein the fields in the ranking data include user ID, avatar, name, points, ranking, and the difference in points from the previous user;
[0025] Optionally, it also includes a first extended interface execution module, which is configured to: execute before the execution of the interactive data acquisition module, overwrite the execution of the interactive data acquisition module, or execute after the execution of the interactive data acquisition module is completed; the first extended interface execution module is used to add, modify or delete field information and data information in the interactive data based on dynamic configuration information to update part or all of the data in the interactive data.
[0026] Optionally, it also includes a second extended interface execution module, which is configured to: cover the execution of the ranking data acquisition module or execute after the ranking data acquisition module is executed, and the second extended interface execution module is used to reorder and update the ranking data based on the interaction data and related information of the ranking list.
[0027] In a third aspect, an embodiment of the present application provides an electronic device, comprising a bus, a transceiver, a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the transceiver, the memory, and the processor are connected via a bus, and when the computer program is executed by the processor, the steps in the method for setting a general user interaction-based ranking list in any one of the first aspects are implemented.
[0028] In a fourth aspect, an embodiment of the present application provides a computer-readable storage medium having a computer program stored thereon, which, when executed by a processor, implements the steps in the general method for setting a ranking list based on user interaction in any one of the first aspects.
[0029] In a fifth aspect, an embodiment of the present application provides a computer program product, including a computer program, which, when executed by a processor, implements the steps in the general method for setting a ranking list based on user interaction in any one of the first aspects.
[0030] The general method for setting a ranking list based on user interaction in the present application can modify or update the ranking data related to the ranking list in user interaction when the server is operating normally by setting dynamic configuration information; and by setting the first extension interface and the second extension interface, flexible configuration of the user interaction ranking list is achieved, which greatly reduces the workload of custom development by developers. The configuration and update of the user interaction ranking list can be completed by only modifying and updating the configuration file in conjunction with the first extension interface and the second extension interface. BRIEF DESCRIPTION OF THE DRAWINGS
[0031] In order to more clearly illustrate the technical solutions in the embodiments of the present application or the background technology, the drawings required for use in the embodiments of the present application or the background technology will be described below.
[0032] Figure 1 A flowchart of a general method for setting a ranking list based on user interaction provided in an embodiment of the present application is shown.
[0033] Figure 2 A flowchart of a general method for setting a ranking list based on user interaction including a first extended interface provided in an embodiment of the present application is shown.
[0034] Figure 3 A flowchart of a general method for setting a ranking list based on user interaction including a first extension interface and a second extension interface provided in an embodiment of the present application is shown.
[0035] Figure 4 A flow chart of a method for acquiring interactive data based on user interaction from a data source based on dynamic configuration information provided in an embodiment of the present application is shown.
[0036] Figure 5 A specific structural schematic diagram of a general user interaction-based ranking setting device provided in an embodiment of the present application is shown.
[0037] Figure 6 A schematic diagram of the structure of an electronic device showing a general method for setting a ranking list based on user interaction provided in an embodiment of the present application.
[0038] The reference numerals in the figure represent respectively:
[0039] 501: configuration information acquisition module; 502: interaction data acquisition module;
[0040] 503: ranking data acquisition module;
[0041] 1110: bus; 1120: processor; 1130: transceiver;
[0042] 1140: bus interface; 1150: memory; 1160: user interface;
[0043] 1151: operating system; 1152: application program. DETAILED DESCRIPTION
[0044] In the description of the embodiments of the present invention, those skilled in the art should know that the embodiments of the present invention can be implemented as methods, devices, electronic devices, computer-readable storage media, and computer program products. Therefore, the embodiments of the present invention can be specifically implemented in the following forms: complete hardware, complete software (including firmware, resident software, microcode, etc.), a combination of hardware and software. In addition, in some embodiments, the embodiments of the present invention can also be implemented in the form of a computer program product in one or more computer-readable storage media, and the computer-readable storage medium contains computer program code.
[0045] The above-mentioned computer-readable storage medium may adopt any combination of one or more computer-readable storage media. Computer-readable storage media include: electrical, magnetic, optical, electromagnetic, infrared or semiconductor systems, devices or devices, or any combination of the above. More specific examples of computer-readable storage media include: portable computer disks, hard disks, random access memories (RAM), read-only memories (ROM), erasable programmable read-only memories (EPROM), flash memories, optical fibers, compact disk read-only memories (CD-ROM), optical storage devices, magnetic storage devices or any combination of the above. In an embodiment of the present invention, a computer-readable storage medium may be any tangible medium containing or storing a program, which may be used by or in combination with an instruction execution system, device, or device.
[0046] The computer program code contained in the above-mentioned computer-readable storage medium can be transmitted using any appropriate medium, including: wireless, wire, optical cable, radio frequency (RF) or any suitable combination thereof.
[0047] The computer program code for performing the operation of the embodiments of the present invention can be written in assembly instructions, instruction set architecture (ISA) instructions, machine instructions, machine-related instructions, microcode, firmware instructions, state setting data, integrated circuit configuration data, or in one or more programming languages or a combination thereof, wherein the programming language includes an object-oriented programming language, such as Java, Smalltalk, C++, and also includes a conventional procedural programming language, such as C language or a similar programming language. The computer program code can be executed completely on the user's computer, partially on the user's computer, as an independent software package, partially on the user's computer, partially on a remote computer, and completely on a remote computer or server. In the case of a remote computer, the remote computer can be connected to the user's computer or to an external computer through any type of network, including a local area network (LAN) or a wide area network (WAN).
[0048] The embodiments of the present invention describe the provided methods, devices, and electronic devices through flowcharts and / or block diagrams.
[0049] It should be understood that each box in the flowchart and / or block diagram and the combination of boxes in the flowchart and / or block diagram can be implemented by computer-readable program instructions. These computer-readable program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer or other programmable data processing device to produce a machine, and these computer-readable program instructions are executed by a computer or other programmable data processing device to produce a device that implements the functions / operations specified by the boxes in the flowchart and / or block diagram.
[0050] These computer-readable program instructions may also be stored in a computer-readable storage medium that enables a computer or other programmable data processing device to work in a specific manner. In this way, the instructions stored in the computer-readable storage medium produce an instruction device product including functions / operations specified in the blocks in the flowchart and / or block diagram.
[0051] Computer-readable program instructions may also be loaded onto a computer, other programmable data processing apparatus, or other device, so that a series of operational steps are performed on the computer, other programmable data processing apparatus, or other device to produce a computer-implemented process, thereby enabling the instructions executed on the computer or other programmable data processing apparatus to provide a process for implementing the functions / operations specified in the blocks in the flowchart and / or block diagram.
[0052] The embodiments of the present invention are described below in conjunction with the accompanying drawings in the embodiments of the present invention.
[0053] Figure 1FIG. 1 is a flowchart of a general method for setting a ranking list based on user interaction provided by an embodiment of the present invention. Figure 1 As shown, the method comprises the following steps:
[0054] S1: obtaining dynamic configuration information of user interaction through a unique identification code, the dynamic configuration information includes the following fields: unique identification code, user interaction name, open region information, start time and end time;
[0055] S2: Obtaining interaction data based on user interaction from a data source based on dynamic configuration information;
[0056] S3: Generate ranking data based on the interaction data and ranking-related information stored in the dynamic configuration information. The fields in the ranking data include user ID, avatar, name, points, ranking, and the difference in points from the previous user.
[0057] Among them, dynamic configuration information supports real-time modification and updating.
[0058] Step S1: Get the dynamic configuration information of user interaction through the unique identification code. The dynamic configuration information not only includes the basic fields: unique identification code, user interaction name, open area information, start time and end time, but also optionally includes interaction mode selection, data refresh frequency, permission configuration, custom fields and dynamic rule adjustment. Dynamic configuration information supports real-time modification and updating of ranking-related information through the background management system or API interface without restarting the service, that is, whether it is the adjustment of ranking algorithms and display fields, or the increase or decrease of custom fields such as special achievement identification and winning streak, it can take effect immediately without interrupting the game or service operation, greatly improving the flexibility and response speed of the system.
[0059] Step S2: Based on the interaction mode, open region information and data refresh frequency specified in the dynamic configuration information, the interactive data based on user interaction is efficiently obtained from the corresponding data source. Due to the real-time nature of the dynamic configuration information, the selection of data sources and the acquisition of data can also quickly adapt to changes, ensuring the accuracy and timeliness of the data.
[0060] Step S3: Generate ranking data based on the acquired interaction data and ranking-related information stored in the dynamic configuration information. In addition to the user ID, avatar, name, points, ranking, and the difference in points from the previous user, the fields in the ranking data can also dynamically add additional display information based on custom fields, such as special achievement logos, winning streaks, etc., to enhance user experience and interactivity. With the support of dynamic configuration information, the generation of ranking data can also quickly adapt to changes and meet the diverse needs of users.
[0061] The real-time modification and update function of dynamic configuration information enables ranking-related information to quickly adapt to changes in user interactions and take effect without restarting the service. This not only improves the flexibility and response speed of the system, but also provides users with a smoother and more coherent gaming experience. Through real-time updated dynamic configuration information, the system can provide users with a more personalized and rich interactive experience. Whether it is the adjustment of the ranking algorithm or the increase or decrease of custom fields, it can be reflected in the user's game interface in real time, enhancing the user's sense of participation and interactivity. The real-time modification and update function of dynamic configuration information greatly simplifies the operation process. Configuration adjustments can be made without restarting the service, reducing operating costs and risks, and improving operational efficiency and service quality.
[0062] In some embodiments, optionally, Figure 2 As shown, a first extension interface is set based on step S2, and the first extension interface is configured to: be executed before step S2 is executed, cover the execution of step S2, or be executed after step S2 is executed; the first extension interface is used to add, modify or delete field information and data information in the interaction data based on dynamic configuration information to update part or all of the data in the interaction data.
[0063] Based on step S2 (i.e., obtaining interactive data based on user interaction from a data source based on dynamic configuration information), a first extension interface is provided. The first extension interface has a high degree of flexibility and configurability, and is configured to be executed at any one of the following three execution times: executed before step S2 is executed to preprocess or adjust the expected interactive data acquisition logic; overriding step S2 execution, i.e., directly acquiring interactive data through the first extension interface without executing the original step S2 logic; or executed after step S2 is executed to post-process or reprocess the acquired interactive data.
[0064] The functions of the first extension interface include: based on dynamic configuration information (this information can be updated in real time, user-defined or triggered according to specific conditions), flexibly add, modify or delete field information (such as field name, field type, field order, etc.) and data content (such as text, value, date, image, etc.) in the interactive data. This dynamic nature allows the system to adapt to different business needs or user preferences without modifying the core code. The design of the first extension interface takes into account possible future expansion needs, so that new data sources, data formats or interactive logic can be seamlessly integrated into the existing system. At the same time, it is also compatible with different versions of dynamic configuration information to ensure smooth upgrades and backward compatibility of the system. By setting up the first extension interface, users or developers are allowed to dynamically adjust the acquisition and processing logic of interactive data according to actual needs without modifying the core code, which greatly reduces the complexity and cost of system maintenance. The design of the first extension interface takes into account the scalability and compatibility of the system, making it easier to add new functions and upgrade old functions, accelerating the iteration speed of the product and meeting the rapidly changing market needs.
[0065] In some embodiments, optionally, Figure 3As shown, a second expansion interface is provided based on step S3, and the second expansion interface is configured to: cover the execution of step S3 or execute after the execution of step S3 is completed, and the second expansion interface is used to reorder and update the ranking data based on the interactive data and the relevant information of the ranking list. This second expansion interface is intended to provide additional flexibility and scalability to adapt to different application scenarios and user needs. Specifically, the second expansion interface is configured to cover the execution process of step S3, or execute immediately after the execution of step S3 is completed. This configuration method ensures that the system can dynamically adjust the processing flow of ranking data according to different business logics or user preferences. The core function of the second expansion interface is to reorder and update the ranking data based on the interactive data and the relevant information of the ranking list. The interactive data here may include but is not limited to the user's login information, game scores, purchase records, social interactions, etc., which are the basis for generating and updating ranking data. The relevant information of the ranking list may involve the type of ranking list (such as daily ranking, weekly ranking, monthly ranking, etc.), ranking rules (such as sorting by points, time, completion, etc.), and specific reward or punishment mechanisms. In step S3, the system has generated ranking data including fields such as user ID, avatar, name, points, ranking, and the difference in points from the previous user based on the interactive data and the ranking-related information stored in the dynamic configuration information. On this basis, the second extended interface further utilizes this information and externally input interactive data (such as user feedback, system updates, etc.) to refine the ranking data. This may include operations such as adjusting the ranking order, updating the difference in points, adding or deleting specific users, etc., to ensure the accuracy and timeliness of the ranking list. By introducing the second extended interface, the system can flexibly adjust the processing flow of ranking data according to different business needs and user feedback. This helps the system quickly adapt to market changes and improve user experience. The second extended interface also allows the system to provide customized ranking services based on the personalized needs of users. For example, based on the user's interest preferences or historical behavior, a personalized ranking list or recommended content is generated to improve user satisfaction.
[0066] In some embodiments, optionally, Figure 4 As shown, step S2 includes:
[0067] Acquire at least one data source according to the configuration information;
[0068] Based on the type of the data source, using a data access method corresponding to the type of the data source, respectively obtaining part of the interaction data from at least one data source;
[0069] Aggregate partial interaction data into interaction data.
[0070] Step S2, i.e., the data acquisition and integration step, specifically includes the following sub-steps:
[0071] In the embodiment of the present invention, optionally, the configuration information in the configuration file includes: a unique user interaction identifier, and a user interaction start time and a user interaction end time are set for different areas.
[0072] Step S2, i.e., the data acquisition and integration step, specifically includes the following sub-steps:
[0073] First, at least one data source is obtained according to the configuration information. The system first reads the preset configuration information, which contains key information such as the address, name, and type of the data source to be accessed. According to these configuration information, the system automatically locates and connects to at least one data source. The data source can be a database, API interface, file storage, and other types. Then, based on the type of the data source, partial interaction data is obtained from at least one data source using a data access method corresponding to the type of the data source. The system identifies the type of each data source and selects a corresponding data access method based on the type. For example, for a data source of database type, the system uses SQL statements to query; for a data source of API interface type, the system sends HTTP requests to obtain data; for a data source of file storage type, the system reads the file content. Use the corresponding data access method to obtain partial interaction data from each data source. These partial interaction data may be user behavior data, system log data, transaction data, etc., depending on the content of the data source. Finally, the partial interaction data is aggregated into interaction data. The system aggregates and integrates partial interaction data obtained from different data sources to form a complete interaction data set. During the aggregation process, the system performs data cleaning, deduplication, format conversion, and other operations according to the specific situation to ensure the accuracy and consistency of the interaction data. Using the data access method corresponding to the data source type, the required partial interaction data can be quickly and accurately obtained from the data source, reducing the time cost of data acquisition. The system can summarize and integrate partial interaction data obtained from different data sources to form a complete interaction data set, providing a basis for subsequent data analysis and processing. During the data integration process, the system can perform operations such as data cleaning and deduplication, which improves the accuracy and consistency of the data and provides reliable data support for subsequent data applications.
[0074] In some embodiments, optionally, the data source includes: a relational database, a NoSQL database, and an in-memory database. Optionally, the in-memory database includes redis. Among them, the relational database is used to store structured data, supporting complex queries, transaction processing, and data integrity constraints; the NoSQL database is used to store unstructured or semi-structured data, providing flexible data models, horizontal expansion capabilities, and high concurrent access performance; the in-memory database is used to implement high-speed data read and write operations and improve data access efficiency, specifically including but not limited to redis. As an open source, high-performance key-value storage database, redis supports a variety of data types, such as strings, lists, sets, hash tables, and ordered sets, and provides functions such as publish / subscribe, transactions, and script execution. By using an in-memory database, the data access speed is greatly improved, because the data is stored in memory, reducing disk I / O operations, which is very suitable for application scenarios that require fast response and high throughput, such as cache systems, real-time recommendation systems, online game servers, etc. Among them, the data types and advanced functions (such as publish / subscribe, transactions, and Lua script execution) provided by redis enhance the flexibility and scalability of the system, enabling developers to build complex data processing logic and business logic. This data processing system integrates relational databases, NoSQL databases, and in-memory databases (especially redis), which not only improves the efficiency and flexibility of data processing, but also enhances the scalability and maintainability of the system, meeting the diverse needs of data storage, query, analysis, and access in different application scenarios. This diversified data source configuration enables the system to flexibly respond to various complex data processing challenges and provide users with more efficient and reliable data services.
[0075] In some embodiments, optionally, the interactive data is configured with an intelligent update mechanism to ensure the real-time and accuracy of the interactive data. The update mechanism is specifically implemented as follows: the system sets a preset time interval and configures a timer or scheduler to periodically trigger the update operation of the interactive data. Whenever the timer reaches a preset time point, the system will automatically execute the update process to keep the interactive data up to date. Further, the implementation of the update mechanism depends on the message event system Kafka. As a distributed stream processing platform, Kafka has the characteristics of high throughput, low latency, scalability and persistent storage, and is very suitable for the transmission and processing of real-time data streams. In this embodiment, Kafka is used as a message middleware for data update, which is responsible for receiving the latest data from the data source or data producer and passing it to the data consumer (i.e., the interactive data update module in this system). By configuring the preset time interval and the intelligent update mechanism, the system can periodically pull the latest interactive data from Kafka and update it to the system in real time, thereby ensuring the real-time nature of the interactive data. As a message middleware, Kafka has high reliability and persistent storage characteristics, which can ensure that messages are not lost and delivered in order. Therefore, by receiving and updating interactive data through Kafka, the accuracy of the data can be greatly improved. Kafka's distributed architecture and scalability enable the system to easily cope with the growth of data volume and the increase of concurrent access. At the same time, Kafka supports multiple message formats and transmission protocols, allowing the system to flexibly integrate with different data sources and data producers.
[0076] Combination of the above Figures 1 to 4 , describes in detail a general method for setting a ranking list based on user interaction provided by an embodiment of the present invention, which can also be implemented by a corresponding device. Figure 5 , a general device for setting a ranking list based on user interaction provided by an embodiment of the present invention is described in detail.
[0077] Figure 5 FIG. 1 is a schematic diagram showing a general apparatus for setting a ranking list based on user interaction provided by an embodiment of the present invention. Figure 5 As shown, the device comprises:
[0078] The configuration information acquisition module 501 is configured to acquire the configuration information of the user interaction through the unique identification code;
[0079] An interaction data acquisition module 502 is configured to acquire interaction data based on user interaction from a data source based on dynamic configuration information;
[0080] The ranking data acquisition module 503 is configured to generate ranking data based on the interaction data and the ranking related information stored in the dynamic configuration information. The fields in the ranking data include user ID, avatar, name, points, ranking and the difference in points from the previous one.
[0081] In some embodiments, optionally, the device also includes a first extension interface execution module, which is configured to: execute before the execution of the interaction data acquisition module, overwrite the execution of the interaction data acquisition module, or execute after the execution of the interaction data acquisition module is completed; the first extension interface execution module is used to add, modify or delete field information and data information in the interaction data based on dynamic configuration information to update part or all of the data in the interaction data.
[0082] In some embodiments, optionally, the device also includes a second extension interface execution module, which is configured to: override the execution of the ranking data acquisition module or execute after the ranking data acquisition module is executed, and the second extension interface execution module is used to reorder and update the ranking data based on the interaction data and related information of the ranking list.
[0083] In addition, an embodiment of the present invention further provides an electronic device, including a bus, a transceiver, a memory, a processor, and a computer program stored in the memory and executable on the processor. The transceiver, the memory, and the processor are respectively connected via a bus. When the computer program is executed by the processor, the various processes of the embodiment of the above-mentioned general method for setting a ranking list based on user interaction are implemented, and the same technical effect can be achieved. To avoid repetition, it will not be described here.
[0084] For details, see Figure 6 As shown, an embodiment of the present invention further provides an electronic device, which includes a bus 1110 , a processor 1120 , a transceiver 1130 , a bus interface 1140 , a memory 1150 and a user interface 1160 .
[0085] The transceiver 1130 is configured to receive and send data under the control of the processor 1120 .
[0086] In an embodiment of the present invention, the bus architecture (represented by bus 1110), bus 1110 may include any number of interconnected buses and bridges, and bus 1110 connects various circuits including one or more processors represented by processor 1120 and a memory represented by memory 1150.
[0087] Bus 1110 represents one or more of any of several types of bus structures, including a memory bus and memory controller, a peripheral bus, an Accelerate Graphical Port (AGP), a processor, or a local bus using any of a variety of bus architectures. By way of example and not limitation, such architectures include: Industry Standard Architecture (ISA) bus, Micro Channel Architecture (MCA) bus, Enhanced ISA (EISA) bus, Video Electronics Standards Association (VESA), Peripheral Component Interconnect (PCI) bus.
[0088] The processor 1120 may be an integrated circuit chip with signal processing capabilities. In the implementation process, each step of the above method embodiment may be completed by an integrated logic circuit of hardware in the processor or an instruction in the form of software. The above processors include: a general-purpose processor, a central processing unit (CPU), a network processor (NP), a digital signal processor (DSP), an application-specific integrated circuit (ASIC), a field programmable gate array (FPGA), a complex programmable logic device (CPLD), a programmable logic array (PLA), a microcontroller unit (MCU) or other programmable logic devices, discrete gates, transistor logic devices, discrete hardware components. The methods, steps and logic block diagrams disclosed in the embodiments of the present invention may be implemented or executed. For example, the processor may be a single-core processor or a multi-core processor, and the processor may be integrated into a single chip or located in multiple different chips.
[0089] Processor 1120 can be a microprocessor or any conventional processor. The method steps disclosed in conjunction with the embodiments of the present invention can be directly executed by a hardware decoding processor, or by a combination of hardware and software modules in the decoding processor. The software module can be located in a readable storage medium known in the art, such as a random access memory (RAM), a flash memory (FlashMemory), a read-only memory (ROM), a programmable read-only memory (PROM), an erasable programmable read-only memory (EPROM), a register, etc. The readable storage medium is located in a memory, and the processor reads the information in the memory and completes the steps of the above method in conjunction with its hardware.
[0090] The bus 1110 may also connect various other circuits such as peripheral devices, voltage regulators or power management circuits, and the bus interface 1140 provides an interface between the bus 1110 and the transceiver 1130, which are well known in the art. Therefore, the embodiments of the present invention will not be further described.
[0091] The transceiver 1130 may be one element or multiple elements, such as multiple receivers and transmitters, and provides a unit for communicating with various other devices on a transmission medium. For example, the transceiver 1130 receives external data from other devices, and the transceiver 1130 is used to send data processed by the processor 1120 to other devices. Depending on the nature of the computer system, a user interface 1160 may also be provided, such as a touch screen, a physical keyboard, a display, a mouse, a speaker, a microphone, a trackball, a joystick, and a stylus.
[0092] It should be understood that in an embodiment of the present invention, the memory 1150 may further include a memory remotely arranged relative to the processor 1120, and these remotely arranged memories may be connected to the server through a network. One or more parts of the above-mentioned network may be an ad hoc network, an intranet, an extranet, a virtual private network (VPN), a local area network (LAN), a wireless local area network (WLAN), a wide area network (WAN), a wireless wide area network (WWAN), a metropolitan area network (MAN), the Internet, a public switched telephone network (PSTN), a plain old telephone service network (POTS), a cellular telephone network, a wireless network, a wireless fidelity (Wi-Fi) network, and a combination of two or more of the above-mentioned networks. For example, the cellular telephone network and the wireless network can be a Global System for Mobile Communications (GSM) system, a Code Division Multiple Access (CDMA) system, a Worldwide Interoperability for Microwave Access (WiMAX) system, a General Packet Radio Service (GPRS) system, a Wideband Code Division Multiple Access (WCDMA) system, a Long Term Evolution (LTE) system, a LTE Frequency Division Duplex (FDD) system, a LTE Time Division Duplex (TDD) system, an Advanced Long Term Evolution (LTE-A) system, a Universal Mobile Telecommunications (UMTS) system, an Enhanced Mobile Broadband (Enhance Mobile Broadband, eMBB) system, a massive Machine Type of Communication (mMTC) system, an Ultra-Reliable Low Latency Communications (UltraReliable Low Latency Communications, uRLLC) system, etc.
[0093] It should be understood that the memory 1150 in the embodiment of the present invention may be a volatile memory or a non-volatile memory, or may include both a volatile memory and a non-volatile memory. Among them, the non-volatile memory includes: a read-only memory (ROM), a programmable read-only memory (PROM), an erasable programmable read-only memory (EPROM), an electrically erasable programmable read-only memory (EEPROM), or a flash memory.
[0094] Volatile memory may include random access memory (RAM), which is used as an external cache. By way of example but not limitation, many forms of RAM are available, such as static random access memory (SRAM), dynamic random access memory (DRAM), synchronous dynamic random access memory (SDRAM), double data rate synchronous dynamic random access memory (DDRSDRAM), enhanced synchronous dynamic random access memory (ESDRAM), synchronous link dynamic random access memory (SLDRAM) and direct RAM bus random access memory (DRRAM). The memory 1150 of the electronic device described in the embodiment of the present invention includes but is not limited to the above and any other suitable types of memory.
[0095] In the embodiment of the present invention, the memory 1150 stores the following elements of the operating system 1151 and the application program 1152: executable modules, data structures, or subsets thereof, or extended sets thereof.
[0096] Specifically, the operating system 1151 includes various system programs, such as a framework layer, a core library layer, a driver layer, etc., which are used to implement various basic services and process hardware-based tasks. The application 1152 includes various applications, such as a media player (Media Player) and a browser (Browser), which are used to implement various application services. The program for implementing the method of the embodiment of the present invention may be included in the application 1152. The application 1152 includes applets, objects, components, logic, data structures, and other computer system executable instructions that perform specific tasks or implement specific abstract data types.
[0097] In addition, an embodiment of the present invention further provides a computer-readable storage medium having a computer program stored thereon. When the computer program is executed by a processor, the various processes of the above-mentioned general method embodiment for setting a ranking list based on user interaction are implemented, and the same technical effect can be achieved. To avoid repetition, it will not be repeated here.
[0098] Computer readable storage media include: transient and non-transient, permanent and non-permanent, removable and non-removable media, which are tangible devices that can retain and store instructions for use by instruction execution devices. Computer readable storage media include: electronic storage devices, magnetic storage devices, optical storage devices, electromagnetic storage devices, semiconductor storage devices, and any suitable combination of the above. Computer readable storage media include: phase change memory (PRAM), static random access memory (SRAM), dynamic random access memory (DRAM), other types of random access memory (RAM), read-only memory (ROM), non-volatile random access memory (NVRAM), electrically erasable programmable read-only memory (EEPROM), flash memory or other memory technology, compact disk read-only memory (CD-ROM), digital versatile disk (DVD) or other optical storage, magnetic cassette storage, magnetic tape disk storage or other magnetic storage devices, memory sticks, mechanical encoding devices (such as punched cards or raised structures in grooves with instructions recorded thereon) or any other non-transmission medium that can be used to store information that can be accessed by a computing device. As defined in the embodiments of the present invention, computer-readable storage media do not include temporary signals themselves, such as radio waves or other freely propagating electromagnetic waves, electromagnetic waves propagating through waveguides or other transmission media (such as light pulses passing through fiber optic cables), or electrical signals transmitted through wires.
[0099] In the several embodiments provided in the present application, it should be understood that the disclosed devices, electronic devices and methods can be implemented in other ways. For example, the device embodiments described above are only schematic. For example, the division of the modules or units is only a logical function division. There may be other division methods in actual implementation, such as multiple units or components can be combined or integrated into another system, or some features can be ignored or not executed. In addition, the mutual coupling or direct coupling or communication connection shown or discussed can be an indirect coupling or communication connection through some interfaces, devices or units, or it can be an electrical, mechanical or other form of connection.
[0100] The units described as separate components may or may not be physically separated, and the components shown as units may or may not be physical units, and may be located in one location or distributed on multiple network units. Some or all of the units may be selected according to actual needs to solve the problem to be solved by the embodiments of the present invention.
[0101] In addition, each functional unit in each embodiment of the present invention may be integrated into one processing unit, or each unit may exist physically separately, or two or more units may be integrated into one unit. The above-mentioned integrated unit may be implemented in the form of hardware or in the form of software functional units.
[0102] If the integrated unit is implemented in the form of a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the embodiment of the present invention is essentially or part of the contribution to the prior art, or all or part of the technical solution can be embodied in the form of a program product, which is stored in a storage medium and includes several instructions for a computer device (including: a personal computer, a server, a data center or other network device) to perform all or part of the steps of the method described in each embodiment of the present invention. The above-mentioned storage medium includes various media that can store program codes as listed above.
[0103] In addition, an embodiment of the present invention provides a computer program product, including a computer program. When the computer program is executed by a processor, it implements the various processes of the above-mentioned method embodiment for repairing flow data during user interaction, and can achieve the same technical effect. To avoid repetition, it will not be repeated here.
[0104] Example 1
[0105] This embodiment provides a general method for setting a ranking list based on user interaction. The method obtains dynamic configuration information of user interaction through a unique identification code, obtains interaction data from a data source based on the dynamic configuration information, and finally generates ranking data.
[0106] Step S1: Acquire dynamic configuration information of user interaction through a unique identification code.
[0107] In this step, the system first obtains relevant dynamic configuration information based on the unique identification code of the user interaction (such as user ID, user interaction ID, etc.). The dynamic configuration information contains the following fields:
[0108] Unique Identifier: An identifier used to uniquely identify a user interaction.
[0109] Name: The name of the user interaction.
[0110] Open regional information: geographical or regional information open to user interaction.
[0111] Start Time: The start time of the user interaction.
[0112] End Time: The end time of the user interaction.
[0113] In addition, dynamic configuration information supports real-time modification and updating to adapt to the changing needs of different user interactions.
[0114] Step S2: Acquire interaction data based on user interaction from a data source based on the dynamic configuration information.
[0115] In this step, the system obtains relevant interaction data from the data source based on the dynamic configuration information. The data source includes relational databases, NoSQL databases, and in-memory databases (such as redis). The specific steps are as follows:
[0116] Acquire at least one data source according to the configuration information: the system acquires the relevant data source according to the data source type specified in the dynamic configuration information.
[0117] Use the data access method corresponding to the data source type to obtain part of the interaction data: For each data source, the system uses the corresponding data access method (such as SQL query, NoSQL query, memory access, etc.) to obtain part of the interaction data from the data source.
[0118] Aggregate partial interaction data into interaction data: The system aggregates partial interaction data obtained from different data sources to form complete interaction data.
[0119] In addition, this embodiment provides a first extension interface, which can be executed before step S2 is executed, covers step S2 execution, or is executed after step S2 is executed. The first extension interface is used to add, modify or delete field information and data information in the interactive data based on dynamic configuration information to update part or all of the data in the interactive data.
[0120] In order to ensure the real-time and accuracy of the interactive data, the system is configured with an update mechanism. This update mechanism receives data through message events Kafka and updates the interactive data, and updates it every preset time (such as 5 minutes, 10 minutes, etc.).
[0121] Step S3: Generate ranking data based on the interaction data and ranking-related information stored in the dynamic configuration information.
[0122] In this step, the system generates ranking data based on the interaction data and ranking-related information (such as score calculation rules, ranking rules, etc.) stored in the dynamic configuration information. The fields in the ranking data include:
[0123] User ID: The user's unique identification code.
[0124] Avatar: User’s avatar information.
[0125] First Name: The name of the user.
[0126] Points: Points earned by users during user interactions.
[0127] Ranking: The user's ranking in the leaderboard.
[0128] Points difference from the previous user: the points difference between the user and the previous user in the ranking.
[0129] In addition, this embodiment provides a second extended interface, which can cover step S3 or be executed after step S3 is completed. The second extended interface is used to reorder and update the ranking data based on the interaction data and the related information of the ranking list to meet different ranking requirements.
[0130] The general method for setting a ranking list based on user interaction provided in this embodiment obtains interaction data through dynamic configuration information and data sources, and generates ranking data. The method supports real-time modification and update of dynamic configuration information, provides a first extension interface and a second extension interface to meet different needs, and ensures the real-time and accuracy of interaction data through an update mechanism.
[0131] The above is only a specific implementation of the embodiment of the present invention, but the protection scope of the embodiment of the present invention is not limited thereto. Any technician familiar with the technical field can easily think of changes or substitutions within the technical scope disclosed in the embodiment of the present invention, which should be included in the protection scope of the embodiment of the present invention. Therefore, the protection scope of the embodiment of the present invention should be based on the protection scope of the claims.
Claims
1. A general method for setting a ranking list based on user interaction, characterized in that: The user interaction is provided with a unique identification code, and the setting method comprises the following steps: S1: obtaining the dynamic configuration information of the user interaction through the unique identification code, wherein the dynamic configuration information includes the following fields: unique identification code, user interaction name, open area information, start time and end time; S2: acquiring interaction data based on the user interaction from a data source based on the dynamic configuration information; S3: Generate ranking data based on the interaction data and the ranking related information stored in the dynamic configuration information, wherein the fields in the ranking data include user ID, avatar, name, points, ranking, and the difference in points from the previous user; The dynamic configuration information supports real-time modification and updating.
2. The method according to claim 1, characterized in that A first extension interface is set based on step S2, and the first extension interface is configured to: be executed before the execution of step S2, cover the execution of step S2, or be executed after the execution of step S2 is completed; the first extension interface is used to add, modify or delete field information and data information in the interaction data based on the dynamic configuration information to update part or all of the data in the interaction data.
3. The method according to claim 1 or 2, characterized in that: A second extension interface is provided based on step S3, and the second extension interface is configured to: cover the execution of step S3 or execute after the execution of step S3 is completed, and the second extension interface is used to reorder and update the ranking data based on the interaction data and related information of the ranking list.
4. The method according to claim 3, characterized in that The step S2 comprises: Acquire at least one of the data sources according to the configuration information; Based on the type of the data source, using a data access method corresponding to the type of the data source, respectively obtaining part of the interaction data from the at least one data source; The partial interaction data are aggregated into the interaction data.
5. The method according to claim 4, characterized in that The data sources include: relational database, NoSQL database and in-memory database.
6. The method according to claim 5, characterized in that The memory database includes redis.
7. The method according to claim 3, characterized in that The interactive data is configured with an update mechanism, and the interactive data is updated at preset intervals to ensure the real-time and accuracy of the interactive data.
8. The method according to claim 6, characterized in that The update mechanism is to receive data through message event kafka and update the interaction data.
9. A general device for setting a ranking list based on user interaction, characterized in that: The user interaction is provided with a unique identification code, and the device specifically comprises: A configuration information acquisition module is configured to acquire configuration information of user interaction through a unique identification code; An interaction data acquisition module, configured to acquire interaction data based on the user interaction from a data source based on the configuration information; The ranking data acquisition module is configured to generate ranking data based on the interaction data and ranking-related information stored in the dynamic configuration information, wherein the fields in the ranking data include user ID, avatar, name, points, ranking, and the difference in points from the previous user.
10. The device according to claim 9, characterized in that It also includes a first extended interface execution module, which is configured to: execute before the execution of the interactive data acquisition module, cover the execution of the interactive data acquisition module, or execute after the execution of the interactive data acquisition module is completed; the first extended interface execution module is used to add, modify or delete field information and data information in the interactive data based on the dynamic configuration information to update part or all of the data in the interactive data.
11. The device according to claim 9 or 10, characterized in that It also includes a second extended interface execution module, which is configured to: cover the execution of the ranking data acquisition module or execute after the ranking data acquisition module is executed, and the second extended interface execution module is used to reorder and update the ranking data based on the interaction data and related information of the ranking list.
12. An electronic device, characterized in that: The invention comprises a bus, a transceiver, a memory, a processor and a computer program stored in the memory and executable on the processor. The transceiver, the memory and the processor are connected via the bus. When the computer program is executed by the processor, the steps in the method for setting a general ranking list based on user interaction described in any one of claims 1 to 8 are implemented.
13. A computer-readable storage medium having a computer program stored thereon, characterized in that: When the computer program is executed by a processor, the steps in the method for setting a universal ranking list based on user interaction described in any one of claims 1 to 8 are implemented.
14. A computer program product comprising a computer program, characterized in that When the computer program is executed by a processor, the steps in the method for setting a universal ranking list based on user interaction described in any one of claims 1 to 8 are implemented.