Recommendation method and server
By implementing differentiated downgrade strategies based on user level and operating status in the recommendation system, and prioritizing the lossless services of high-level users, the problem of access traffic exceeding the carrying capacity during peak periods is solved and the system's dynamic response capabilities are improved.
Patent Information
- Application Number
- CN202210144229.7
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-02-17
- Publication Date
- 2025-08-08
- Estimated Expiration
- 2042-02-17
AI Technical Summary
During peak business periods, the access traffic of the recommendation system exceeds the load capacity, resulting in degradation of lossy services and affecting high-value user experience.
The server implements a differentiated elastic downgrade strategy based on user level and current operating status, prioritizes the lossless service capabilities of high-level users, and dynamically adjusts the downgrade gear.
It has achieved priority to ensure the quality of recommendation services for high-value users under high load conditions, and improved the dynamic response capabilities of the recommendation system.
Smart Images

Figure CN114519140B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the technical field of recommendation systems, and in particular to a recommendation method and a server. Background Art
[0002] Some applications installed on terminals are equipped with recommendation systems. These systems are used to recommend items that match users' interests and preferences based on user behavior, user information, and information about items in the library. For example, in video applications, the items may be video sources, while in trading applications, the items may be physical or virtual goods. For example, in video applications, the recommendation system analyzes the types of videos users may be interested in based on their actions on the videos (such as clicks, views, favorites, and shares). The recommendation system then selects recommended video sources that match the video type from the candidate sources in the library and displays them to users on a designated recommendation page. This not only satisfies users' needs to watch their preferred videos, but also facilitates the resource promotion and operation of the application platform.
[0003] In some scenarios, during business peaks, access traffic may exceed the carrying capacity of the recommendation system. The recommendation system can implement service degradation strategies, such as returning backup data or limiting the flow to the client, thereby reducing system pressure and at least ensuring the availability of the core business of the system. However, these degradation strategies are lossy service degradations, which result in users being unable to enjoy normal recommendation system services. This is especially true for valuable users within the application platform, such as member users in video applications and high-spending users in transaction applications. Lossy service degradation will affect user experience and is not conducive to the application platform maintaining important customers and developing potential users. Summary of the Invention
[0004] To solve the problems discussed in the above background technology, the present invention provides a recommendation method and server, which sets different levels of degradation modes in the server and implements differentiated elastic degradation strategies based on user levels and the current operation status of the recommendation system.
[0005] The server provided by the embodiment of the first aspect includes:
[0006] Communicator, used for communication connection with terminal equipment;
[0007] The controller is configured to execute:
[0008] When monitoring that the downgrade condition is met, query the user level of the current online user and the downgrade mode combination preset for different user levels, wherein the downgrade mode combination has multiple levels of downgrade modes;
[0009] Determining a degradation strategy that matches a current operating state of the server, the degradation strategy indicating a gear of a degradation mode corresponding to each user level;
[0010] After the downgrade strategy is executed, corresponding recommendation information is sent to the terminal device of each online user.
[0011] A second aspect of the embodiment provides a recommendation method executed by a server, comprising:
[0012] When monitoring that the downgrade condition is met, query the user level of the current online user and the downgrade mode combination preset for different user levels, wherein the downgrade mode combination has multiple levels of downgrade modes;
[0013] Determine a degradation strategy that matches the current operating state of the server, wherein the degradation strategy indicates a gear of a degradation mode corresponding to each user level;
[0014] After the downgrade strategy is executed, corresponding recommendation information is sent to the terminal device of each online user.
[0015] In this application scenario, after user A accesses the recommendation engine, the server generates recommendation information that matches user A's interest preferences and pushes the recommendation information to user A's terminal device A (i.e., client). Terminal device A can then display the recommendation information to user A on the recommendation page. Since the server communicates with a large number of terminals at the same time and there are many online users, if the server's access traffic exceeds its own load, it will trigger a degradation mechanism.
[0016] This application classifies user levels based on user historical behavior. The user levels reflect the importance and value of users to the application platform. Under the downgrade mechanism, it is more inclined to give priority to providing lossless recommendation services to high-level users. Therefore, a corresponding downgrade mode combination is formulated for each user level. For example, user level 1 corresponds to downgrade mode combination 1, user level 2 corresponds to downgrade mode combination 2, and so on. The downgrade mode combination under each user level includes multiple levels of downgrade modes, and the levels are sorted. The levels reflect the degree of service loss of the downgrade mode and the degree of consumption of system computing power. The higher the level, the greater the computing power consumption, but the lower the degree of service loss (the closer to lossless service). Therefore, it is necessary to grasp the server load / access traffic based on the server's operating status, and match the best downgrade strategy when triggering the downgrade mechanism. Taking the division of two user levels as an example, assuming that user level 1 is higher than user level 2, the downgrade mode corresponding to user level 1 is The mode combination 1 includes {gear 11, gear 12, gear 13, gear 14} in sequence, and the demotion mode combination 2 corresponding to user level 2 includes {gear 21, gear 22, gear 23, gear 24} in sequence. When determining the demotion strategy, it is preferred to keep user level 1 in the highest gear 11, and adjust the demotion mode of user level 2 from gear 21. Assuming that the system is relieved of overload when it is adjusted to gear 24, the demotion strategy is determined as follows: the demotion mode corresponding to user level 1 is gear 11, and the demotion mode corresponding to user level 2 is gear 24. Assuming that user B belongs to the category of user level 1, the downgrade mode of gear 11 is used to obtain recommendation information B, and the recommendation information B is pushed to the terminal of user B; assuming that user D belongs to the category of user level 2, the downgrade mode of gear 24 is used to obtain recommendation information D, and the recommendation information D is pushed to the terminal of user D, so as to adapt the downgrade gears for users of different levels, give priority to retaining the lossless service capability for high-level users, and realize differentiated elastic downgrade strategies. The downgrade strategies can dynamically adapt to the system operation status, thereby improving the dynamic response capability of the recommendation system to downgrade. BRIEF DESCRIPTION OF THE DRAWINGS
[0017] In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, the following briefly introduces the drawings that need to be accessed in the embodiments. Obviously, the drawings described below are only some embodiments of the present invention. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying any creative work.
[0018] Figure 1 shows a recommended interaction scenario between a terminal device and a server according to some embodiments;
[0019] Figure 2 Schematic diagram showing a terminal displaying a recommendation page is exemplarily shown in FIG;
[0020] Figure 3 The model architecture diagram of the recommendation system is shown in FIG.
[0021] Figure 4 Schematic diagram of a multi-way recall strategy is shown in FIG;
[0022] Figure 5 Schematic diagram of classification of user levels is shown as an example;
[0023] Figure 6 exemplarily shows a configuration diagram of the relationship between user levels and degradation mode combinations;
[0024] Figure 7 FIG. 4 is a schematic diagram showing an exemplary first type of downgrade debugging;
[0025] Figure 8 FIG. 4 is a schematic diagram showing a second type of downgrade debugging;
[0026] Figure 9 FIG. 4 is a schematic diagram showing a third type of downgrade debugging;
[0027] Figure 10 FIG4 is a schematic diagram showing a fourth type of downgrade debugging;
[0028] Figure 11 In the example shown in Figure 8 Instructions for downgrade recovery based on Figure 1 ;
[0029] Figure 12 In the example shown in Figure 9 Instructions for downgrade recovery based on Figure 2 ;
[0030] Figure 13 Schematic diagram of the structure of a server is shown in FIG.
[0031] Figure 14 A schematic diagram of a server architecture configuration is shown in FIG.
[0032] Figure 15 The example shows the recommendation interaction processing logic between the terminal and the server;
[0033] Figure 16 , which exemplarily shows a flow chart of the recommendation method executed by the server. DETAILED DESCRIPTION
[0034] In order to make the purpose and implementation of this application clearer, the exemplary implementation of this application will be clearly and completely described below in conjunction with the drawings in the exemplary embodiments of this application. Obviously, the described exemplary embodiments are only part of the embodiments of this application, not all of the embodiments.
[0035] It should be noted that the brief descriptions of terms in this application are only for the purpose of facilitating the understanding of the embodiments described below, and are not intended to limit the embodiments of this application. Unless otherwise specified, these terms should be understood according to their ordinary and usual meanings.
[0036] The terms "comprise," "include," and "have," and any variations thereof, are intended to cover but not exclude inclusion; for example, a product or device comprising a list of components is not necessarily limited to all the components expressly listed but may include other components not expressly listed or inherent to such product or device.
[0037] The term "module" refers to any known or later developed hardware, software, firmware, artificial intelligence, fuzzy logic, or combination of hardware and / or software code that is capable of performing the functionality associated with that element.
[0038] In some embodiments, Figure 1 The example shows the recommended interaction scenario between the terminal device and the server. The server 100 can communicate and interact with multiple terminal devices 200. The terminal device 200 is not limited to mobile or fixed terminals with display functions such as smart TVs, smart phones, tablets, and laptops. The terminal device 200 can communicate with the server 100 through a local area network (LAN), a wireless local area network (WLAN) and other networks. The server 100 can be a cluster or multiple clusters, and can include one or more types of servers.
[0039] In some scenario embodiments, a user may access and view a recommendation page on the terminal device 200. Different application platforms may recommend different types of objects. For example, a video application may display recommended film sources, a transaction application may display recommended products, a browser application may recommend information, etc. The terminal device 200 sends a recommendation request to the server 100. In response to the recommendation request, the server 100 may generate recommendation information that matches the user's interest preferences based on factors such as the user's historical behavior and recently popular / popular objects, and push the recommendation information to the terminal device 200. The terminal device 200 displays the recommendation information on the corresponding recommendation page.
[0040] In some scenario embodiments, taking the terminal device 200 as a smart TV as an example, Figure 2 As shown, a special recommendation page can be created in the application platform, for example, controls such as "Recommendation" and "Guess You Like" can be added to the navigation bar 21 in the interface of the video on demand program. For example, when a user clicks Figure 2 By clicking the recommendation control 211 in the server 100 , the user can enter the recommendation page, which displays the recommendation information 212 that meets the user's interests and preferences, which is predicted, output and pushed by the recommendation system in the server 100 after big data modeling.
[0041] In some embodiments, the recommendation page can be displayed according to a preset template, which includes the number, priority, layout, etc. of the recommended information, so that the recommendation page is displayed to the user according to the preset format, and the user can switch the recommended information 212 through operations such as turning pages and sliding.
[0042] In some embodiments, a focus can be set, and the focus can move synchronously with the user's action of switching recommended information, so that the user can accurately locate the currently selected target recommended information. Recommended information with focus generally needs to be processed prominently, such as highlighting the recommended information, appropriately enlarging the recommended information, etc., so that the focus and non-focus have a more prominent contrast, which is convenient for users to distinguish.
[0043] In some embodiments, reference Figure 2 Each recommendation information 212 may include, for example, a preview image, target object information, and a trigger control linked to the recommendation information. For example, for video applications, the preview image is a frame of image randomly selected from the source video and obtained by thumbnail processing; the target object information is embodied as video information, including but not limited to video duration, video name, video content introduction, etc., so that users can quickly understand the brief information of the recommended video and filter out the target video they want to watch; the trigger control is embodied as a play control. When the user clicks on the target recommendation information, the play control is triggered, and the target video is redirected to the playback interface, thereby starting to play the target video. For another example, for transaction applications, the preview image is obtained by thumbnail processing of the product image; the target object information is embodied as product information, including but not limited to product brand, category, price, etc., so that users can filter out the target product they want to purchase; the trigger control is embodied as a link jump control. When the user clicks on the target recommendation information, the link jump control is triggered, causing the UI to jump to the product details page. For different application platforms and terminals, the target object type displayed on the recommendation page and the UI display effect can be adaptively set, and are not limited to the examples in the embodiments of this application.
[0044] In some embodiments, the server 100 is configured with recommendation systems for different application platforms. Figure 3An example of a model architecture for a recommendation system is provided, which generally includes two levels: the input layer and the output layer. In the input layer, a data set is collected. The data set is not limited to user data, target object data, etc., wherein user data may include user information, user behavior data, etc. User behavior data is the behavior of users on the target object, such as the behavior record of which products the user clicks, collects, adds to the shopping cart, purchases, and reviews. User information is not limited to age, gender, location, etc.; target object data is not limited to detailed information such as target object category, transaction volume, click volume, target object storage time, and other related information. After the input layer collects the data set, it calls the training model to process the data set to obtain a feature set. The feature set is not limited to user features, target object features, scene features, user behavior features, etc. The feature set is transmitted to the output layer as a data sample, thereby providing data support for the output layer's predictive training.
[0045] In some embodiments, reference Figure 3 , the output layer is not limited to including the recall layer and the ranking layer. The recall layer is used to filter out the objects that the user may be interested in from the candidate set according to the recall strategy. For example, the candidate set includes millions or even tens of millions of products, which can be reduced to tens or hundreds of orders of magnitude after passing through the recall layer, thereby reducing the recommendation delay and enabling users to quickly obtain product recommendation feedback. The ranking layer accurately ranks the objects recalled by the recall layer by calling the ranking model. Taking the object as an example, the score of the recalled product is calculated, and the recalled products are ranked in descending order according to the score, thereby outputting the recommendation result. The recommendation result can be in the form of a ranking combination such as a set or a list. After the terminal device 200 receives the recommendation result returned by the server 100, it displays the recommendation information in order on the recommendation page according to the ranking indicated by the recommendation result, so that the objects that are more in line with the user's interest preferences are displayed first.
[0046] In some embodiments, for the recall layer, it is expected that the richness and comprehensive coverage of the recall targets are high, but too many recalls will affect the system operation speed, thereby increasing the recommendation delay. In order to balance the recall rate and the recall operation speed, a multi-channel recall strategy can be adopted. Figure 4 As shown, the recall layer under this strategy includes Q recall channels, each of which corresponds to a recall sub-strategy, for example Figure 4 Recall channel 1 corresponds to recalling popular products from the candidate set, recall channel 2 corresponds to recalling products from the candidate set using collaborative filtering rules, recall channel Q corresponds to recalling products from the candidate set based on interest tags, and so on. Recall channel w will recall the top S w commodities, w is used to identify the serial number of the recall channel, 1≤w≤Q, S of each recall channel wThe values can be the same or different, and the recall results of each recall channel are input to the sorting layer separately. Alternatively, the recall results of multiple channels can be aggregated and input to the sorting layer for accurate sorting. The advantage of the multi-channel recall strategy is that it can run multiple recall sub-strategies in parallel, avoiding the low accuracy and narrow coverage caused by a single recall strategy. It also relies on simple model calculations of small sub-strategies, which can significantly reduce response time.
[0047] In some embodiments, each recall channel can be configured with a channel switch to independently control the on / off state of each recall channel, thereby determining the type and number of recall channels enabled at the recall layer. The architecture of the recommendation system, as well as the models and algorithms used at each layer, are not limited.
[0048] In order to solve the problems existing in the background technology, the present application provides a solution for implementing a differentiated elastic degradation strategy based on user level classification and recommendation system operation status. In some embodiments, user value can be estimated based on factors such as user historical behavior and user activity. Specifically, multiple user values can be divided with the help of certain user value classification models, such as the RFM model. The RFM model includes three measurement indicators: Recency (most recent transaction), Frequency (transaction frequency) and Monetary (transaction amount). For example, it can be divided into important value customers, important development customers, important retention customers, important recalled customers, general value customers, general retention customers, general development customers, general retention customers, etc. Important value customers refer to customers with outstanding RFM indicators and are high-quality customers who need to be maintained; important development customers refer to customers with large transaction amounts and high contribution, who have recently had transactions and need to be identified and maintained; important retained customers refer to customers with large transaction amounts and potential value who need to be retained; important recalled customers refer to customers with large transaction amounts and transaction frequencies, but no recent transactions and need to be recalled; general value customers, general retention customers, general development customers and general retention customers have lower RFM levels than users of the aforementioned important levels.
[0049] In some embodiments, user levels are classified, defined, and sorted based on the user values divided by the model. User levels and user values can be synchronized or asynchronous. For example, if the aforementioned RFM model divides 8 types of valuable users, the user levels can be synchronously divided into 8 categories, or user values can be classified according to the similarity of user values. For example, important value customers and important development customers are classified as user level 1, important retention customers and important recall customers are classified as user level 2, general value customers and general retention customers are classified as user level 3, and general development customers and general retention customers are classified as user level 4. A user level ranking is also formulated, for example, user levels from high to low are user level 1>user level 2>user level 3>user level 4. User level reflects the importance and value of users to the application platform. It should be noted that the classification method of user levels is not limited to this embodiment, and the number and categories of user levels are not limited.
[0050] In some embodiments, reference Figure 5 For example, let N be the number of user level categories and R be the number of users distributed within user level i. i , 1≤i≤N, i represents the user level sequence number after sorting from high to low, that is, the smaller the i value, the higher the user level, and the larger the i value, the lower the user level. i The value is not fixed. For example, when user A is newly registered in the transaction application, he is classified as the lowest user level (i.e. user level N). However, as the frequency and amount of user A's subsequent transactions accumulate, and he is a long-term stable and active user, user A's level evaluation will gradually upgrade, and even rise to the highest user level (i.e. user level 1). For another example, user B originally belonged to user level 2, but user B did not make any transactions for a long time afterwards. In this case, the level evaluation of user B may be downgraded, for example, gradually falling to a lower level at the back of the ranking. Therefore, the distribution of users and their number R in each user level i They are all dynamically changeable according to user behavior.
[0051] In some embodiments, reference Figure 5 For the recommendation system, each user level may be distributed with online users and offline users. The online users refer to terminal users who have logged into the application platform and accessed the recommendation engine to request recommendation information; the offline users refer to terminal users who have not started or logged into the application platform, or have not requested recommendation information, that is, the server 100 only pushes recommendation information to online users, and does not push recommendation information to offline users.
[0052] In some embodiments, reference Figure 6 The relationship between the user level and the degradation mode combination is configured in this example. This application presets the corresponding degradation mode combination for each user level. Set User_Level iIndicates the i-th user level, User_Level i The corresponding degradation mode combination is expressed as DegradeMode i ,DegradeMode i There are multiple levels of degradation mode, set DegradeMode i The degradation mode in the jth gear is represented as Mode_Level i,j , 1≤j≤M i , M i Indicates DegradeMode i The total number of degradation modes included in it. That is, from the vertical distribution point of view, the user level decreases step by step as the i value increases; from the horizontal distribution point of view, for each degradation mode combination, the gear is gradually lowered as the j value increases. Among them, M under each user level i The values can be the same or different.
[0053] For each degradation mode combination, the internal gear reflects the degree of service loss of the degradation mode and the degree of consumption of system computing power. The higher the gear, the greater the computing power consumption and system load, but the lower the service loss (that is, the closer to lossless service).
[0054] In some embodiments, the highest gear in each degraded mode combination, Mode_Level i,1 All are configured in normal recommendation mode, that is, lossless degradation mode in a non-degraded state, providing users with lossless recommendation services.
[0055] In some embodiments, for Mode_Level i,j , 2≤j≤M i , all of these gears belong to lossy degradation mode. For the lowest gear in each degradation mode combination, Mode_Level i,Mi All are configured to return fallback data, i.e., the actual recommendation operation is stopped. The server 100 only returns the preset fallback data to the terminal device 200. The fallback data is not limited to pre-prepared static page data, preset recommendation lists, etc., for display on the recommendation page of the terminal device 200.
[0056] In some embodiments, for Mode_Level i,j , 1≤j<M i, that is, the downgrade mode that is not the lowest gear in each downgrade mode combination, can define the recall strategy and sorting strategy used to output recommendation information. The recall strategy includes the size of the candidate set, the number and category of the recall channels opened, etc. The larger the candidate set, the greater the computing power consumption and system load of the recall layer. Under the multi-channel recall strategy, the more recall channels are opened, the greater the computing power consumption and system load of the recall layer. The sorting strategy includes the on / off status of the sorting strategy and the category of the sorting model called. If the sorting strategy indicates the off state, no sorting model is called, the sorting layer is skipped and the recall result is directly output, thereby reducing the computing power consumption and load of the system; if the sorting strategy indicates the on state, the sorting layer needs to call the sorting model to perform calculation processing, wherein the category of the sorting model called will also affect the computing power consumption and load of the system. For example, the more complex the sorting model called, the greater the computing power consumption and load of the system; the simpler the sorting model called, the smaller the computing power consumption and load of the system.
[0057] Therefore, according to different recall strategies and sorting strategies, each degradation mode combination can be divided into gears and gear mode configurations. For example, if there are more recall channels, a larger candidate set, and a more complex sorting model is called, the corresponding degradation mode gear will be higher; if there is a single recall channel, a smaller candidate set, no sorting model is called, or the sorting model called is relatively simple, the corresponding degradation mode gear will be lower.
[0058] After completing the user level classification and configuring the corresponding degradation mode combination for each user level, the differentiated elastic degradation strategy of this application can be implemented. In some embodiments, the server can monitor its own operating status in real time, such as monitoring CPU utilization, memory consumption, RT (Reaction Time, which represents the time it takes for the system to respond to a request), and other status indicators. When at least one of these status indicators exceeds the threshold constraint, it is monitored that the system currently meets the degradation conditions and the degradation mechanism needs to be triggered.
[0059] In some embodiments, if any of the status indicators, such as CPU utilization, memory usage, and RT, exceeds a threshold, the system's current timeout request ratio will increase. Therefore, the timeout request ratio can be used to determine whether to trigger a downgrade mechanism. The timeout request ratio is used to represent the proportion of timeout requests in all requests. If the timeout request ratio is greater than a preset threshold, the downgrade condition is determined to be met. If the timeout request ratio is within the preset threshold limit, the downgrade condition is not met and there is no need to initiate the downgrade mechanism.
[0060] In some embodiments, when the downgrade mechanism is not triggered, the server controls its own recommendation system to work according to the normal recommendation strategy, which means that the downgrade mode corresponding to each user level is the highest gear in its respective combination, that is, User_Level i The corresponding degradation mode is Mode_Level i,1 , which allows lossless service to be provided to online users at each user level.
[0061] In some embodiments, if the downgrade condition is met, a downgrade strategy that matches the current operating state of the server is determined. The downgrade strategy is used to indicate the downgrade mode gear triggered corresponding to each user level. Based on the principle of giving priority to lossless service to high-level users, starting from the lowest user level, refer to Figure 6 , that is, DegradeMode N Mode_Level N,1 As the starting point for downgrade, lower the User_Level in sequence N The corresponding downgrade gear, while monitoring the current system load, User_Level N The corresponding downgrade gear decreases, and the current system load also decreases. If it decreases to M N DegradeMode N The total number of gears, that is, it has been reduced to DegradeMode N When the system load exceeds the upper limit, the previous user level User_Level will be lowered. N-1 The downgrade gear is adjusted, and so on, until the current system load is reduced to less than or equal to the system load upper limit, or until all user levels are downgraded to the lowest gear in their respective combinations, and the debugging process of the downgrade strategy is stopped.
[0062] In some embodiments, let i represent the user level sequence number after sorting from high to low, with i decreasing from N as the priority order, that is, i is initially N, and the vertical demotion priority order is from low to high user level, according to DegradeMode i The gear sorting in the order of descending User_Level i The corresponding gear of the downgrade mode, that is, the order of horizontal downgrade is from high to low, that is, the service downgrade is prioritized for low-level users, and the lossless service is retained for high-level users. k is updated synchronously during the downgrade process. i The value of k i Indicates User_Level i The corresponding gear number of the current downgrade mode, User_Level i Each time the corresponding downgraded gear is lowered by one gear, ki The value of is accumulated plus one. The initial value of i is N, but in the process of implementing the degradation mechanism, the value of i is a variable. i The corresponding downgrade gear is adjusted down to Mode_Level i,Mi (ie DegradeMode i If the current system load still exceeds the system carrying capacity, the user level of the next higher level will be further downgraded, that is, i=i-1.
[0063] In some embodiments (A1), until the current system load is reduced to less than or equal to the system load upper limit, if i is equal to N and k N ≤M N , indicating that only the lowest user level is losslessly downgraded, and all other user levels can retain lossless service. The degradation strategy configured in this scenario is that the degradation mode corresponding to the first N-1 user levels is the highest gear in their respective combinations, and the degradation mode corresponding to the Nth user level is the kth gear in the Nth degradation mode combination. N gear position.
[0064] In some embodiments (A2), until the current system load is reduced to less than or equal to the system load upper limit, if 1<i<N and k i ≤M i , indicating that the first i-1 user levels can retain lossless service, and from the i-th user level onwards, all are lossy downgraded. Therefore, the degradation strategy configured in this scenario is that the degradation mode corresponding to the first i-1 user levels is the highest gear in their respective combinations, and the degradation mode corresponding to the i-th user level is the k-th gear in the i-th degradation mode combination. i Gear: The degradation mode corresponding to the i+1th to Nth user levels is the lowest gear in their respective combinations.
[0065] In some embodiments (A3), until the current system load is reduced to a level less than or equal to the system load upper limit, if i=1 and k1<M1, it means that the 2nd to Nth user levels are all lossy downgraded and have been adjusted to the lowest gear in their respective combinations, and although the highest user level is also lossy downgraded, it has not been adjusted to the lowest gear. Therefore, the downgrade strategy configured in this scenario is that the downgrade mode corresponding to the 1st user level is the k1th gear in the 1st downgrade mode combination, and the downgrade mode corresponding to the 2nd to Nth user levels is the lowest gear in their respective combinations.
[0066] In some embodiments (A4), until i equals 1 and k1 equals M1, it means that the downgrade modes of all user levels are downgraded to the lowest gear in their respective combinations, the downgrade has fully covered all user levels, and it is the maximum degree of downgrade and computing power release. At this time, regardless of whether the current system load drops to the system load upper limit, the debugging process of the downgrade strategy needs to be stopped. Therefore, the downgrade strategy configured in this scenario is that the downgrade modes corresponding to N user levels are all the lowest gear in their respective combinations.
[0067] In some embodiments, the system load changes dynamically. For example, a reduction in online users, a decrease in server access traffic, and the implementation of service degradation will alleviate system pressure. Therefore, when the server monitors that the degradation condition has been lifted, it can gradually reverse the lossy degradation.
[0068] In some embodiments, based on the principle of giving priority to restoring the recommended services that have been downgraded to high-level users, in contrast to the aforementioned downgrade debugging, the priority order is in ascending order of i value, that is, the i value when the downgrade debugging is stopped is the initial value, and the priority order of vertical restoration is from high to low user level, according to DegradeMode i The gear order within the system is adjusted up in order of User_Level i The corresponding gear position in the downgrade mode, that is, the order of lateral recovery is from low to high gear position, and k is updated synchronously during the upshift process. i The value of k i Indicates User_Level i The corresponding gear number of the current downgrade mode, User_Level i Each time the corresponding downgraded gear is shifted up one gear, k i The value of is reduced by one. In the process of implementing downgrade recovery, the value of i is also a variable. When User_Level i The corresponding downgrade gear is adjusted to Mode_Level i,1 (ie DegradeMode i If the current system load does not reach the upper limit of the system carrying capacity, the downgrade gear of the user level of the lower level will continue to be increased, that is, i=i+1, and so on, until the current system load rises to the upper limit of the system load, or until the downgrade modes corresponding to the N user levels are all restored to the highest gear in their respective combinations.
[0069] In some embodiments (B1), for the scenario of the above embodiment (A1), when performing downgrade recovery, since i=N, the first N-1 user levels are not downgraded, and only the User_Level N , to DegradeMode N within As the starting point, adjust the gears in sequence while monitoring the current system load until the current system load rises to the upper limit of the system load, or until the gear is adjusted to Mode_Level N,1 , the downgrade recovery process stops.
[0070] In some embodiments (B2), for the scenario of the above embodiment (A2), the first i-1 user levels are not downgraded, and the DegradeMode i within As the starting point, gradually increase the gear according to the priority order of horizontal and vertical recovery, while monitoring the current system load until the current system load rises to the system load upper limit, or until the gear is adjusted to Mode_Level N,1 , the downgrade recovery process stops.
[0071] In some embodiments (B3), for the scenario of the above embodiment (A3), N user levels are all lossily downgraded, then the user level in DegradeMode1 is used. As the starting point, gradually increase the gear according to the priority order of horizontal and vertical recovery, while monitoring the current system load until the current system load rises to the system load upper limit, or until the gear is adjusted to Mode_Level N,1 , the downgrade recovery process stops.
[0072] In some embodiments (B4), for the scenario of the above embodiment (A4), all N user levels are downgraded to the lowest level in the combination, then the level in DegradeMode1 is used. As the starting point, gradually increase the gear according to the priority order of horizontal and vertical recovery, while monitoring the current system load until the current system load rises to the system load upper limit, or until the gear is adjusted to Mode_Level N,1 , the downgrade recovery process stops.
[0073] In some embodiments, reference Figures 7 to 12 , is divided into three user levels (ie N = 3), and the degradation mode set corresponding to each user level includes four gears (ie M i =4, i=1, 2, 3) as an example to exemplarily describe the aforementioned degradation debugging and degradation recovery processes.
[0074] In some embodiments, as Figure 7 As shown, before triggering the downgrade debugging, it is assumed that the downgrade gear corresponding to User_Level1 is Mode_Level 1,1 , the downgrade level corresponding to User_Level2 is Mode_Level 2,1 , the downgrade level corresponding to User_Level3 is Mode_Level3,1 , that is, each user level is at the highest level in its own combination, supporting the provision of lossless services to online users of each level. When the monitoring meets the degradation conditions, the degradation debugging is triggered. Figure 7 , corresponding to the scenario of the aforementioned embodiment (A1), the gear downshifting order is Mode_Level 3,1 (Starting point of downgrade debugging) → Mode_Level 3,2 →Mode_Level 3,3 (Downgrade debugging end point), that is, downgrade to Mode_Level 3,3 When the current system load is reduced to less than or equal to the upper limit of the system load, there is no need to continue to reduce it, stop the downgrade debugging process, and determine the downgrade strategy as {User_Level1: Mode_Level 1,1 ;User_Level2:Mode_Level 2,1 ;User_Level3:Mode_Level 3,3}.
[0075] In some embodiments, as Figure 8 As shown, corresponding to the scenario of the aforementioned embodiment (A2), the gear downshifting order is Mode_Level 3,1 (Starting point of downgrade debugging) → Mode_Level 3,2 →Mode_Level 3,3 →Mode_Level 3,4 →Switch to User_Level2→Mode_Level 2,1 (Starting point of User_Level2) → Mode_Level 2,2 (Downgrade debugging end point), that is, when it is adjusted to Mode_Level 2,2 When the current system load is reduced to less than or equal to the upper limit of the system load, the downgrade debugging process is stopped and the downgrade strategy is determined to be {User_Level1: Mode_Level 1,1 ;User_Level2:Mode_Level 2,2 ;User_Level3:Mode_Level 3,4}.
[0076] In some embodiments, as Figure 9 As shown, corresponding to the scenario of the aforementioned embodiment (A3), the gear downshifting order is Mode_Level 3,1 (Starting point of downgrade debugging) → Mode_Level 3,2 →Mode_Level 3,3 →Mode_Level3,4 →Switch to User_Level2→Mode_Level 2,1 (Starting point of User_Level2) → Mode_Level 2,2 →Mode_Level 2,3 →Mode_Level 2,4 →Switch to User_Level1→Mode_Level 1,1 (Starting point of User_Level1) → Mode_Level 1,2 (Downgrade debugging end point), that is, when it is adjusted to Mode_Level 1,2 When the current system load is reduced to less than or equal to the upper limit of the system load, the downgrade debugging process is stopped and the downgrade strategy is determined to be {User_Level1: Mode_Level 1,2 ;User_Level2:Mode_Level 2,4 ;User_Level3:Mode_Level 3,4}.
[0077] In some embodiments, as Figure 10 As shown, corresponding to the scenario of the aforementioned embodiment (A4), the gear downshifting order is Mode_Level 3,1 (Starting point of downgrade debugging) → Mode_Level 3,2 →Mode_Level 3,3 →Mode_Level 3,4 →Switch to User_Level2→Mode_Level 2,1 (Starting point of User_Level2) → Mode_Level 2,2 →Mode_Level 2,3 →Mode_Level 2,4 →Switch to User_Level1→Mode_Level 1,1 (Starting point of User_Level1) → Mode_Level 1,2 →Mode_Level 1,3 →Mode_Level 1,4 (Downgrade debugging end point), that is, the maximum degree of degradation has been implemented, then the downgrade debugging process is stopped and the downgrade strategy is determined to be {User_Level1: Mode_Level 1,4 ;User_Level2:Mode_Level 2,4 ;User_Level3:Mode_Level 3,4}.
[0078] In some embodiments, as Figure 11 As shown in Figure 8 In the scenario of downgrade recovery, the gear adjustment order is Mode_Level 2,2 (Downgrade recovery starting point) → Mode_Level 2,1 →Switch to User_Level3→Mode_Level 3,4 (Starting point of User_Level3) → Mode_Level 3,3 →Mode_Level 3,2 →Mode_Level 3,1 (Degradation recovery end point), that is, under the premise of not exceeding the system load limit, all three user levels are restored to the lossless service mode, that is, full recovery of degradation is achieved, so the degradation recovery process is stopped and switched to the normal recommendation strategy, which is {User_Level1: Mode_Level 1,1 ;User_Level2:Mode_Level 2,1 ;User_Level3:Mode_Level 3,1}.
[0079] In some embodiments, as Figure 12 As shown in Figure 9 In the scenario of downgrade recovery, the gear adjustment order is Mode_Level 1,2 (Downgrade recovery starting point) → Mode_Level 1,1 →Switch to User_Level2→Mode_Level 2,4 (Starting point of User_Level2) → Mode_Level 2,3 →Mode_Level 2,2 →Mode_Level 2,1 →Switch to User_Level3→Mode_Level 3,4 (Starting point of User_Level3) → Mode_Level 3,3 (Downgrade recovery end point), that is, when it recovers to Mode_Level 3,3 When the system load reaches the upper limit, if the recovery continues, it will exceed the system load capacity, so the downgrade recovery process is stopped. At this time, the downgrade strategy is changed from {User_Level1: Mode_Level 1,2 ;User_Level2:Mode_Level 2,4;User_Level3:Mode_Level 3,4 Updated to {User_Level1:Mode_Level after recovery 1,1 ;User_Level2:Mode_Level 2,1 ;User_Level3:Mode_Level 3,3}, since User_Level3 is still in lossy degradation, it is an incomplete recovery situation of degradation.
[0080] In some embodiments, after debugging the decision or dynamically updating the downgrade strategy, the server controls its own recommendation system according to the recall strategy and sorting strategy defined in the gear downgrade mode corresponding to each user level indicated in the downgrade strategy, predicts and outputs recommendation results that match the interest preferences of each online user, and returns the corresponding recommendation results to the terminal devices 200 used by online users in different levels, so that the terminal devices 200 display the recommendation results on the recommendation page; or, for the user level downgraded to the lowest gear, the server returns the preset backup data to the terminal devices 200 used by online users in the user level, and the terminal devices 200 load and display the backup data on the recommendation page.
[0081] In some embodiments, for example, user A is evaluated and classified as User_Level 2. After the terminal device A used by user A sends a recommendation request to the server, the server decides the downgrade strategy based on the current operating status of the system. The downgrade strategy indicates that the downgrade mode of User_Level 2 is Mode_Level 2,2 Gear, it is recommended that the system use Mode_Level 2,2 The server calculates the recommended information A provided for user A, sends the recommended information A to terminal device A, and terminal device A displays the recommended information A to user A on the recommendation page.
[0082] In some embodiments, for example, user B is evaluated and classified as User_Level 1. After the terminal device B used by user B sends a recommendation request to the server, the server decides the downgrade strategy based on the current operating status of the system. The downgrade strategy indicates that the downgrade mode of User_Level 1 is Mode_Level 1,1 Gear, it is recommended that the system use Mode_Level 1,1 The server calculates the recommended information B provided for user B, sends the recommended information B to terminal device B, and terminal device B displays the recommended information B to user B on the recommendation page.
[0083] In some embodiments, for example, user C is evaluated and classified as User_Level 3. After the terminal device C used by user C sends a recommendation request to the server, the server decides the downgrade strategy based on the current operating status of the system. The downgrade strategy indicates that the downgrade mode of User_Level 3 is Mode_Level 3,4 gear, the recommendation system currently suspends recommendation prediction for user C, and the server directly sends the preset backup data to terminal device C, and terminal device C displays the received backup data to user C on the recommendation page.
[0084] It can be seen from the above technical solutions that when the downgrade conditions are met, this application decides on the downgrade strategy based on the current operating status of the system and the user level classification, thereby adapting the downgrade gear for each user level, giving priority to retaining lossless services for high-level users, and starting from the lowest user level, the gear is lowered in sequence. After the downgrade conditions are lifted, the service capabilities of high-level users are restored first, and the gear is raised in sequence from the highest user level in the current lossy downgrade. This application can achieve differentiated elastic degradation and its recovery method. When the system is overloaded, there is no need to restrict the access requests of certain users, and the user side is basically unaware of service degradation and gear switching, which ensures the user application experience and is conducive to the application platform's maintenance of high-value users, thereby exerting and tapping user value. In addition, the downgrade strategy can be dynamically and adaptively updated with the system operating status, which improves the dynamic response capability of the recommendation system to downgrade.
[0085] In some embodiments, as Figure 13 As shown, server 100 includes at least a controller 101 and a communicator 102. Controller 101 is configured to execute the recommendation method including the aforementioned degradation debugging and degradation recovery mechanisms. Communicator 102 is used to implement communication interactions between server 100 and terminal device 200. Such communication interactions are not limited to receiving recommendation requests from terminal device 200 and sending recommendation information predicted and output by the recommendation system to terminal device 200. The structure of server 100 is not limited to this embodiment; server 100 may also implement other services.
[0086] In some embodiments, as Figure 14 As shown, the server 100 includes a recommendation engine 100A, a collection module 100B, a storage module 100C, and an estimation module 100D, wherein the recommendation engine 100A includes a decision module 100A-1 and a recommendation model 100A-2. Figure 14 The engines and functional modules involved can all be controlled by the controller 101.
[0087] In some embodiments, users can access the recommendation engine to execute related business operations in the recommendation service. The collection module 100B is used to collect the system operation status reported by the recommendation engine 100A. The status indicators involved in the system operation status include but are not limited to CPU utilization, system available memory / memory consumption, RT (TP999), system traffic at each historical time point, the number of executions of each downgraded gear, the CPU time and memory usage of each downgraded gear during each execution, etc. CPU time is used to represent the time consumed to complete the task process when the CPU is working at full speed. The collection module 100B stores the collected status indicator data in the storage module 100C, and sends indicators such as CPU utilization, system available memory / memory consumption, RT, etc. to the decision module 100A-1.
[0088] In some embodiments, the estimation module 100D includes three submodules: a user level estimation submodule 100D-1, a gear computing power estimation submodule 100D-2, and a system computing power upper limit estimation submodule 100D-3. The user level estimation submodule 100D-1 is configured with a user value classification model (e.g., an RFM model) and classifies user levels based on the user values classified by the user value classification model.
[0089] In some embodiments, the gear computing power estimation submodule 100D-2 is used to read the required status indicator data from the storage module 100C, such as reading each degraded gear Mode_Level i,j Historical execution times, CPU execution Mode_Level i,j The computing power consumed, which is measured in terms of CPU time and memory usage, is used to calculate each downgraded gear Mode_Level i,j Execute the average computing power required to obtain each downgraded gear Mode_Level i,j The corresponding gear computing power, gear computing power is expressed as Computing_Power i,j The gear computing power is not fixed, but can be dynamically updated with the status indicator data continuously reported by the recommendation engine 100A, thereby ensuring the accuracy of the gear computing power.
[0090] In some embodiments, the system computing power upper limit estimation submodule 100D-3 is used to read the required status indicator data from the storage module 100C, for example, to query the peak time slice (for example, 15 minutes) with the maximum system traffic and the CPU can maintain stable operation within a certain period of time in the past (for example, one week, half a month), and to count the total CPU time and memory consumed in the peak time slice as the system computing power upper limit. The system computing power upper limit is expressed as Computing_Power TThe upper limit of the system computing power is not fixed, but can be dynamically updated with the status indicator data continuously reported by the recommendation engine 100A, thereby ensuring the accuracy of the upper limit of the system computing power.
[0091] In some embodiments, after user level estimation submodule 100D-1 classifies user levels, decision module 100A-1 may formulate a corresponding downgrade mode combination for each user level. Decision module 100A-1 receives metrics such as CPU utilization, system available memory / memory consumption, and RT from acquisition module 100B to monitor whether downgrade conditions are met. If a downgrade condition is detected, decision module 100A-1 activates a service downgrade mechanism, determines a downgrade strategy, and transmits the downgrade strategy to recommendation model 100A-2. Recommendation model 100A-2 predicts and calculates the downgrade level that should be triggered by each user level, as indicated by the downgrade strategy, and then generates a recommendation result. If a downgrade condition is detected, decision module 100A-1 transmits a non-downgrade indication to recommendation model 100A-2. In response to the non-downgrade indication, recommendation model 100A-2 does not perform service downgrade, continues to execute the normal recommendation strategy, and provides feedback on the recommendation result.
[0092] In some embodiments, during downgrade debugging and downgrade recovery, it is involved to detect whether the current system load is less than or equal to the system load upper limit. Figure 5 , query the number of online users currently in each user level as R i ′, 1≤i≤N, calculate the total computing power required according to the gear computing power occupied by the currently selected degradation mode of each user level, that is, Computing_Power Z Indicates the total computing power currently required, Indicates the computing power of the downgrade mode currently selected by the i-th user level during downgrade debugging / downgrade recovery, k i Indicates the gear number of the downgrade mode currently selected by the i-th user level during downgrade debugging / downgrade recovery, 1≤k i ≤M i , M i represents the total number of degradation modes included in the i-th degradation mode combination, k i is a variable, k i It will change dynamically with the adjustment action during downgrade debugging / downgrade recovery. Z ≤Computing_Power T (System computing power upper limit), that is, it is detected that the current system load ≤ system load upper limit; if Computing_Power Z >Computing_Power T, that is, it is detected that the current system load exceeds the system load upper limit.
[0093] In some embodiments, based on Figure 14 Example server structure configuration, Figure 15 The recommendation interaction processing logic between the example terminal and the server involves offline processing logic on the server side and online processing logic between the server and the terminal device.
[0094] In some embodiments, reference Figure 15 The offline processing logic on the server side includes: the collection module 100B collects the status indicator data of the system operation and writes the status indicator data to the storage module 100C; the estimation module 100D classifies the user level and optionally writes the user level to Redis (Remote Dictionary Server, a remote dictionary service, equivalent to a database); the decision module 100A-1 can obtain the user level category from Redis and formulate a degradation mode combination corresponding to each user level; the estimation module 100D reads data from the storage module 100C, estimates the upper limit of the system computing power based on the total CPU time and memory consumed in the historical peak time slice, and estimates the gear computing power of each degradation gear based on the number of times each degradation gear is executed and the CPU time and memory consumed each time. Optionally, the upper limit of the system computing power and the gear computing power of each degradation gear are written to Redis, and the preliminary preparation work is completed.
[0095] In some embodiments, reference Figure 15 The online processing logic between the server and the terminal device includes: each terminal device 200 sends a recommendation request to the decision module 100A-1. In response to the recommendation request, the decision module 100A-1 obtains system operating status such as RT, CPU utilization, system memory usage, etc. from the collection module 100B, and determines whether the degradation conditions are met. If the degradation conditions are met, the degradation processing logic is executed; if not, the non-degradation processing logic is executed.
[0096] In some embodiments, reference Figure 15 The non-degradation processing logic is configured as follows: the decision module 100A-1 sends non-degradation indication information to the recommendation model 100A-2; the recommendation model 100A-2 responds to the non-degradation indication information, executes the normal recommendation strategy, and returns the recommendation result to the terminal device 200, and the terminal device 200 displays the recommendation result to the current terminal user.
[0097] In some embodiments, reference Figure 15The downgrade processing logic is configured as follows: the decision module 100A-1 obtains the system computing power limit, the computing power of each downgraded gear, and the number of online users currently in each user level R from Redis. i '; Then the decision module 100A-1 performs gear downgrade debugging in order of priority from low to high user levels until a downgrade strategy is finally matched; the decision module 100A-1 queries Redis for the user level of the current terminal user based on the user information of the current terminal user; the decision module 100A-1 notifies the recommendation model 100A-2 of the downgrade gear corresponding to the user level of the current terminal user; the recommendation model 100A-2 recalls and sorts according to the notified downgrade gear, and returns the output recommendation result to the terminal device 200, and the terminal device 200 displays the recommendation result to the current terminal user.
[0098] In some embodiments, the downgrade processing logic can be refined and divided into the downgrade debugging process executed when the downgrade is triggered to match the best downgrade strategy, and the downgrade recovery process after the triggering condition. Figure 15 The downgrade recovery process includes: the decision module 100A-1 adjusts the gear up and recovers in sequence according to the priority order of user levels from high to low in the lossy downgrade until the system computing power limit is reached or it is fully recovered. During this period, the downgrade strategy will be dynamically updated. The decision module 100A-1 needs to synchronize the recovery changes of the downgrade strategy to the recommendation model 100A-2. The recommendation model 100A-2 synchronously adjusts and switches the gear of the corresponding user level, and performs calculations according to the updated downgrade mode gear and returns the recommendation results.
[0099] In some embodiments, reference Figure 16 , the present application also provides a recommendation method executed by the server, the method comprising the following procedural steps:
[0100] Step S161: monitor whether the downgrade condition is met. If the downgrade condition is met, execute step S162; otherwise, if the downgrade condition is not met, execute step S165.
[0101] Step S162: query the user level of the current online user and the demotion mode combinations preset for different user levels. The demotion mode combinations have multiple levels of demotion modes.
[0102] Step S163: Determine a degradation strategy that matches the current operating state of the server. The degradation strategy indicates the gear of the degradation mode corresponding to each user level.
[0103] Step S164: After executing the downgrade strategy, corresponding recommendation information is sent to the terminal device of each online user.
[0104] Step S165: Execute the normal recommendation strategy and send the corresponding recommendation information to the terminal device of each online user. The normal recommendation strategy means that the downgrade mode corresponding to each user level is the highest level in the respective combination.
[0105] The method may also include offline processing logic executed on the server side, as well as a specific downgrade debugging scheme for determining the downgrade strategy in the online processing logic, and a downgrade recovery scheme, etc. These contents have been clearly described in the aforementioned embodiments. Please refer to the aforementioned embodiments for details and will not be repeated here.
[0106] This application mainly focuses on the processing logic on the server side, and the terminal device only needs to support the recommendation function, be able to communicate with the server, and display the recommendation information pushed by the server. This application does not impose any other restrictions on the category, software and hardware configuration of the terminal device. The software and hardware architecture and configuration of the server are not limited to the examples of the embodiments of this application. On the basis of the downgrade rules of this application, the configuration of downgrade policy matching, downgrade recovery, offline processing logic, and other processing links in the recommendation system can be modified and expanded to obtain feasible recommendations and downgrade solutions that adapt to more scenarios. In addition, the user level, downgrade mode combination, gear position and other identifiers involved in this application are merely exemplary expressions and do not constitute a limitation of the present invention.
[0107] In some embodiments, the present invention further provides a computer storage medium that can store a program. When the computer storage medium is located in the server 100, the program, when executed, can include program steps involved in the recommended method, downgrade debugging, and downgrade recovery mechanisms that the controller 101 is configured to execute. The computer storage medium can be a magnetic disk, an optical disk, a read-only memory (ROM), or a random access memory (RAM).
[0108] Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of the present application, rather than to limit them. Although the present application has been described in detail with reference to the aforementioned embodiments, those skilled in the art should understand that they can still modify the technical solutions described in the aforementioned embodiments, or make equivalent replacements for some or all of the technical features therein. These modifications or replacements do not deviate the essence of the corresponding technical solutions from the scope of the technical solutions of the embodiments of the present application.
[0109] For ease of explanation, the above description has been presented in conjunction with specific embodiments. However, the above exemplary discussion is not intended to be exhaustive or to limit the embodiments to the specific forms disclosed above. Based on the above teachings, various modifications and variations are possible. The above embodiments have been selected and described to better explain the content of this disclosure, thereby enabling those skilled in the art to better utilize the embodiments.
Claims
1. A server, characterized in that: include: Communicator, used for communication connection with terminal equipment; The controller is configured to execute: When monitoring that the downgrade conditions are met, the user level of the current online user and the downgrade mode combinations preset for different user levels are queried. The downgrade mode combinations are sorted into multiple levels of downgrade modes. The downgrade modes define the recall strategy and sorting strategy used to output recommendation information. The recall strategy is used to filter out recommended objects that meet user preferences from the candidate set. The recall strategy includes the size of the candidate set and the number and category of the recall channels opened. The sorting strategy is used to sort the recommended objects filtered by the recall strategy and then output the recommendation information. The sorting strategy includes the on / off status of the sorting strategy and the category of the sorting model called. Determine a degradation strategy that matches the current operating state of the server, wherein the degradation strategy indicates the gear of the degradation mode corresponding to each user level, wherein i In descending order of priority from N, i The order within the degradation mode combination is lowered in order. i The gear of the downgrade mode corresponding to each user level and update k i Where N is the total number of user level and degradation mode combinations, i Indicates the user's level sequence number after sorting from high to low. k i Indicates the i The gear number of the current degraded mode corresponding to the user level; until the current system load is reduced to less than or equal to the system load upper limit, if 1 < i <N and k i ≤M i , then configure the downgrade strategy as the previous i -1 user level corresponding to the downgrade mode is the highest gear in the respective combination, i The degradation mode corresponding to the user level is i The first in the degradation mode combination k i Gear, i +1~Nth user level corresponding to the lowest level in their respective combinations; i Indicates the i The total number of degradation modes included in the degradation mode combination; After the downgrade strategy is executed, corresponding recommendation information is sent to the terminal device of each online user.
2. The server according to claim 1, wherein: The controller is further configured to perform: When the downgrade condition is not met, a normal recommendation strategy is executed and corresponding recommendation information is sent to the terminal device of each online user; wherein, the normal recommendation strategy means that the downgrade mode corresponding to each user level is the highest gear in the respective combination.
3. The server according to claim 1, wherein: The controller is configured to determine the degradation strategy in the following manner: Until the current system load is reduced to less than or equal to the system load upper limit, if i =1 and k 1<M1, then configure the downgrade strategy as the downgrade mode corresponding to the first user level to be the first downgrade mode combination. k Level 1: The degradation mode corresponding to the 2nd to Nth user levels is the lowest level in their respective combinations; Or, until satisfied i is equal to 1 and k 1 is equal to M1, and the downgrade strategy is configured so that the downgrade modes corresponding to the N user levels are all the lowest gears in their respective combinations.
4. The server according to claim 1, wherein: The controller is configured to determine the degradation strategy in the following manner: Until the current system load is reduced to less than or equal to the system load upper limit, if i is equal to N and k N ≤M N , then configure the downgrade strategy as follows: the downgrade mode corresponding to the first N-1 user levels is the highest gear in their respective combinations, and the downgrade mode corresponding to the Nth user level is the first gear in the Nth downgrade mode combination. k N gear position.
5. The server according to any one of claims 1 to 4, characterized in that: The controller is further configured to perform: When the degrading condition is relieved, i The priority order of the value is increasing, according to i The order within the degradation mode combination is adjusted upwards in order i The gear of the degradation mode corresponding to each user level is restored until the current system load rises to the system load upper limit, or until the degradation modes corresponding to N user levels are all restored to the highest gear in their respective combinations.
6. The server according to any one of claims 1 to 4, characterized in that: The controller is configured to perform: Calculate the total computing power required based on the number of online users at each user level and the computing power occupied by the currently selected downgrade mode for each user level. If the currently required total computing power is less than or equal to the upper limit of the system computing power, it is determined that the current system load is less than or equal to the upper limit of the system load.
7. The server according to claim 5, wherein: The controller is further configured to perform: Compare the system's current timeout request ratio with the preset threshold; If the timeout request ratio is greater than the preset threshold, it is recognized that the degradation condition is met.
8. A recommendation method, characterized in that: The method comprises: When monitoring that the downgrade conditions are met, the user level of the current online user and the downgrade mode combinations preset for different user levels are queried. The downgrade mode combinations are sorted into multiple levels of downgrade modes. The downgrade modes define the recall strategy and sorting strategy used to output recommendation information. The recall strategy is used to filter out recommended objects that meet user preferences from the candidate set. The recall strategy includes the size of the candidate set and the number and category of the recall channels opened. The sorting strategy is used to sort the recommended objects filtered by the recall strategy and then output the recommendation information. The sorting strategy includes the on / off status of the sorting strategy and the category of the sorting model called. Determine a downgrade strategy that matches the current operating state of the server, wherein the downgrade strategy indicates the gear of the downgrade mode corresponding to each user level, wherein i In descending order of priority from N, i The order within the degradation mode combination is lowered in order. i The gear of the downgrade mode corresponding to each user level and update k i Where N is the total number of user level and degradation mode combinations, i Indicates the user's level sequence number after sorting from high to low. k i Indicates the i The gear number of the current degraded mode corresponding to the user level; until the current system load is reduced to less than or equal to the system load upper limit, if 1 < i <N and k i ≤M i , then configure the downgrade strategy as the previous i -1 user level corresponding to the downgrade mode is the highest gear in the respective combination, i The degradation mode corresponding to the user level is i The first in the degradation mode combination k i Gear, i +1~Nth user level corresponding to the lowest level in their respective combinations; i Indicates the i The total number of degradation modes included in the degradation mode combination; After the downgrade strategy is executed, corresponding recommendation information is sent to the terminal device of each online user.
Citation Information
Patent Citations
User flow control device
CN109756426A
Recommendation strategy generation method and device, computer equipment and storage medium
CN111611480A