Method and apparatus for displaying a product abstract
By receiving product identifiers and source channels, obtaining display volume, and updating product summaries when conditions are met, the problem of untimely updates to product summaries on e-commerce platforms is solved, achieving efficient and accurate product information display.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- BAIDU COM TIMES TECH (BEIJING) CO LTD
- Filing Date
- 2022-11-28
- Publication Date
- 2026-07-21
AI Technical Summary
The lack of timely updates to product summaries on existing e-commerce platforms leads to incorrect information recommendations to users, resulting in resource waste and inaccurate information.
By receiving product identifiers and source channels, the system obtains display volume and updates product summaries when conditions are met. It leverages the Elastic Scheduling Alliance API and remote dictionary service to improve update frequency and accuracy while reducing computation time.
It improved the timeliness and accuracy of product summaries, reduced the error rate, made reasonable use of resource quotas, increased the update frequency of high-display products, and avoided resource waste.
Smart Images

Figure CN115860862B_ABST
Abstract
Description
Technical Field
[0001] This disclosure relates to the field of data processing technology, and in particular to the field of intelligent search and other technologies, which can be applied in scenarios such as business search and business empowerment. Background Technology
[0002] Currently, all e-commerce platforms offer affiliate open platform capabilities, commonly known as affiliate application programming interfaces (APIs), which allow product promoters to access product details. However, when external product promotion services are used to promote e-commerce products, they must consider product summaries such as price, inventory, discounts, and even commission rates. If these product summaries are not updated in a timely manner, it may lead to incorrect information being recommended to users.
[0003] Therefore, improving the timeliness and accuracy of product summaries, avoiding waste of resources, and increasing the flexibility of updating product summaries has become one of the important research directions. Summary of the Invention
[0004] This disclosure provides a method and apparatus for displaying product summaries.
[0005] According to one aspect of this disclosure, a method for displaying product summaries is provided.
[0006] Receive the first product identifier and product origin channel of the target product sent by the second server;
[0007] Based on the first product identifier and the product's source channel, obtain the target product's first display volume within a preset time period;
[0008] When the first display volume meets the product information update conditions, the updated information of the target product is obtained based on the first product identifier and the product source channel, and the updated information of the target product is sent to the second server. The updated information is used to update the product summary of the target product.
[0009] According to another aspect of this disclosure, a method for displaying product summaries is provided.
[0010] Obtain the primary product identifier and product origin of the target product;
[0011] Based on the first product identifier and product source channel, obtain the first product summary of the target product;
[0012] Send the first product identifier and product source channel to the first server, and listen for updates to the target product sent by the first server;
[0013] In response to receiving an update message from the first server, the target product is displayed based on the first product summary and the update message.
[0014] The embodiments disclosed herein can improve the timeliness and accuracy of product summaries, reduce the error rate and bad cases of product display information, increase the flexibility of updating product summaries, maximize the update frequency of high-display products under the premise of limited resource quotas, reduce computation time, avoid wasting resources, and make reasonable and full use of resource quotas.
[0015] According to another aspect of this disclosure, a product summary display device is provided.
[0016] The receiving module is used to receive the first product identifier and product source channel of the target product sent by the second server;
[0017] The acquisition module is used to acquire the first display volume of the target product within a preset time period based on the first product identifier and the product source channel;
[0018] The processing module is used to obtain the updated information of the target product based on the first product identifier and the product source channel when the first display volume meets the product information update conditions, and send the updated information of the target product to the second server. The updated information is used to update the product summary of the target product.
[0019] According to another aspect of this disclosure, a product summary display device is provided.
[0020] The first acquisition module is used to acquire the first product identifier and the product source channel of the target product;
[0021] The second acquisition module is used to acquire the first product summary of the target product based on the first product identifier and the product source channel;
[0022] The processing module is used to send the first product identifier and product source channel to the first server, and to listen for updates to the target product sent by the first server;
[0023] The display module is used to respond to the update information sent by the first server and display the target product based on the first product summary and the update information.
[0024] According to one aspect of this disclosure, an electronic device is proposed, comprising at least one processor, and
[0025] A memory that is communicatively connected to at least one processor; wherein,
[0026] The memory stores instructions that can be executed by at least one processor to enable the at least one processor to perform the product summary display method according to the first aspect of this disclosure.
[0027] According to one aspect of this disclosure, an electronic device is proposed, comprising at least one processor, and
[0028] A memory that is communicatively connected to at least one processor; wherein,
[0029] The memory stores instructions that can be executed by at least one processor to enable the at least one processor to perform the product summary display method according to the second aspect of this disclosure.
[0030] According to one aspect of this disclosure, a non-transitory computer-readable storage medium storing computer instructions is provided, wherein the computer instructions are used to cause a computer to execute a method for displaying a product summary according to an embodiment of the first aspect of this disclosure.
[0031] According to one aspect of this disclosure, a non-transitory computer-readable storage medium storing computer instructions is provided, wherein the computer instructions are used to cause a computer to execute a method for displaying a product summary according to an embodiment of a second aspect of this disclosure.
[0032] According to one aspect of this disclosure, a computer program product is provided, including a computer program that, when executed by a processor, implements the steps of a method for displaying a product summary according to an embodiment of the first aspect of this disclosure.
[0033] According to one aspect of this disclosure, a computer program product is provided, including a computer program that, when executed by a processor, implements the steps of a method for displaying a product summary according to an embodiment of a second aspect of this disclosure.
[0034] It should be understood that the description in this section is not intended to identify key or essential features of the embodiments of this disclosure, nor is it intended to limit the scope of this disclosure. Other features of this disclosure will become readily apparent from the following description. Attached Figure Description
[0035] The accompanying drawings are provided to better understand this solution and do not constitute a limitation of this disclosure. Wherein:
[0036] Figure 1 This is a flowchart of a method for displaying a product summary according to an embodiment of the present disclosure;
[0037] Figure 2 This is a flowchart of a method for displaying a product summary according to an embodiment of the present disclosure;
[0038] Figure 3 This is a flowchart of a method for displaying a product summary according to an embodiment of the present disclosure;
[0039] Figure 4 This is a flowchart of a method for displaying a product summary according to an embodiment of the present disclosure;
[0040] Figure 5This is a flowchart of a method for displaying a product summary according to an embodiment of the present disclosure;
[0041] Figure 6 This is a flowchart of a method for displaying a product summary according to an embodiment of the present disclosure;
[0042] Figure 7 This is a flowchart of a method for displaying a product summary according to an embodiment of the present disclosure;
[0043] Figure 8 This is a flowchart of a method for displaying a product summary according to an embodiment of the present disclosure;
[0044] Figure 9 This is a flowchart of a method for displaying a product summary according to an embodiment of the present disclosure;
[0045] Figure 10 This is a structural diagram of a product summary display device according to an embodiment of the present disclosure;
[0046] Figure 11 This is a structural diagram of a product summary display device according to an embodiment of the present disclosure;
[0047] Figure 12 This is a block diagram of an electronic device used to implement embodiments of the present disclosure. Detailed Implementation
[0048] The exemplary embodiments of this disclosure are described below with reference to the accompanying drawings, including various details of the embodiments to aid understanding, and should be considered merely exemplary. Therefore, those skilled in the art will recognize that various changes and modifications can be made to the embodiments described herein without departing from the scope and spirit of this disclosure. Similarly, for clarity and brevity, descriptions of well-known functions and structures are omitted in the following description.
[0049] To better understand this disclosure, the following describes the fields covered by this disclosure.
[0050] Data processing is a fundamental component of systems engineering and automatic control. It permeates all aspects of social production and life. The development of data processing technology and the breadth and depth of its applications have profoundly influenced the progress of human society.
[0051] Data is a form of expression of facts, concepts, or instructions, which can be processed by humans or automated devices. After being interpreted and given meaning, data becomes information. Data processing encompasses the acquisition, storage, retrieval, processing, transformation, and transmission of data.
[0052] The fundamental purpose of data processing is to extract and deduce data that is valuable and meaningful to certain specific people from large amounts of data that may be messy and difficult to understand.
[0053] In addition to traditional functions such as fast retrieval and relevance ranking, intelligent search also offers features like user role registration, automatic user interest identification, semantic understanding of content, intelligent information filtering, and push notifications. Intelligent search's intelligent analysis of query conditions mainly includes: extracting effective components from query conditions, including vocabulary and logical relationships; and building an e-commerce knowledge base to obtain synonyms, near-synonyms, and related words for keywords.
[0054] Figure 1 This is a flowchart of a method for displaying a product summary according to an embodiment of this disclosure, such as... Figure 1 As shown, the method is executed by the first server and includes the following steps:
[0055] S101, receive the first product identifier and product source channel of the target product sent by the second server.
[0056] In this embodiment, the first server is a service backend (B-end), which can be understood as a backend server that processes product data. The second server is a client-side (C-end) server, such as displaying data on a mobile phone page. The C-end service is responsible for efficiently responding to user queries and displaying the results. The B-end and C-end cooperate with each other, with the B-end providing basic data and processing capabilities, and the C-end providing timely data response capabilities. In this embodiment, the server can be an electronic device such as a personal computer or a PDA; this disclosure does not limit its use.
[0057] In some implementations, the second server may face multiple e-commerce platforms. It can match the first product identifier (Identity Document, ID) of products from all product source channels based on user profiles to obtain similarity. Products with similarity greater than a similarity threshold are identified as target products. The server then obtains the first product identifier and product source channel of the target product and sends the first product identifier and product source channel of the target product to the first server through a distributed data transmission system. The first server receives the first product identifier and product source channel of the target product sent by the second server.
[0058] S102, based on the first product identifier and the product source channel, obtain the first display volume of the target product within a preset time period.
[0059] In this embodiment of the disclosure, based on the local cache records of the product source channel, the first product identifier, and the historical display volume of each product, the first display volume of the target product within a preset time period can be obtained from the local cache based on the first product identifier and the product source channel of the target product.
[0060] In some implementations, products from different product sources have different cache blocks in the local cache. The target cache block of the target product can be determined based on the product source of the target product, and then the first display volume of the target product within a preset time period can be obtained from the target cache block of the local cache based on the first product identifier of the target product.
[0061] In some implementations, the preset duration can be within one day or 12 hours; this disclosure does not impose any restrictions on this. Optionally, the display volume of a product includes the product ID and the number of times the product is displayed.
[0062] S103, when the first display volume meets the product information update conditions, obtain the updated information of the target product based on the first product identifier and the product source channel, and send the updated information of the target product to the second server. The updated information is used to update the product summary of the target product.
[0063] With massive traffic and hundreds of millions of promoted products, the number of impressions for different products will inevitably vary, exhibiting a clear long-tail distribution: high-impression products are few and concentrated, while low-impression products are numerous and scattered. To maximize the update frequency of high-impression products within the constraints of affiliate API quotas and to make the most of the quota, it's necessary to flexibly schedule affiliate API updates for product information based on the initial impressions of the target product. In other words, when the initial impressions meet the conditions for updating product information, the affiliate API should be scheduled to retrieve the updated information for the target product based on the first product identifier and its source channel.
[0064] In some implementations, the update time interval of each target product can be obtained based on the first display volume of the target product. Whenever the time of the last update of the product summary of the target product reaches a finer time interval, it is determined that the first display volume meets the product information update condition. Based on the first product identifier and the product source channel, the update information of the target product is obtained and sent to the second server through a distributed data transmission system.
[0065] Optionally, the product summary is the product's variable field, including variable information such as product price, inventory, shelf status, sales volume, and coupons.
[0066] In this embodiment, the system receives a first product identifier and product source channel of the target product sent by a second server; based on the first product identifier and product source channel, it obtains a first display volume of the target product within a preset time period; when the first display volume meets the product information update conditions, it obtains the updated information of the target product based on the first product identifier and product source channel, and sends the updated information of the target product to the second server. This embodiment can improve the timeliness and accuracy of product summaries, reduce the error rate and bad case of product display information, improve the flexibility of updating product summaries, and, under the premise of limited resource quotas, maximize the update frequency of high-display products, reduce computation time, avoid wasting resources, and make reasonable and full use of resource quotas.
[0067] Figure 2 This is a flowchart of a method for displaying a product summary according to an embodiment of this disclosure, such as... Figure 2 As shown, the method is executed by the first server and includes the following steps:
[0068] S201, Obtain the Uniform Resource Locator (URL) of the target product based on the first product identifier and the product source channel.
[0069] In this embodiment of the disclosure, taking platform A as an example, the Uniform Resource Locator (URL) of platform A is obtained through the first product identifier.
[0070] S202, Obtain the second product identifier of the target product based on the Uniform Resource Locator.
[0071] Obtain the second product identifier of the target product in platform A based on the Uniform Resource Locator.
[0072] S203, based on the second product identifier, call the target application programming interface API corresponding to the product source channel to obtain the updated information of the target product.
[0073] The affiliate API is called based on the second product identifier of the target product on platform A to obtain the product details, which is the updated information of the target product. This can include information from the product summary, such as product price, inventory, listing status, sales volume, coupons, and other volatile information.
[0074] In this embodiment, a Uniform Resource Locator (URL) for the target product is obtained based on a first product identifier and the product's source channel. A second product identifier for the target product is then obtained based on the URL. Finally, the target application programming interface (API) corresponding to the product's source channel is invoked based on the second product identifier to obtain the target product's update information. This embodiment can improve the timeliness and accuracy of product summaries, reduce the error rate and bad cases in product display information, increase the flexibility of updating product summaries, and, under the premise of limited resource quotas, maximize the update frequency of high-display products, reduce computation time, avoid wasting resources, and rationally and fully utilize resource quotas.
[0075] Figure 3 This is a flowchart of a method for displaying a product summary according to an embodiment of this disclosure, such as... Figure 3 As shown, the process of determining whether the first display quantity meets the product information update conditions includes:
[0076] S301, obtain the second display volume of all products displayed by the second server within a preset time period.
[0077] In this embodiment of the disclosure, "all goods" refers to all goods from each source channel.
[0078] Given the limited API quota of the alliance, this embodiment aims to maximize the update frequency of high-display products and make reasonable and full use of resource quotas. The second display volume of all products displayed by the second server within a preset time period can be obtained using the following formula:
[0079] PV N =∑ n∈N PV n
[0080] Among them, PV N This indicates the second number of impressions, PV. n This represents the number of times the nth product in set N is displayed within a preset time period, where N represents the set of products displayed by the second server within the preset time period, and n represents the nth product in set N.
[0081] S302, based on the fixed quota corresponding to the second display volume and the product source channel, obtain the product update rate.
[0082] Alternatively, the product update rate can be obtained using the following formula:
[0083] R = Qt / PV N
[0084] Where R represents the product update rate of the target product, and Qt represents the fixed quota corresponding to the product source channel within a preset time.
[0085] S303: Obtain the update time interval of the target product based on the product update rate and the first display volume.
[0086] Taking a projected duration of one day as an example, the number of times a target product will trigger an update each day can be obtained using the following formula:
[0087] Trigger_count1 = PV1 * R
[0088] Here, PV1 represents the first impression count of the target product, and Trigger_count1 represents the number of times the target product is triggered to update per day.
[0089] Optionally, the update time interval for the target product can be obtained using the following formula:
[0090] Trigger_period1=Ts / Trigger_count 1=Ts*R / PV1
[0091] Where Trigger_period1 represents the update interval of the target product, and Ts represents the time of day divided into seconds, i.e., 24*3600s.
[0092] S304, determine whether the first display volume meets the product information update conditions based on the update time interval of the target product.
[0093] Obtain the first timestamp of the last updated product summary for the target product and the second timestamp of the current time, and obtain the update time difference between the first and second timestamps. If the update time difference is greater than the update time interval of the target product, and the first display volume is greater than a preset first display volume threshold, determine that the first display volume meets the product information update conditions.
[0094] In this embodiment, to improve accuracy, the daily display PV1 of the target product can be estimated. The product update rate R can be observed from the product display volume over multiple days and supports dynamic modification. Therefore, the problem of determining whether the product information update condition is met is transformed into the problem of estimating the daily display PV1 of the target product. First, it is assumed that the target product is displayed evenly throughout the day, dividing the day into M time windows, where M is an integer greater than 1. Simultaneously, the cumulative display volume within each time window is denoted as WPVmn. Therefore, the estimated daily display volume PV1 of the target product is:
[0095] PV1=∑ m∈M WPVmn = WPVmn * M
[0096] Meanwhile, considering that the daily display volume of the same product does not vary much, and that the PV1 volume may not be completely uniform in a certain window, yesterday's PV1 was used to revise the estimated value. That is:
[0097] PV1 = max{WPVmn*M, LPVn}
[0098] Where LPVn is the number of times the target product was displayed yesterday, and max{...} represents the operation of taking the maximum value.
[0099] Therefore, the specific fields of the trigger update mechanism design based on local caching are shown in Table 1:
[0100] Table 1
[0101]
[0102]
[0103] In some implementations, in response to the target product stopping display, the duration of the target product's non-display period is obtained, and the update interval of the target product is extended according to the preset time range in which the non-display period falls. For example, each time the first display volume is determined to meet the product information update conditions based on the update interval of the target product, the product summary of the target product is updated, and the update interval of the target product is extended to a multiple of the current update interval. Optionally, the update interval of the target product can be extended to twice the current update interval.
[0104] In this embodiment, a second display volume of all products displayed by the second server within a preset time period is obtained. Based on the second display volume and the fixed quota corresponding to the product source channel, the product update rate is obtained. Based on the product update rate and the first display volume, the update time interval of the target product is obtained. Based on the update time interval of the target product, it is determined whether the first display volume meets the product information update conditions. This embodiment can improve the timeliness and accuracy of product summaries, reduce the error rate and bad cases of product display information, improve the flexibility of updating product summaries, and, under the premise of limited resource quotas, maximize the update frequency of high-display products, reduce computation time, avoid wasting resources, and rationally and fully utilize resource quotas.
[0105] Figure 4 This is a flowchart of a method for displaying a product summary according to an embodiment of this disclosure, such as... Figure 4 As shown, this method is executed by a second server and includes the following steps:
[0106] S401, Obtain the first product identifier and product source channel of the target product.
[0107] In this embodiment, the first server is a service backend (B-end), which can be understood as a backend server that processes product data. The second server is a client-side (C-end) server, such as displaying data on a mobile phone page. The C-end service is responsible for efficiently responding to user queries and displaying the results. The B-end and C-end cooperate with each other, with the B-end providing basic data and processing capabilities, and the C-end providing timely data response capabilities. In this embodiment, the server can be an electronic device such as a personal computer or a PDA; this disclosure does not limit its use.
[0108] In some implementations, the second server may face multiple e-commerce platforms. It can match the first product identifier (Identity Document, ID) of products from all product source channels based on user profiles to obtain similarity. Products with similarity greater than the similarity threshold are identified as target products, and the first product identifier and product source channel of the target product are obtained.
[0109] S402, based on the first product identifier and the product source channel, obtain the first product summary of the target product.
[0110] Direct access to the alliance API or even the database (DB) can result in significant latency issues. This disclosure improves the interface response time by introducing a remote dictionary service (Redis) technology. Additionally, it adds a product origin field (product source channel) to identify the e-commerce platform from which the product originates, enhancing scalability across various e-commerce platforms.
[0111] In some implementations, a remote dictionary service is queried using the first product identifier and product source channel as indexes to obtain the index content corresponding to the first product identifier and product source channel. The index content corresponding to the first product identifier and product source channel is then determined as the first product summary of the target product.
[0112] In some implementations, products from different product sources have different cache blocks in the local cache. The target cache block of the target product can be determined based on the product source of the target product, and then the first display volume of the target product within a preset time period can be obtained from the target cache block of the local cache based on the first product identifier of the target product.
[0113] S403, send the first product identifier and product source channel to the first server, and listen for updates to the target product sent by the first server.
[0114] The second server sends the first product identifier and product origin channel of the target product to the first server through a distributed data transmission system. The first server receives the first product identifier and product origin channel of the target product sent by the second server.
[0115] In some implementations, the first server queries the updated information of the target product based on the first product identifier and the product's source channel, and sends the updated information of the target product to the second server when the product information update conditions are met.
[0116] S404, in response to receiving update information sent by the first server, displays the target product based on the first product summary and the update information.
[0117] In response to receiving update information from the first server, the system incrementally updates the first product summary based on the update information to obtain a second product summary for the target product. That is, the update information is compared with the first summary to obtain the incremental data that needs updating, and the first product summary is incrementally updated based on this incremental data. Then, the target product is displayed based on the second product summary. Optionally, the product summary is a variable field for the product, including variable information such as product price, inventory, shelf status, sales volume, and coupons. In implementation, variable information such as product inventory may change constantly. In this embodiment, displaying the target product based on the first product summary and the update information can improve the timeliness of the product summary.
[0118] In some implementations, a preset display template for the target product is obtained, and the content of the display template is filled in according to the second product summary to obtain the display information of the target product. The target product is then displayed according to the display information of the target product.
[0119] In some implementations, after receiving subsequent update information, the position of the incremental data that needs to be updated in the displayed information is obtained. Based on the position of the incremental data in the displayed information, the content at that position is updated with the content of the incremental data, thereby updating the displayed information.
[0120] In some implementations, it is also necessary to synchronously update the first product summary of the target product in the remote dictionary service. In this embodiment of the disclosure, the first product summary of the target product in the remote dictionary service is updated according to the second product summary. That is, the first product summary of the target product in the remote dictionary service is updated to the second product summary of the target product.
[0121] In this embodiment, a first product identifier and product source channel of the target product are obtained; a first product summary of the target product is obtained based on the first product identifier and product source channel; the first product identifier and product source channel are sent to a first server, and the update information of the target product sent by the first server is monitored; in response to the monitored update information sent by the first server, the target product is displayed based on the first product summary and the update information. This disclosure can improve the timeliness and accuracy of product summaries, reduce the error rate and bad case of product display information, improve the flexibility of updating product summaries, and, under the premise of limited resource quotas, maximize the update frequency of high-display products, reduce computation time, avoid wasting resources, and make reasonable and full use of resource quotas.
[0122] Figure 5 This is a flowchart of a method for displaying a product summary according to an embodiment of this disclosure, such as... Figure 5 As shown, this method is executed by a second server and includes the following steps:
[0123] S501, Obtain the first product identifier and product source channel of the target product.
[0124] S502, based on the first product identifier and the product source channel, obtain the first product summary of the target product.
[0125] S503 sends the first product identifier and product source channel to the first server, and listens for updates to the target product sent by the first server.
[0126] For details regarding steps S501 to S503, please refer to the relevant descriptions in the above embodiments; they will not be repeated here.
[0127] S504, in response to not receiving any update information for the target product from the first server, displays the target product based on the first product summary of the target product.
[0128] In some implementations, if an update to the target product is detected by the first server, the target product is displayed based on the first product summary and the update information. If no update to the target product is detected by the first server, the target product is still displayed based on the first product summary.
[0129] In this embodiment of the disclosure, when no update information of the target product sent by the first server is detected, a preset display template of the target product is obtained, the display template is filled with content according to the first product summary, the display information of the target product is obtained, and the target product is displayed according to the display information of the target product.
[0130] This disclosure responds to the absence of detected update information for the target product sent by the first server by displaying the target product based on its first product summary. This disclosure can improve the timeliness and accuracy of the product summary, reduce the error rate and bad cases in the displayed product information, increase the flexibility of updating the product summary, and, under the premise of limited resource quotas, maximize the update frequency of frequently displayed products, reduce computation time, avoid wasting resources, and make reasonable and full use of resource quotas.
[0131] Figure 6 This is a schematic diagram of a method for displaying a product summary according to an embodiment of this disclosure, such as... Figure 6 As shown in this embodiment, the first server includes an elastically triggered update module, a product capture and update module, and a product management and distribution module. The second server includes a product promotion service and a high-timeliness API module. The product promotion service accesses the high-timeliness API module through the product identifier and product source channel of the product to be displayed. After receiving the product identifier and product source channel, the high-timeliness API module queries the remote dictionary service (Redis) based on the product identifier and product source channel to obtain a product summary, such as price, inventory, listing status, commission ratio, etc. On the other hand, the high-timeliness API module sends the product identifier and product source channel of the product to be displayed to the elastically triggered update module. The module mainly consists of two parts: a local cache (Caffeine) and an elastically triggered update model. The Caffeine cache is used to accumulate the number of product impressions today and record the number of product impressions yesterday, the timestamp of the most recent update, and the estimated time interval for the next update. The elastically triggered update model is used to traverse the Caffeine cache to calculate whether the number of product impressions meets the product information update conditions, and sends the product identifiers that meet the product information update conditions to the product crawling and update module. The product crawling and update module calls the alliance API to obtain product update information and updates the product update information to Redis and the database respectively. The product promotion service displays the products to be displayed based on the product summary and / or product update information.
[0132] Optionally, the interaction information between the modules can be transmitted through a distributed data transmission system to decouple the interaction between the modules, reduce the mutual influence between the modules, and enhance their independence and stability.
[0133] In this embodiment, the use of Redis caching technology significantly reduces the response time of the product promotion service in obtaining product summaries, improving the response time and frequency response capability of high-timeliness interfaces. The use of Caffeine technology, based on memory caching, accumulates the number of product displays and calculates the timing of triggering updates, greatly reducing computation time. The use of the elastic trigger update model effectively schedules the timing of trigger updates based on both resource quotas and display volume, making it more flexible and efficient.
[0134] The following is combined with Figure 7 The Caffeine caching mechanism and elastically triggered update model of the embodiments of this disclosure are further explained. Figure 7 The overall execution flow of the elastic scheduling module is illustrated. Using Caffeine caching as a medium, this module mainly consists of three tasks. Tasks 1 and 3 update the product display volume. Task 2 implements the update model triggered by display volume. Task 1 accumulates the display volume by subscribing to display data, receiving product identifiers and display data corresponding to product source channels. Based on the product source channel, it determines the target cache block for the product in the local cache and records the display data, including the display volume and corresponding timestamp, in the target cache block. Task 2 triggers product updates by routinely checking whether a product meets the update conditions at window intervals. The set of product identifiers that meet the update conditions is then sent to the product capture and update module. Task 3 records yesterday's display volume and routinely updates the display volume of all products in the local cache at a set time. Optionally, each 2-minute window interval is divided into 720 windows per day. The daily display volume is estimated using the window display volume for each product, thus obtaining the update trigger interval for that product.
[0135] In implementation, there might be instances where a displayed product suddenly becomes undisplayed. To prevent the product from becoming unavailable, the update trigger interval for that product will be doubled. This delays the time it takes for the product to be updated, but ensures it will be updated in the future. By continuously increasing the trigger interval, the goal of triggering update decay is achieved. For example... Figure 8 As shown, if the products in the local cache are traversed, and there is a product whose last update time and current time are greater than the corresponding update time interval, it is determined that the currently traversed product needs to be updated. If the product is not currently displayed, update decay is triggered, the update time interval corresponding to the product is extended to twice, and the product identifier and product source channel of the product are sent to the product capture and update module to update the product summary.
[0136] In some implementations, products with low or no visibility may experience a cold start issue when first displayed. For such products, this embodiment addresses this cold start problem by periodically re-pushing the entire dataset through the product crawling and updating module. This ensures the accuracy of most product data. Figure 9 As shown, the product capture and update module obtains all product identifiers to be updated to get product summaries. Based on the product's source channel, it maps product IDs to e-commerce platform product IDs, filters out valid e-commerce platform product IDs, and calls the affiliate API based on these valid e-commerce platform product IDs to obtain product update information. The product update information and product summaries are then updated in the remote dictionary service and database. Finally, the product management and distribution module pushes the product update information back to the product recommendation service. Optionally, if the e-commerce platform product ID cannot be obtained from the details page URL, it is determined to be an invalid e-commerce platform product ID; otherwise, it is a valid e-commerce platform product ID. For example, if the product details page link URL is a redirected link or a dead link, the e-commerce platform product ID is determined to be invalid.
[0137] The embodiments disclosed herein can improve the timeliness and accuracy of product summaries, reduce the error rate and bad case of product display information, improve the flexibility of updating product summaries, and, under the premise of limited resource quotas, maximize the update frequency of high-display products, reduce computation time, avoid wasting resources, and make reasonable and full use of resource quotas.
[0138] The collection, storage, use, processing, transmission, provision, and disclosure of user personal information involved in the technical solution disclosed herein comply with the provisions of relevant laws and regulations and do not violate public order and good morals.
[0139] Figure 10 This is a structural diagram of a product summary display device according to an embodiment of the present disclosure, such as... Figure 10 As shown, the product summary display device 1000 includes:
[0140] The receiving module 1010 is used to receive the first product identifier and product source channel of the target product sent by the second server;
[0141] The acquisition module 1020 is used to acquire the first display volume of the target product within a preset time period based on the first product identifier and the product source channel;
[0142] The processing module 1030 is used to obtain the updated information of the target product based on the first product identifier and the product source channel when the first display volume meets the product information update conditions, and send the updated information of the target product to the second server. The updated information is used to update the product summary of the target product.
[0143] In some implementations, the processing module 1030 is also used to: obtain the Uniform Resource Locator (URL) of the target product based on the first product identifier and the product source channel; obtain the second product identifier of the target product based on the URL; and call the target application programming interface (API) corresponding to the product source channel based on the second product identifier to obtain the updated information of the target product.
[0144] In some implementations, the processing module 1030 is also used to: obtain the second display volume of all products displayed by the second server within a preset time period; obtain the product update rate based on the fixed quota corresponding to the second display volume and the product source channel; obtain the update time interval of the target product based on the product update rate and the first display volume; and determine whether the first display volume meets the product information update conditions based on the update time interval of the target product.
[0145] In some implementations, the processing module 1030 is further configured to: obtain the first timestamp of the last updated product summary of the target product and the second timestamp of the current time, and obtain the update time difference between the first timestamp and the second timestamp; in response to the update time difference being greater than the update time interval of the target product and the first display volume being greater than the preset first display volume threshold, determine that the first display volume meets the product information update conditions.
[0146] In some implementations, the processing module 1030 is also used to: in response to the target product stopping display, obtain the duration of the target product not being displayed; and extend the update interval of the target product according to the preset time range in which the duration of the non-display period falls.
[0147] In some implementations, the acquisition module 1020 is also used to: determine the target cache block of the target product cached locally based on the product source channel of the target product; and obtain the first display volume of the target product from the target cache block cached locally based on the first product identifier of the target product.
[0148] The embodiments disclosed herein can improve the timeliness and accuracy of product summaries, reduce the error rate and bad case of product display information, improve the flexibility of updating product summaries, and, under the premise of limited resource quotas, maximize the update frequency of high-display products, reduce computation time, avoid wasting resources, and make reasonable and full use of resource quotas.
[0149] Figure 11 This is a structural diagram of a product summary display device according to an embodiment of the present disclosure, such as... Figure 10 As shown, the product summary display device 1100 includes:
[0150] The first acquisition module 1110 is used to acquire the first product identifier and product source channel of the target product;
[0151] The second acquisition module 1120 is used to acquire the first product summary of the target product based on the first product identifier and the product source channel;
[0152] The processing module 1130 is used to send the first product identifier and product source channel to the first server, and to listen for the update information of the target product sent by the first server;
[0153] The display module 1140 is used to respond to the update information sent by the first server and display the target product based on the first product summary and the update information.
[0154] In some implementations, the display module 1140 is also used to: incrementally update the first product summary based on the update information to obtain the second product summary of the target product; and display the target product based on the second product summary.
[0155] In some implementations, the display module 1140 is also used to: obtain a preset display template of the target product; fill the display template with content according to the second product summary to obtain the display information of the target product; and display the target product according to the display information of the target product.
[0156] In some implementations, the display module 1140 is also used to: display the target product based on the first product summary of the target product in response to not listening to the update information of the target product sent by the first server.
[0157] In some implementations, the second acquisition module 1120 is further configured to: query a remote dictionary service using the first product identifier and the product source channel as indexes to obtain the index content corresponding to the first product identifier and the product source channel; and determine the index content corresponding to the first product identifier and the product source channel as the first product summary of the target product.
[0158] In some implementations, the display module 1140 is also used to update the first product summary of the target product in the remote dictionary service based on the second product summary of the target product.
[0159] The embodiments disclosed herein can improve the timeliness and accuracy of product summaries, reduce the error rate and bad case of product display information, improve the flexibility of updating product summaries, and, under the premise of limited resource quotas, maximize the update frequency of high-display products, reduce computation time, avoid wasting resources, and make reasonable and full use of resource quotas.
[0160] According to embodiments of this disclosure, this disclosure also provides an electronic device, a readable storage medium, and a computer program product.
[0161] Figure 12A schematic block diagram of an example electronic device 1200 that can be used to implement embodiments of the present disclosure is shown. The electronic device is intended to represent various forms of digital computers, such as laptop computers, desktop computers, workstations, personal digital assistants, servers, blade servers, mainframe computers, and other suitable computers. The electronic device may also represent various forms of mobile devices, such as personal digital processors, cellular phones, smartphones, wearable devices, and other similar computing devices. The components shown herein, their connections and relationships, and their functions are merely illustrative and are not intended to limit the implementation of the present disclosure described and / or claimed herein.
[0162] like Figure 12 As shown, device 1200 includes a computing unit 1201, which can perform various appropriate actions and processes according to a computer program stored in read-only memory (ROM) 1202 or a computer program loaded from storage unit 1208 into random access memory (RAM) 1203. The RAM 1203 may also store various programs and data required for the operation of device 1200. The computing unit 1201, ROM 1202, and RAM 1203 are interconnected via bus 1204. Input / output (I / O) interface 1205 is also connected to bus 1204.
[0163] Multiple components in device 1200 are connected to I / O interface 1205, including: input unit 1206, such as keyboard, mouse, etc.; output unit 1207, such as various types of monitors, speakers, etc.; storage unit 1208, such as disk, optical disk, etc.; and communication unit 1209, such as network card, modem, wireless transceiver, etc. Communication unit 1209 allows device 1200 to exchange information / data with other devices through computer networks such as the Internet and / or various telecommunications networks.
[0164] The computing unit 1201 can be various general-purpose and / or special-purpose processing components with processing and computing capabilities. Some examples of the computing unit 1201 include, but are not limited to, a central processing unit (CPU), a graphics processing unit (GPU), various special-purpose artificial intelligence (AI) computing chips, various computing units running machine learning model algorithms, a digital signal processor (DSP), and any suitable processor, controller, microcontroller, etc. The computing unit 1201 performs the various methods and processes described above, such as the product summary display method of the first aspect embodiment or the product summary display method of the second aspect embodiment. For example, in some embodiments, the product summary display method of the first aspect embodiment or the product summary display method of the second aspect embodiment can be implemented as a computer software program, which is tangibly included in a machine-readable medium, such as storage unit 1208. In some embodiments, part or all of the computer program can be loaded and / or installed on device 1200 via ROM 1202 and / or communication unit 1209. When the computer program is loaded into RAM 1203 and executed by computing unit 1201, one or more steps of the product summary display method of the first aspect embodiment or the product summary display method of the second aspect embodiment described above can be performed. Alternatively, in other embodiments, computing unit 1201 can be configured to perform the product summary display method of the first aspect embodiment or the product summary display method of the second aspect embodiment by any other suitable means (e.g., by means of firmware).
[0165] Various embodiments of the systems and techniques described above herein can be implemented in digital electronic circuit systems, integrated circuit systems, field-programmable gate arrays (FPGAs), application-specific integrated circuits (ASICs), application-specific standard products (ASSPs), systems-on-a-chip (SoCs), payload-programmable logic devices (CPLDs), computer hardware, firmware, software, and / or combinations thereof. These various embodiments may include implementations in one or more computer programs that can be executed and / or interpreted on a programmable system including at least one programmable processor, which may be a dedicated or general-purpose programmable processor, capable of receiving data and instructions from a storage system, at least one input device, and at least one output device, and transmitting data and instructions to the storage system, the at least one input device, and the at least one output device.
[0166] The program code used to implement the methods of this disclosure may be written in any combination of one or more programming languages. This program code may be provided to a processor or controller of a general-purpose computer, special-purpose computer, or other programmable data processing apparatus, such that when executed by the processor or controller, the program code causes the functions / operations specified in the flowcharts and / or block diagrams to be implemented. The program code may be executed entirely on a machine, partially on a machine, as a standalone software package partially on a machine and partially on a remote machine, or entirely on a remote machine or server.
[0167] In the context of this disclosure, a machine-readable medium can be a tangible medium that may include or store a program for use by or in conjunction with an instruction execution system, apparatus, or device. A machine-readable medium can be a machine-readable signal medium or a machine-readable storage medium. A machine-readable medium can be, but is not limited to, electronic, magnetic, optical, electromagnetic, infrared, or semiconductor systems, apparatus, or devices, or any suitable combination of the foregoing. More specific examples of machine-readable storage media include electrical connections based on one or more wires, portable computer disks, hard disks, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), optical fiber, portable compact disk read-only memory (CD-ROM), optical storage devices, magnetic storage devices, or any suitable combination of the foregoing.
[0168] To provide interaction with a user, the systems and techniques described herein can be implemented on a computer having: a display device for displaying information to the user (e.g., a CRT (cathode ray tube) or LCD (liquid crystal display) monitor); and a keyboard and pointing device (e.g., a mouse or trackball) through which the user provides input to the computer. Other types of devices can also be used to provide interaction with the user; for example, feedback provided to the user can be any form of sensory feedback (e.g., visual feedback, auditory feedback, or tactile feedback); and input from the user can be received in any form (including sound input, voice input, or tactile input).
[0169] The systems and technologies described herein can be implemented in computing systems that include backend components (e.g., as a data server), or computing systems that include middleware components (e.g., an application server), or computing systems that include frontend components (e.g., a user computer with a graphical user interface or web browser through which a user can interact with embodiments of the systems and technologies described herein), or any combination of such backend, middleware, or frontend components. The components of the system can be interconnected via digital data communication of any form or medium (e.g., a communication network). Examples of communication networks include local area networks (LANs), wide area networks (WANs), and the Internet.
[0170] Computer systems can include clients and servers. Clients and servers are generally located far apart and typically interact via communication networks. Client-server relationships are created by computer programs running on the respective computers and having a client-server relationship with each other. Servers can be cloud servers, servers in distributed systems, or servers incorporating blockchain technology.
[0171] It should be understood that the various forms of processes shown above can be used to rearrange, add, or delete steps. For example, the steps described in this disclosure can be executed in parallel, sequentially, or in different orders, as long as the desired result of the technical solution disclosed in this disclosure can be achieved, and this is not limited herein.
[0172] The specific embodiments described above do not constitute a limitation on the scope of protection of this disclosure. Those skilled in the art should understand that various modifications, combinations, sub-combinations, and substitutions can be made according to design requirements and other factors. Any modifications, equivalent substitutions, and improvements made within the spirit and principles of this disclosure should be included within the scope of protection of this disclosure.
Claims
1. A method for displaying product summaries, wherein, Executed by the first server, including: Receive the first product identifier and product origin channel of the target product sent by the second server; Based on the first product identifier and the product source channel, obtain the first display volume of the target product within a preset time period; Obtain the second display volume of all products displayed by the second server within the preset time period, and obtain the product update rate based on the fixed quota of the application programming interface (API) corresponding to the product source channel of the second display volume; Based on the product update rate and the first display volume, the update time interval of the target product is obtained, and based on the update time interval of the target product and the time information of the last update of the product summary, it is determined whether the first display volume meets the product information update conditions. When the first display volume meets the product information update conditions, the updated information of the target product is obtained based on the first product identifier and the product source channel, and the updated information of the target product is sent to the second server. The updated information is used to update the product summary of the target product.
2. The method according to claim 1, wherein, The step of obtaining updated information about the target product based on the first product identifier and the product source channel includes: Based on the first product identifier and the product source channel, obtain the Uniform Resource Locator (URL) of the target product; Based on the Uniform Resource Locator, obtain the second product identifier of the target product; Based on the second product identifier, the target application programming interface (API) corresponding to the product's source channel is invoked to obtain the updated information of the target product.
3. The method according to claim 1, wherein, The step of determining whether the first display volume meets the product information update conditions based on the update time interval of the target product and the time information of the last updated product summary includes: Obtain the first timestamp of the last updated product summary of the target product and the second timestamp of the current time, and obtain the update time difference between the first timestamp and the second timestamp; In response to the update time difference being greater than the update time interval of the target product, and the first display volume being greater than a preset first display volume threshold, it is determined that the first display volume meets the product information update conditions.
4. The method according to claim 3, wherein, After sending the updated information of the target product to the second server, the method further includes: In response to the target product ceasing to be displayed, the duration during which the target product was not displayed is obtained; The update interval of the target product is extended according to the preset time range within which the undisplayed duration falls.
5. The method according to any one of claims 1-4, wherein, The step of obtaining the first display volume of the target product within a preset time period based on the first product identifier and the product source channel includes: The target cache block for the target product is determined locally based on the product's source channel. The first display count of the target product is obtained from the target cache block of the local cache based on the first product identifier of the target product.
6. A method for displaying a product summary, wherein, Executed by the second server, including: Obtain the primary product identifier and product origin of the target product; Based on the first product identifier and the product source channel, obtain the first product summary of the target product; Send the first product identifier and the product source channel to the first server, and listen for updates to the target product sent by the first server; In response to the notification of the update information sent by the first server, the product summary of the target product is updated and displayed according to the first product summary and the update information; Specifically, the first server obtains the first display volume of the target product within a preset time period based on the first product identifier and the product source channel, obtains the second display volume of all products displayed by the second server within the preset time period, obtains the product update rate based on the fixed quota of the API corresponding to the second display volume and the product source channel, obtains the update time interval of the target product based on the product update rate and the first display volume, and determines whether the first display volume meets the product information update conditions based on the update time interval of the target product and the time information of the last update of the product summary. When the first display volume meets the product information update conditions, the server obtains and sends the update information of the target product based on the first product identifier and the product source channel.
7. The method according to claim 6, wherein, The step of updating and displaying the product summary of the target product based on the first product summary and the update information includes: The first product summary is incrementally updated based on the update information to obtain the second product summary of the target product; The target product is displayed based on the second product summary.
8. The method according to claim 7, wherein, The step of displaying the target product based on the second product summary further includes: Obtain the preset display template for the target product; Based on the second product summary, the display template is populated with content to obtain the display information of the target product; The target product is displayed based on the display information of the target product.
9. The method according to claim 6, wherein, Also includes: In response to the absence of any update information for the target product sent by the first server, the target product is displayed based on the first product summary of the target product.
10. The method according to claim 6, wherein, The step of obtaining the first product summary of the target product based on the first product identifier and the product source channel includes: The remote dictionary service is queried using the first product identifier and the product source channel as indexes to obtain the index content corresponding to the first product identifier and the product source channel. The index content corresponding to the first product identifier and the product source channel is determined to be the first product summary of the target product.
11. The method according to claim 7 or 8, wherein, After detecting the update information sent by the first server, the process further includes: The first product summary of the target product in the remote dictionary service is updated based on the second product summary of the target product.
12. A product summary display device, wherein, include: The receiving module is used to receive the first product identifier and product source channel of the target product sent by the second server; The acquisition module is used to acquire the first display volume of the target product within a preset time period based on the first product identifier and the product source channel; The processing module is configured to obtain the second display volume of all products displayed by the second server within the preset time period, and obtain the product update rate based on the fixed quota of the API corresponding to the second display volume and the product source channel; obtain the update time interval of the target product based on the product update rate and the first display volume, and determine whether the first display volume meets the product information update conditions based on the update time interval of the target product and the time information of the last update of the product summary; when the first display volume meets the product information update conditions, obtain the update information of the target product based on the first product identifier and the product source channel, and send the update information of the target product to the second server, wherein the update information is used to update the product summary of the target product.
13. The apparatus according to claim 12, wherein, The processing module is further configured to: Based on the first product identifier and the product source channel, obtain the Uniform Resource Locator (URL) of the target product; Based on the Uniform Resource Locator, obtain the second product identifier of the target product; Based on the second product identifier, the target application programming interface (API) corresponding to the product's source channel is invoked to obtain the updated information of the target product.
14. The apparatus according to claim 12, wherein, The processing module is further configured to: Obtain the first timestamp of the last updated product summary of the target product and the second timestamp of the current time, and obtain the update time difference between the first timestamp and the second timestamp; In response to the update time difference being greater than the update time interval of the target product, and the first display volume being greater than a preset first display volume threshold, it is determined that the first display volume meets the product information update conditions.
15. The apparatus according to claim 14, wherein, The processing module is further configured to: In response to the target product ceasing to be displayed, the duration during which the target product was not displayed is obtained; The update interval of the target product is extended according to the preset time range within which the undisplayed duration falls.
16. The apparatus according to claim 12, wherein, The acquisition module is also used for: The target cache block for the target product is determined locally based on the product's source channel. The first display count of the target product is obtained from the target cache block of the local cache based on the first product identifier of the target product.
17. A product summary display device, wherein, include: The first acquisition module is used to acquire the first product identifier and the product source channel of the target product; The second acquisition module is used to acquire a first product summary of the target product based on the first product identifier and the product source channel; The processing module is used to send the first product identifier and the product source channel to the first server, and to listen for the update information of the target product sent by the first server; The display module is used to update and display the product summary of the target product based on the first product summary and the update information in response to the update information sent by the first server. The first server is configured to: obtain a first display volume of the target product within a preset time period based on the first product identifier and the product source channel; obtain a second display volume of all products displayed by the device within the preset time period; and obtain a product update rate based on the fixed quota of the application programming interface (API) corresponding to the second display volume and the product source channel. Based on the product update rate and the first display volume, the server will obtain the update time interval of the target product; and based on the update time interval of the target product and the time of the last update of the product summary, determine whether the first display volume meets the product information update conditions. When the first display volume meets the product information update conditions, the server will obtain the update information of the target product based on the first product identifier and the product source channel, and send it to the device.
18. The apparatus according to claim 17, wherein, The display module is also used for: The first product summary is incrementally updated based on the update information to obtain the second product summary of the target product; The target product is displayed based on the second product summary.
19. The apparatus according to claim 18, wherein, The display module is also used for: Obtain the preset display template for the target product; Based on the second product summary, the display template is populated with content to obtain the display information of the target product; The target product is displayed based on the display information of the target product.
20. The apparatus according to claim 17, wherein, The display module is also used for: In response to the absence of any update information for the target product sent by the first server, the target product is displayed based on the first product summary of the target product.
21. The apparatus according to claim 17, wherein, The second acquisition module is further configured to: The remote dictionary service is queried using the first product identifier and the product source channel as indexes to obtain the index content corresponding to the first product identifier and the product source channel. The index content corresponding to the first product identifier and the product source channel is determined to be the first product summary of the target product.
22. The apparatus according to claim 18 or 19, wherein, The display module is also used for: The first product summary of the target product in the remote dictionary service is updated based on the second product summary of the target product.
23. An electronic device, comprising: At least one processor; as well as A memory communicatively connected to the at least one processor; wherein, The memory stores instructions executable by the at least one processor, which, when executed by the at least one processor, enables the at least one processor to perform the method of any one of claims 1-5 or any one of claims 6-11.
24. A non-transitory computer-readable storage medium storing computer instructions, wherein, The computer instructions are used to cause the computer to perform the method according to any one of claims 1-5 or the method according to any one of claims 6-11.
25. A computer program product comprising a computer program that, when executed by a processor, implements the steps of the method according to any one of claims 1-5 or the steps of the method according to any one of claims 6-11.