Method and related apparatus for processing and applying business events under microservices architecture
Patent Information
- Application Number
- CN202310256548.1
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2023-03-16
- Publication Date
- 2026-09-22
- Estimated Expiration
- 2043-03-16
AI Technical Summary
但是,由于业务事件是基于用户在客户端上的操作记录生成的,当用户的操作记录在业务线上不完整时,表明生成的业务事件在业务层面不具有实际意义,此时就不需要建立数据一致性,此时若仍按照现有系统架构的处理机制,仍对该业务事件进行数据库持久化存储,会造成服务器内部资源的浪费,增加服务器的负载压力
[0009]可以看出,本申请实施例中,事件中心服务器首先通过事件中心服务的接口组件接收业务服务器发送的目标业务事件,再根据目标业务事件确定出目标用户在客户端上针对目标业务进行的目标操作记录,然后确定出目标业务中的关键业务节点,再判断目标操作记录中是否包含关键业务节点;若是,则根据关键业务节点构建目标用户的购房画像,并执行落库处理;若否,则判断目标操作记录中是否存在用于指示目标用户对房源的基本要求的参考操作记录;若存在,则根据参考操作记录构建目标用户的购房画像,并执行丢弃处理;若不存在,则直接执行丢弃处理。如此,事件中心服务器能够基于对业务事件的分析结果,决定对业务事件执行落库处理或丢弃处理,将在业务层面上不具有实际意义的业务事件丢弃,降低了服务器的负载压力,避免内部资源的浪费。并且事件中心服务器可以在执行对业务事件的落库处理或丢弃处理的同时,分析业务事件对应的操作记录,针对每个正在处理的业务事件都能构建出用户购房画像,提高了画像构建的精确程度。
Smart Images

Figure CN116450477B_ABST
Abstract
Description
Technical Field
[0001] This application belongs to the general data processing technology field of the Internet industry, specifically relating to a method and related apparatus for processing and applying business events under a microservice architecture. Background Technology
[0002] Existing microservice architecture-based business event publishing solutions primarily rely on message queues for event delivery. This addresses issues like application decoupling, asynchronous messaging, and traffic shaping. After delivery, business events are persistently stored in a database to establish data consistency and facilitate system management. However, since business events are generated based on user operation records on the client side, incomplete user operation records indicate that the generated business event has no practical significance at the business level. In such cases, data consistency is unnecessary. If the existing system architecture's processing mechanism is still followed, persistently storing the business event in the database would waste server resources and increase server load. Furthermore, in the specific application of building user home-buying profiles based on business events, the existing system architecture analyzes and constructs profiles from a collection of samples stored in the database over a period of time. This fails to reveal the basic user profile reflected in each business event, impacting accuracy. Summary of the Invention
[0003] This application provides a method and related apparatus for processing and applying business events under a microservice architecture, in order to reduce server load pressure, avoid waste of internal resources, and improve the accuracy of the constructed user home purchase profile.
[0004] In a first aspect, embodiments of this application provide a method for processing and applying business events under a microservice architecture, applied to an event center server of a marketing cloud system. The marketing cloud system includes the event center server, a client used by a target user, and a business server for generating business events. The business server is connected to the event center server and the client, respectively. The business event is associated with the target user's operation records on the client. The method includes: The event center service receives the target business event sent by the business server through the interface component of the event center service, where the event center service is a service set in the event center server. Based on the target business event, determine the target user's target operation record on the client, where the target operation record refers to the operation record performed by the target user on the client for the target business. Identify the key business nodes in the target business; Determine whether the target operation record contains the key business node; If so, then construct the home-buying profile of the target user based on the key business nodes; In addition, the target message queue corresponding to the target business event is determined, and the target message queue is a message queue in the message queue set monitored by the event center service; In addition, when the event center service detects that the interface component delivers the target business event to the target message queue, it performs persistent database storage of the target business event; If not, then determine whether there is a reference operation record in the target operation record, the reference operation record being used to indicate the target user's basic requirements for the property; If it exists, then construct the home-buying profile of the target user based on the reference operation record; And, discard the target service event; If it does not exist, the target business event is discarded.
[0005] Secondly, embodiments of this application provide an apparatus for processing and applying business events under a microservice architecture, applied to an event center server of a marketing cloud system. The marketing cloud system includes the event center server, a client used by a target user, and a business server for generating business events. The business server is connected to both the event center server and the client. The business event is associated with the target user's operation records on the client. The apparatus includes: a receiving unit, a first determining unit, a second determining unit, a first judging unit, a first execution unit, a second judging unit, a second execution unit, and a third execution unit. The receiving unit is used to receive the target business event sent by the business server through the interface component of the event center service, wherein the event center service is a service set in the event center server. The first determining unit is configured to determine the target user's target operation record on the client based on the target service event, wherein the target operation record refers to the operation record performed by the target user on the client for the target service; The second determining unit is used to determine the key business nodes in the target business; The first judgment unit is used to determine whether the target operation record contains the key business node; If so, the first execution unit performs the following operations: constructs a home purchase profile of the target user based on the key business node; determines the target message queue corresponding to the target business event, wherein the target message queue is a message queue in the message queue set monitored by the event center service; and when the event center service detects that the interface component delivers the target business event to the target message queue, performs persistent storage of the target business event in the database. If not, the second judgment unit determines whether there is a reference operation record in the target operation record, the reference operation record being used to indicate the target user's basic requirements for the property; If it exists, the second execution unit performs the following operations: constructing a home-buying profile of the target user based on the reference operation record; and discarding the target business event; If it does not exist, the third execution unit performs the following operation: discard the target business event.
[0006] Thirdly, embodiments of this application provide a server including a processor, a memory, and one or more programs, the one or more programs being stored in the memory and configured to be executed by the processor, the programs including instructions for performing the steps as described in the first aspect of embodiments of this application.
[0007] Fourthly, embodiments of this application provide a computer-readable storage medium having a computer program / instructions stored thereon, which, when executed by a processor, implement the steps in the first aspect of embodiments of this application.
[0008] Fifthly, embodiments of this application provide a computer program product, wherein the computer program product includes a non-transitory computer-readable storage medium storing a computer program, the computer program being operable to cause a computer to perform some or all of the steps described in the first aspect of embodiments of this application.
[0009] As can be seen from this embodiment, the event center server first receives the target business event sent by the business server through the interface component of the event center service. Then, based on the target business event, it determines the target user's operation record on the client for the target business. Next, it identifies the key business nodes in the target business and determines whether the target operation record contains these key business nodes. If so, it constructs a home-buying profile of the target user based on the key business nodes and performs database entry processing. If not, it determines whether there is a reference operation record in the target operation record that indicates the target user's basic requirements for the property. If so, it constructs a home-buying profile of the target user based on the reference operation record and performs discard processing. If not, it directly performs discard processing. In this way, the event center server can decide whether to perform database entry processing or discard processing on business events based on the analysis results, discarding business events that are not meaningful at the business level, reducing server load and avoiding waste of internal resources. Furthermore, the event center server can analyze the operation records corresponding to the business events while performing database entry processing or discard processing, constructing a user home-buying profile for each business event being processed, thus improving the accuracy of the profile construction. Attached Figure Description
[0010] To more clearly illustrate the technical solutions in the embodiments of this application or the prior art, the drawings used in the description of the embodiments or the prior art will be briefly introduced below. Obviously, the drawings described below are only some embodiments of this application. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.
[0011] Figure 1 This is a structural block diagram of a marketing cloud system provided in an embodiment of this application; Figure 2 This is a flowchart illustrating a method for processing and applying business events under a microservice architecture, as provided in an embodiment of this application. Figure 3 This is a simplified diagram of a client display interface provided in an embodiment of this application; Figure 4a This is a block diagram of the functional units of a device for processing and applying business events under a microservice architecture, as provided in an embodiment of this application. Figure 4b This is a block diagram of the functional units of a device for processing and applying business events under another microservice architecture provided in this application embodiment; Figure 5 This is a structural block diagram of a server provided in an embodiment of this application. Detailed Implementation
[0012] To enable those skilled in the art to better understand the present application, the technical solutions in the embodiments of the present application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of the present application, and not all embodiments. Based on the embodiments in the present application, all other embodiments obtained by those of ordinary skill in the art without creative effort are within the scope of protection of the present application.
[0013] The terms "first," "second," etc., in the specification, claims, and accompanying drawings of this application are used to distinguish different objects, not to describe a specific order. Furthermore, the terms "comprising" and "having," and any variations thereof, are intended to cover non-exclusive inclusion. For example, a process, method, system, product, or apparatus that includes a series of steps or units is not limited to the listed steps or units, but may optionally include steps or units not listed, or may optionally include other steps or units inherent to these processes, methods, products, or apparatuses.
[0014] In this document, the term "embodiment" means that a particular feature, structure, or characteristic described in connection with an embodiment may be included in at least one embodiment of this application. The appearance of this phrase in various places throughout the specification does not necessarily refer to the same embodiment, nor is it a separate or alternative embodiment mutually exclusive with other embodiments. It will be explicitly and implicitly understood by those skilled in the art that the embodiments described herein can be combined with other embodiments.
[0015] Please see Figure 1 , Figure 1 This is a structural block diagram of a marketing cloud system provided in an embodiment of this application. For example... Figure 1As shown, the marketing cloud system 10 includes an event center server 11, a client 12, and a business server 13. The business server 13 is connected to both the event center server 11 and the client 12. Multiple business servers 13 can exist in the marketing cloud system 10, each corresponding to an independent business entity. For example, in the real estate marketing field, if the entities registered in the marketing cloud system 10 include real estate developer A, real estate developer B, and real estate developer C, then there can be three business servers 13 in the marketing cloud system 10, each corresponding to one of the real estate developers. Each business server 13 is independently maintained by its respective business entity. Each business server 13 can be configured with multiple business services. Each business service processes user operation records on the client 12 related to that service to generate business events. For example, the business service set in business server 13 is an activity participation service, and the corresponding business on client 12 is an online lottery service. When a user performs an operation on client 12 for the online lottery service (i.e., participates in the lottery), the activity participation service in business server 13 will generate a prize sending event, i.e., a business event, based on the user's operation record on client 12. Specifically, the specific form of the business corresponding to the business service on client 12 can be a business set in a marketing cloud WeChat mini-program. For example, a user can participate in a lottery in the mini-program, i.e., an online lottery service, or experience online house viewing in the mini-program, i.e., an online house viewing service. The specific device form of the event center server 11 and business server 13 can be a single server, a server cluster composed of several servers, or a cloud computing service center. The client 12 can be a smart device such as a mobile terminal, tablet, or laptop.
[0016] The following describes a method for processing and applying business events under a microservice architecture, provided by an embodiment of this application.
[0017] Please see Figure 2 , Figure 2 This is a flowchart illustrating a method for processing and applying business events in a microservice architecture, as provided in an embodiment of this application. The method is applied to, for example... Figure 1 In the event center server 11 shown, as Figure 2 As shown, the method includes: Step 201: Receive the target business event sent by the business server through the interface component of the event center service.
[0018] The event center service is a service set up in the event center server. The event center service is used to manage and process events. The interface component can be a Server-API component, which is an HTTP server used to receive target business events sent by the Sender-SDK component inside the business service.
[0019] Step 202: Determine the target user's target operation record on the client based on the target business event.
[0020] The target operation record refers to the operation record of the target user on the client for the target service. For example, the target service event is a property recommendation event. This service event is generated by the online property viewing service on the service server based on the target operation record. Therefore, by parsing the data of the property recommendation event through the event center server, the specific operation record of the target user when performing the online property viewing service on the client can be obtained, that is, the target operation record. In this example, the target service is the online property viewing service.
[0021] Alternatively, in another possible example, the target business event is a prize delivery event. This business event is generated by the activity participation service on the business server based on the target operation record. Therefore, by parsing the prize delivery event data through the event center server, the specific operation record of the target user when conducting the online lottery business on the client can be obtained, that is, the target operation record. In this example, the target business is the online lottery business.
[0022] Step 203: Identify the key business nodes in the target business.
[0023] The key business node refers to a business node in the specific business provided to the user by the client that ensures that the user's operation record is completely on the business line, so that the business events generated by the business server based on this node have practical significance at the business level.
[0024] For example, taking an online lottery as the target business, generally, a user's operation record in the online lottery is only complete on the business line if the user actually participates in the lottery. Similarly, only then will the prize delivery event generated by the business server have practical significance at the business level. If the user only performs other operations in the online lottery, such as filling in personal information, without actually participating in the lottery and directly terminates the online lottery, the user's operation record is incomplete on the business line. Likewise, the prize delivery event generated by the business server based on this operation record has no practical significance at the business level. Therefore, when the target business is an online lottery, the key business node is the actual lottery action. This action can be the user clicking the "Start Lottery" control on the lottery activity page displayed on the client.
[0025] For example, taking online property viewing as the target business, a user might first filter properties before selecting specific ones to browse, or they might directly browse popular listings pushed by the client. Only by performing the action of browsing properties can the user's operation record for the online property viewing service be complete on the business line, and only then will the business events generated by the business server have practical significance at the business level. If the user only filters properties without further browsing and then terminates the online property viewing service, the user's operation record for the online property viewing service is incomplete on the business line, and similarly, the business events generated by the business server have no practical significance at the business level. Therefore, when the target business is online property viewing, the key business node can be the action record corresponding to browsing specific properties.
[0026] Step 204: Determine whether the target operation record contains the key business node.
[0027] If yes, proceed to step 205; otherwise, proceed to step 206.
[0028] Taking the online lottery business in the above example as an example, this judgment step can be specifically implemented by detecting whether the user's operation record in the lottery business includes a click operation on the "Start Lottery" function control.
[0029] Step 205: Construct a home purchase profile for the target user based on the key business nodes; and determine the target message queue corresponding to the target business event, wherein the target message queue is a message queue in the message queue set monitored by the event center service; and when the event center service detects that the interface component delivers the target business event to the target message queue, perform persistent database storage of the target business event. The construction of user home-buying profiles is based on the user's requirements or preferences for housing during related business transactions on the client side. Therefore, when a user's operation records do not reflect these requirements or preferences, the event center server will only persist the business event to the database without building a user profile. For example, when processing a prize delivery event, the user's business on the client side is an online lottery. In this case, the user's operation records do not reflect the user's requirements or preferences for housing, meaning this business event cannot be applied to building a user home-buying profile. In this situation, the event center server will only persist the business event to the database to ensure data consistency, without expending server resources to build a user profile, thereby reducing server load and improving efficiency.
[0030] The database persistence process utilizes the event center service's message queue monitoring mechanism. When an event is delivered to the message queue, the event center service receives feedback from the message queue and simultaneously performs persistent storage in the database to establish data consistency.
[0031] Step 206: Determine whether a reference operation record exists in the target operation record.
[0032] If it exists, proceed to step 207; if it does not exist, proceed to step 208.
[0033] Step 207: Construct a home-buying profile for the target user based on the reference operation record; and discard the target business event. Step 208: Discard the target service event.
[0034] The reference operation record is used to indicate the target user's basic requirements for the property. Similar to the above embodiment, when the user's operation record cannot show the user's requirements or preferences for the property, that is, when there is no reference operation record in the operation record, the event center server will only discard the business event, that is, directly clear the relevant data of the business event in the marketing cloud system, without building a user profile. When there is a reference operation record in the user's operation record, the event center server will first use this data to build a user home-buying profile, and then discard the business event. In this way, the transmitted event data resources can be fully utilized.
[0035] As can be seen in this example, the event center server first receives the target business event sent by the business server through the interface component of the event center service. Then, based on the target business event, it determines the target user's operation records on the client side related to the target business. Next, it identifies the key business nodes within the target business and determines whether the target operation records contain these key business nodes. If so, it constructs a home-buying profile of the target user based on the key business nodes and performs database entry processing. If not, it checks whether there are reference operation records in the target operation records indicating the target user's basic requirements for the property. If so, it constructs a home-buying profile of the target user based on the reference operation records and performs discard processing. If not, it directly performs discard processing. In this way, the event center server can decide whether to perform database entry processing or discard processing on business events based on the analysis results, discarding business events that are not meaningful at the business level, reducing server load and avoiding waste of internal resources. Furthermore, the event center server can analyze the operation records corresponding to the business events while performing database entry or discard processing, constructing a user home-buying profile for each business event being processed, improving the accuracy of the profile construction.
[0036] In one possible example, determining the target message queue corresponding to the target business event includes: determining whether there is a similar business event among the business events stored in the event center server that has a similarity greater than a preset similarity with the target business event; if not, determining a preset candidate message queue as the target message queue; if so, detecting whether there is a reference delivery record for the similar business event in the historical delivery records stored in the event center server; if so, determining the message queue indicated by the reference delivery record as the target message queue; if not, determining a preset candidate message queue as the target message queue.
[0037] The preset similarity can be an empirical value obtained by the event center server based on data statistical analysis, or a value manually set by the marketing cloud system's operations and maintenance personnel through the operations and maintenance terminal. The preset alternative message queue is a message queue provided by the event center service with a pre-set listening status. The business events received by the event center server from the business server may be business events that the event center server has previously received, or business events that are similar to the target business event that it has previously received. The message queue corresponding to the similar business events in the historical delivery records can be directly used for the delivery of the target business event this time.
[0038] As can be seen in this example, when there is a reference delivery record for a similar business event in the historical delivery records, the event center server prioritizes the message queue indicated by the reference delivery record as the target message queue. This can improve the stability of the delivery process, save the process of calling a new message queue, and conserve internal server resources.
[0039] In other possible examples, determining the target message queue corresponding to the target business event can also be achieved through communication between the receiving component of the event center server and the event center service. This allows the determination of the message queue registered in the event center server by the business server corresponding to the currently processed target business event. If a message queue capable of receiving the target business event is detected among the registered message queues, that message queue is determined as the target message queue. If no such message queue exists, a preset alternative message queue is determined as the target message queue. Thus, using the message queue registered in the event center service and provided independently by the business server for business event relay facilitates the business's understanding of the event delivery process and streamlines management and maintenance.
[0040] In one possible example, determining whether there exists a similar business event among the business events stored in the event center server that has a similarity greater than a preset similarity with the target business event includes: determining whether the event center server stores at least one associated business event related to the target business; if not, determining that there is no similar business event in the event center server; if so, performing the following operations for the at least one associated business event: calculating the target similarity between the associated operation record corresponding to the currently processed associated business event and the target operation record; if the target similarity is greater than or equal to the preset similarity, determining that the currently processed associated business event is the similar business event; if the target similarity is less than the preset similarity, continuing to process the next associated business event until all at least one associated business event has been processed.
[0041] The determination of whether the event center server stores at least one associated business event related to the target business can be achieved by traversing each business event historically stored in the event center server, analyzing the business executed by the operation record corresponding to each business event, and determining that the executed business is the same as the target business. For example, assuming the target business is online house viewing, and the event center server historically stores business event A, whose corresponding operation record also executes the online house viewing business, then business event A is determined to be an associated business event. Following the above processing logic, all business events historically stored in the event center server are processed to obtain the at least one associated business event. Then, the similarity between the associated operation record corresponding to each associated business event and the target operation record is further calculated to determine the similar business events among the associated business events.
[0042] As can be seen in this example, the event center server can further determine similar business events among the related business events by calculating the target similarity between the associated operation record corresponding to the related business event in historical storage and the target operation record. This improves the efficiency of determining the target message queue and enhances the stability of the delivery process. When similar business events are detected, the message queue used when delivering similar business events is called first, saving the process of calling a new message queue and conserving internal server resources.
[0043] In one possible example, calculating the target similarity between the associated operation record corresponding to the currently processed associated business event and the target operation record includes: splitting the associated operation record into multiple operation segments according to a preset splitting rule to obtain a first set of operation segments; splitting the target operation record into multiple operation segments according to the preset splitting rule to obtain a second set of operation segments; and calculating the target similarity based on the number of identical operation segments in the first set of operation segments and the second set of operation segments.
[0044] The preset splitting rules can be pre-set rules for splitting operation records by operations and maintenance personnel on the operations and maintenance terminal. Specifically, the preset splitting rules can be based on user gestures such as clicks, swipes, and long presses on the client and the corresponding regions of the gestures. For example, please refer to [link to example]. Figure 3 , Figure 3 This is a simplified diagram of a client display interface provided in an embodiment of this application, such as... Figure 3As shown, the client's display interface 30 includes a filtering criteria area 301, a popular property recommendation area 302, and a "Browse More Properties" control 303. The filtering criteria area 301 includes four commonly used filtering criteria: "Property Location," "Price Range," "Property Orientation," and "Property Facilities." When a user clicks on any of these four criteria, the client redirects to the corresponding display page to provide the user with specific filtering services. When a user filters based on a particular criterion, the checkbox in front of that criterion is filled, indicating that the criterion has been filtered. The filtering criteria area 301 also includes a "More Filtering Criteria" control; clicking this control displays more filtering criteria. The popular property recommendation area 302 includes property descriptions for Property A and Property B. Property A and Property B are properties with high transaction rates automatically selected by the event center server based on historical transaction volume. When a user clicks on the property description of Property A or Property B, the client redirects to the detailed information page for Property A or Property B. When a user clicks the "Browse More Listings" function control 303, the client sends the filter criteria to the server. The server then calculates the listings that match the user's filter criteria and sends them back to the client for display.
[0045] For example, the first set of operation fragments obtained by splitting includes a click operation on "Property Location" in the filter condition area 301, a filtering action consisting of click operations performed after jumping to the specific filter page of "Property Location", and a click operation on the "Browse More Properties" function control 303; the second set of operation fragments obtained by splitting includes a click operation on "Property Location" in the filter condition area 301, a filtering action consisting of click operations performed after jumping to the specific filter page of "Property Location", a click operation on "Price Range" in the filter condition area 301, a filtering action consisting of click operations performed after jumping to the specific filter page of "Price Range", and a click operation on the "Browse More Properties" function control 303. Based on this, identical operation fragments in the first and second sets of operation fragments can be identified, and the target similarity can be calculated based on the number of identical operation fragments and the total number of split operation fragments.
[0046] It should be noted that the above examples are simplified examples provided to aid understanding. In actual applications, it is necessary to compare the operation records during online house viewing, such as zooming in with two fingers on a wall within the property. Therefore, in specific application examples, the number of operation record fragments that are broken down is much greater than in the examples above.
[0047] As can be seen in this example, the event center server calculates target similarity by splitting operation records into operation fragments, thereby further identifying similar business events, improving the efficiency of determining the target message queue, enhancing the stability of the delivery process, and prioritizing the use of the message queue used for delivery of similar business events when detecting similar business events stored, eliminating the need to call a new message queue and saving internal server resources.
[0048] In one possible example, the target business is online property viewing, the key business node is the property browsing business node, and the step of constructing the target user's home-buying profile based on the key business node includes: parsing the property browsing business node to obtain the target user's browsing details information for the target property on the client, the browsing details information being used to indicate the target user's overall or partial evaluation tendency for the target property, the evaluation tendency including positive evaluation, neutral evaluation, and negative evaluation; and constructing the target user's home-buying profile based on the target user's evaluation tendency for the target property.
[0049] The overall evaluation tendency of the target property can be an evaluation tendency of elements such as apartment type, house orientation, property location, and property facilities. The partial evaluation tendency of the target property can be an evaluation tendency of elements such as the layout of the living room, bedroom size, and number of bathrooms. Constructing the target user's home-buying profile based on the target user's evaluation tendency of the target property can specifically be as follows: when the evaluation tendency is positive, the event center server records the element corresponding to the positive evaluation and marks the specific form of the element as a favorable element for the target user; when the evaluation tendency is neutral, the event center server records the element corresponding to the neutral evaluation and marks the specific form of the element as an acceptable element for the target user; when the evaluation tendency is negative, the event center server records the element corresponding to the negative evaluation and marks the specific form of the element as an unfavorable element for the target user. In summary, a home-buying profile of the target user composed of favorable, acceptable, and unfavorable elements can be constructed. Optionally, when recommending properties to the target user, the properties in the database can be filtered based on favorable elements as the primary condition, acceptable elements as the secondary condition, and unfavorable elements as the exclusion condition, and the filtered properties can be recommended to the target user.
[0050] As can be seen in this example, when the target business is online house viewing and the key business node is browsing property listings, the event center server can determine the target user's evaluation tendency for the property based on the browsing details of the target user. Based on this, a home-buying profile of the target user can be constructed, which improves the accuracy of the profile construction and makes the property recommendations more suitable for user needs, thereby improving the user experience.
[0051] In one possible example, the browsing details information includes the target user's annotation information on the apartment type of the target property. The text content of the annotation information is used to indicate the target user's evaluation tendency on the apartment type of the target property. The step of constructing the target user's home purchase profile based on the target user's evaluation tendency on the target property includes: constructing the target user's home purchase profile in terms of apartment type based on the target user's evaluation tendency on the apartment type of the target property.
[0052] In constructing a user's home-buying profile, the user's evaluation tendency regarding specific aspects of a property can also be used to build a profile for that specific aspect. In this example, the target user annotated the apartment layout, and the profile is built based on the evaluation tendency in the annotation. For instance, the annotation might read, "This apartment layout is very good." After semantic understanding, the event center server determines that the annotation's evaluation tendency is positive. It then saves and marks the apartment layout and establishes a connection with the target user. This allows the event center server to build a profile of the target user regarding apartment layouts, using the apartment layout as a standard. In subsequent property recommendations, the event center server will preferentially recommend properties with the same or similar layouts.
[0053] As can be seen in this example, the event center server can construct a user's home-buying profile for that specific part of the property based on the user's evaluation tendency in the annotation information. This improves the accuracy of the profile construction and makes the property recommendations more suitable for user needs, thereby improving the user experience.
[0054] In one possible example, the target business is online property viewing, the key business node is browsing property listings, the reference operation record includes the target user's property filtering records on the client, and the step of constructing the target user's home-buying profile based on the reference operation record includes: determining at least one filtering condition selected by the target user on the property filtering page displayed on the client based on the filtering record, the filtering condition including at least property location, house orientation, price range, and property facilities; and constructing the target user's home-buying profile based on the at least one filtering condition.
[0055] The filtering record can be a filtering action consisting of multiple gestures performed by a target user on the client side after clicking on the area containing a specific filtering condition and then being redirected to the display interface of that specific filtering condition. For example, if a target user clicks on the area containing the "Price Range" filtering condition, the client will redirect to the specific filtering page for "Price Range." The target user's filtering action on this page would be: enter an upper limit price of 2 million yuan, enter a lower limit price of 500,000 yuan, and finally click the "OK" button. In this way, the event center server can obtain the filtering condition for the "Price Range" option and, based on this condition, determine one of the profile features constituting the user's home-buying profile: properties priced between 500,000 and 2 million yuan. Similarly, the event center server can also determine the filtering conditions set by the target user in other options through the filtering record. Each filtering condition can constitute one of the profile features of the user's home-buying profile, and finally, by combining all the profile features, the overall home-buying profile of the target user can be obtained.
[0056] As can be seen in this example, in the online house viewing business scenario, when the user's operation record does not contain key business nodes but contains reference operation records, the event center server can determine the user's filtering conditions based on the filtering records in the reference operation records before discarding the target business event. Based on the filtering conditions, the server can determine the user's home-buying profile, making full use of the data resources corresponding to the target business event, increasing the number of profile features of the target user's home-buying profile, making the final user profile more accurate, making the house recommendations more suitable for user needs, and improving the user experience.
[0057] For embodiments consistent with those shown above, please refer to [link / reference]. Figure 4a , Figure 4a This is a functional unit block diagram of a device for processing and applying business events under a microservice architecture, provided in an embodiment of this application. The device is applied to, for example... Figure 1In the event center server 11 shown, the device 40 for processing and applying business events under the microservice architecture includes: a receiving unit 401, a first determining unit 402, a second determining unit 403, a first judging unit 404, a first execution unit 405, a second judging unit 406, a second execution unit 407, and a third execution unit 408. The receiving unit 401 is used to receive target business events sent by the business server through the interface component of the event center service, where the event center service is a service set up in the event center server. The first determining unit 402 is used to determine the target operation record of the target user on the client based on the target business event; the target operation record refers to the operation record performed by the target user on the client for the target business. The second determining unit 403 is used to determine the key business nodes in the target business. The first judging unit 404 is used to determine whether the target operation record contains the key nodes. If the target business node is identified, the first execution unit 405 performs the following operations: constructs a home-buying profile of the target user based on the key business node; determines the target message queue corresponding to the target business event, wherein the target message queue is a message queue in the message queue set monitored by the event center service; and when the event center service detects that the interface component delivers the target business event to the target message queue, performs persistent database storage of the target business event. If not, the second judgment unit 406 determines whether a reference operation record exists in the target operation record, wherein the reference operation record is used to indicate the target user's basic requirements for the housing. If it exists, the second execution unit 407 performs the following operations: constructs a home-buying profile of the target user based on the reference operation record; and discards the target business event. If it does not exist, the third execution unit 408 performs the following operations: discards the target business event.
[0058] In one possible example, regarding the determination of the target message queue corresponding to the target business event, the first execution unit 405 is specifically configured to: determine whether there is a similar business event among the business events stored in the event center server that has a similarity greater than a preset similarity with the target business event; if not, determine a preset candidate message queue as the target message queue; if so, detect whether there is a reference delivery record for the similar business event in the historical delivery records stored in the event center server; if so, determine the message queue indicated by the reference delivery record as the target message queue; if not, determine the preset candidate message queue as the target message queue.
[0059] In one possible example, regarding the determination of whether there exists a similar business event among the business events stored in the event center server that has a similarity greater than a preset similarity with the target business event, the first execution unit 405 is specifically configured to: determine whether the event center server stores at least one associated business event related to the target business; if not, determine that there is no similar business event in the event center server; if so, perform the following operations for the at least one associated business event: calculate the target similarity between the associated operation record corresponding to the currently processed associated business event and the target operation record; if the target similarity is greater than or equal to the preset similarity, determine that the currently processed associated business event is the similar business event; if the target similarity is less than the preset similarity, continue processing the next associated business event until all at least one associated business event has been processed.
[0060] In one possible example, regarding the calculation of the target similarity between the associated operation record corresponding to the currently processed associated business event and the target operation record, the first execution unit 405 is specifically configured to: split the associated operation record into multiple operation segments according to a preset splitting rule to obtain a first set of operation segments; split the target operation record into multiple operation segments according to the preset splitting rule to obtain a second set of operation segments; and calculate the target similarity based on the number of identical operation segments in the first set of operation segments and the second set of operation segments.
[0061] In one possible example, the target business is online property viewing, and the key business node is the property browsing business node. Regarding the construction of the target user's home-buying profile based on the key business node, the first execution unit 405 is specifically used to: parse the property browsing business node to obtain the target user's browsing details information for the target property on the client, the browsing details information indicating the target user's overall or partial evaluation tendency towards the target property, the evaluation tendency including positive evaluation, neutral evaluation, and negative evaluation; and construct the target user's home-buying profile based on the target user's evaluation tendency towards the target property.
[0062] In one possible example, the browsing details information includes the target user's annotation information on the apartment type of the target property. The text content of the annotation information is used to indicate the target user's evaluation tendency on the apartment type of the target property. In terms of constructing the target user's home purchase profile based on the target user's evaluation tendency on the apartment type of the target property, the first execution unit 405 is specifically used to: construct the target user's home purchase profile on the apartment type based on the target user's evaluation tendency on the apartment type of the target property.
[0063] In one possible example, the target business is online property viewing, the key business node is browsing property listings, and the reference operation record includes the target user's property filtering records on the client. In constructing the target user's home-buying profile based on the reference operation record, the second execution unit 407 is specifically configured to: determine, based on the filtering record, at least one filtering condition selected by the target user on the property filtering page displayed on the client, the filtering condition including at least property location, property orientation, price range, and property facilities; and construct the target user's home-buying profile based on the at least one filtering condition.
[0064] It is understood that since the method embodiments and the device embodiments are different presentations of the same technical concept, the content of the method embodiment section in this application should be adapted to the device embodiment section in a synchronous manner, and will not be repeated here.
[0065] When using integrated units, such as Figure 4b As shown, Figure 4b This is a block diagram of the functional units of a device for processing and applying business events under another microservice architecture provided in this application embodiment. Figure 4b In this document, the apparatus 41 for processing and applying business events under a microservice architecture includes a processing module 412 and a communication module 411. The processing module 412 controls and manages the actions of the apparatus for processing and applying business events under the microservice architecture, for example, executing the steps of the receiving unit 401, the first determining unit 402, the second determining unit 403, the first judging unit 404, the first execution unit 405, the second judging unit 406, the second execution unit 407, and the third execution unit 408, and / or other processes for executing the techniques described herein. The communication module 411 supports interaction between the apparatus for processing and applying business events under the microservice architecture and other devices. Figure 4b As shown, the apparatus for processing and applying business events under a microservice architecture may further include a storage module 413, which is used to store the program code and data of the apparatus for processing and applying business events under a microservice architecture.
[0066] The processing module 412 can be a processor or controller, such as a central processing unit (CPU), a general-purpose processor, a digital signal processor (DSP), an ASIC, an FPGA, or other programmable logic devices, transistor logic devices, hardware components, or any combination thereof. It can implement or execute various exemplary logic blocks, modules, and circuits described in conjunction with the disclosure of this application. The processor can also be a combination that implements computing functions, such as a combination of one or more microprocessors, a combination of a DSP and a microprocessor, etc. The communication module 411 can be a transceiver, RF circuitry, or a communication interface, etc. The storage module 413 can be a memory.
[0067] All relevant content in each scenario involved in the above method embodiments can be referenced from the functional descriptions of the corresponding functional modules, and will not be repeated here. The device 41 for processing and applying business events under the above microservice architecture can execute the above... Figure 2 The method for handling and applying business events in a microservice architecture is shown.
[0068] The above embodiments can be implemented, in whole or in part, by software, hardware, firmware, or any other combination thereof. When implemented using software, the above embodiments can be implemented, in whole or in part, as a computer program product. The computer program product includes one or more computer instructions or computer programs. When the computer instructions or computer programs are loaded or executed on a computer, all or part of the processes or functions described in the embodiments of this application are generated. The computer can be a general-purpose computer, a special-purpose computer, a computer network, or other programmable device. The computer instructions can be stored in a computer-readable storage medium or transmitted from one computer-readable storage medium to another. For example, the computer instructions can be transmitted from one website, computer, server, or data center to another website, computer, server, or data center via wired or wireless means. The computer-readable storage medium can be any available medium that a computer can access or a data storage device such as a server or data center that includes one or more sets of available media. The available medium can be a magnetic medium (e.g., floppy disk, hard disk, magnetic tape), an optical medium (e.g., DVD), or a semiconductor medium. A semiconductor medium can be a solid-state drive.
[0069] Figure 5 This is a structural block diagram of a server provided in an embodiment of this application. For example... Figure 5As shown, server 500 may include one or more of the following components: processor 501, and memory 502 coupled to processor 501, wherein memory 502 may store one or more computer programs, which may be configured to implement the methods described in the above embodiments when executed by one or more processors 501. Server 500 may be the event center server 11 in the above embodiments.
[0070] Processor 501 may include one or more processing cores. Processor 501 connects to various parts within server 500 using various interfaces and lines, and performs various functions and processes data of server 500 by running or executing instructions, programs, code sets, or instruction sets stored in memory 502, and by calling data stored in memory 502. Optionally, processor 501 may be implemented using at least one hardware form of Digital Signal Processing (DSP), Field-Programmable Gate Array (FPGA), or Programmable Logic Array (PLA). Processor 501 may integrate one or a combination of several of the following: Central Processing Unit (CPU), Graphics Processing Unit (GPU), and modem. The CPU primarily handles the operating system, user interface, and applications; the GPU is responsible for rendering and drawing the displayed content; and the modem handles wireless communication. It is understood that the modem may also not be integrated into processor 501 and may be implemented separately using a communication chip.
[0071] The memory 502 may include random access memory (RAM) or read-only memory (ROM). The memory 502 can be used to store instructions, programs, code, code sets, or instruction sets. The memory 502 may include a program storage area and a data storage area. The program storage area may store instructions for implementing an operating system, instructions for implementing at least one function (such as touch functionality, sound playback functionality, image playback functionality, etc.), and instructions for implementing the various method embodiments described above. The data storage area may also store data created by the server 500 during use.
[0072] It is understood that server 500 may include more or fewer structural elements than those shown in the above block diagram, and this is not limited here.
[0073] This application also provides a computer storage medium storing a computer program / instructions thereon, which, when executed by a processor, implements some or all of the steps of any of the methods described in the above method embodiments.
[0074] This application also provides a computer program product, which includes a non-transitory computer-readable storage medium storing a computer program operable to cause a computer to perform some or all of the steps of any of the methods described in the above method embodiments.
[0075] It should be understood that in the various embodiments of this application, the order of the above-mentioned processes does not imply the order of execution. The execution order of each process should be determined by its function and internal logic, and should not constitute any limitation on the implementation process of the embodiments of this application.
[0076] In the several embodiments provided in this application, it should be understood that the disclosed methods, apparatuses, and systems can be implemented in other ways. For example, the apparatus embodiments described above are merely illustrative; for example, the division of units is merely a logical functional division, and other division methods may exist in actual implementation; for example, multiple units or components may be combined or integrated into another system, or some features may be ignored or not executed. Furthermore, the coupling or direct coupling or communication connection shown or discussed may be through some interfaces, and the indirect coupling or communication connection between devices or units may be electrical, mechanical, or other forms.
[0077] The units described as separate components may or may not be physically separate. The components shown as units may or may not be physical units; that is, they may be located in one place or distributed across multiple network units. Some or all of the units can be selected to achieve the purpose of this embodiment according to actual needs.
[0078] Furthermore, the functional units in the various embodiments of the present invention can be integrated into one processing unit, or each unit can be physically comprised separately, or two or more units can be integrated into one unit. The integrated unit described above can be implemented in hardware or in the form of hardware plus software functional units.
[0079] The integrated units implemented as software functional units described above can be stored in a computer-readable storage medium. These software functional units, stored in a storage medium, include several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute some steps of the methods described in the various embodiments of the present invention. The aforementioned storage medium includes: a USB flash drive, a portable hard drive, a magnetic disk, an optical disk, volatile memory, or non-volatile memory. The non-volatile memory can be read-only memory (ROM), programmable read-only memory (PROM), erasable programmable read-only memory (EPROM), electrically erasable programmable read-only memory (EEPROM), or flash memory. The volatile memory can be random access memory (RAM), which is used as an external cache. By way of example, but not limitation, many forms of random access memory (RAM) are available, such as static RAM (SRAM), dynamic RAM (DRAM), synchronous DRAM (SDRAM), double data rate SDRAM (DDRSDRAM), enhanced SDRAM (ESDRAM), synchronous linked DRAM (SLDRAM), and direct rambus RAM (DR RAM), etc., which are various media capable of storing program code.
[0080] While the present invention has been disclosed above, it is not limited thereto. Any person skilled in the art can easily conceive of variations or substitutions without departing from the spirit and scope of the present invention, and various modifications and alterations can be made, including combinations of the different functions and implementation steps described above, as well as software and hardware implementation methods, all of which are within the protection scope of the present invention.
Claims
1. A method for processing and applying business events in a microservice architecture, characterized in that, An event center server is used in a marketing cloud system, the marketing cloud system including the event center server, a client used by a target user, and a business server for generating business events, the business server being connected to the event center server and the client respectively, and the business events being associated with the target user's operation records on the client, the method including: The event center service receives the target business event sent by the business server through the interface component of the event center service, where the event center service is a service set in the event center server. Based on the target business event, determine the target user's target operation record on the client, where the target operation record refers to the operation record performed by the target user on the client for the target business. Identify the key business nodes in the target business; Determine whether the target operation record contains the key business node; If so, then construct the home-buying profile of the target user based on the key business nodes; In addition, the target message queue corresponding to the target business event is determined, and the target message queue is a message queue in the message queue set monitored by the event center service; In addition, when the event center service detects that the interface component delivers the target business event to the target message queue, it performs persistent database storage of the target business event; If not, then determine whether there is a reference operation record in the target operation record, the reference operation record being used to indicate the target user's basic requirements for the property; If it exists, then construct the home-buying profile of the target user based on the reference operation record; And, discard the target service event; If it does not exist, then discard the target service event; The step of determining the target message queue corresponding to the target business event includes: determining whether there is a similar business event among the business events stored in the event center server that has a similarity greater than a preset similarity with the target business event; if not, determining a preset candidate message queue as the target message queue; if so, detecting whether there is a reference delivery record for the similar business event in the historical delivery records stored in the event center server; if so, determining the message queue indicated by the reference delivery record as the target message queue; if not, determining a preset candidate message queue as the target message queue.
2. The method according to claim 1, characterized in that, The step of determining whether there are similar business events among the business events stored in the event center server that have a similarity greater than a preset similarity with the target business event includes: Determine whether the event center server stores at least one associated business event related to the target business; If not, then it is determined that the similar business event does not exist in the event center server; If so, the following operations are performed for the at least one associated business event: Calculate the target similarity between the associated operation record corresponding to the currently processed associated business event and the target operation record; If the target similarity is greater than or equal to the preset similarity, then the currently processed related business event is determined to be the similar business event; If the target similarity is less than the preset similarity, then continue processing the next related business event until all at least one related business event has been processed.
3. The method according to claim 2, characterized in that, The calculation of the target similarity between the associated operation record corresponding to the currently processed associated business event and the target operation record includes: The associated operation record is split into multiple operation segments according to a preset splitting rule to obtain a first set of operation segments; The target operation record is split into multiple operation segments according to the preset splitting rules to obtain a second set of operation segments; The target similarity is calculated based on the number of identical operation segments in the first set of operation segments and the second set of operation segments.
4. The method according to claim 1, characterized in that, The target business is online property viewing, the key business node is browsing property listings, and the step of constructing a home-buying profile for the target user based on the key business node includes: The browsing service node is analyzed to obtain the browsing details information of the target user on the client for the target property. The browsing details information is used to indicate the target user's overall or partial evaluation tendency for the target property. The evaluation tendency includes positive evaluation, neutral evaluation and negative evaluation. A home-buying profile of the target user is constructed based on the target user's evaluation tendency of the target property.
5. The method according to claim 4, characterized in that, The browsing details information includes the target user's annotations on the target property's floor plan. The text content of the annotations indicates the target user's evaluation preference for the target property's floor plan. Constructing the target user's home-buying profile based on their evaluation preference includes: Based on the target users' evaluation preferences for the apartment layouts of the target properties, a home-buying profile of the target users regarding apartment layouts is constructed.
6. The method according to claim 1, characterized in that, The target business is online property viewing, the key business node is browsing property listings, the reference operation record includes the target user's property filtering records on the client, and constructing the target user's home-buying profile based on the reference operation record includes: Based on the filtering records, determine at least one filtering condition selected by the target user on the property filtering page displayed on the client. The filtering condition includes at least the property location, property orientation, price range, and property facilities. A home-buying profile of the target user is constructed based on at least one of the filtering criteria.
7. An apparatus for processing and applying business events under a microservice architecture, characterized in that, An event center server is used in a marketing cloud system. The marketing cloud system includes the event center server, a client used by a target user, and a business server for generating business events. The business server is connected to both the event center server and the client. The business events are associated with the target user's operation records on the client. The device includes: a receiving unit, a first determining unit, a second determining unit, a first judging unit, a first execution unit, a second judging unit, a second execution unit, and a third execution unit. The receiving unit is used to receive the target business event sent by the business server through the interface component of the event center service, wherein the event center service is a service set in the event center server. The first determining unit is configured to determine the target user's target operation record on the client based on the target service event, wherein the target operation record refers to the operation record performed by the target user on the client for the target service; The second determining unit is used to determine the key business nodes in the target business; The first judgment unit is used to determine whether the target operation record contains the key business node; If so, the first execution unit performs the following operations: constructs a home purchase profile of the target user based on the key business node; determines the target message queue corresponding to the target business event, wherein the target message queue is a message queue in the message queue set monitored by the event center service; and when the event center service detects that the interface component delivers the target business event to the target message queue, performs persistent storage of the target business event in the database. If not, the second judgment unit determines whether there is a reference operation record in the target operation record, the reference operation record being used to indicate the target user's basic requirements for the property; If it exists, the second execution unit performs the following operations: constructing a home-buying profile of the target user based on the reference operation record; and discarding the target business event; If it does not exist, the third execution unit performs the following operation: discard the target business event; The step of determining the target message queue corresponding to the target business event includes: determining whether there is a similar business event among the business events stored in the event center server that has a similarity greater than a preset similarity with the target business event; if not, determining a preset candidate message queue as the target message queue; if so, detecting whether there is a reference delivery record for the similar business event in the historical delivery records stored in the event center server; if so, determining the message queue indicated by the reference delivery record as the target message queue; if not, determining a preset candidate message queue as the target message queue.
8. A server, characterized in that, It includes a processor, a memory, and one or more programs, said one or more programs being stored in the memory and configured to be executed by the processor, said programs including instructions for performing the steps in the method as claimed in any one of claims 1-6.
9. A computer-readable storage medium having a computer program / instructions stored thereon, characterized in that, When the computer program / instructions are executed by the processor, they implement the steps of the method according to any one of claims 1-6.
Citation Information
Patent Citations
Big data user portrait processing method in digital scene and server
CN114579873A
Event delivery method and device, electronic equipment and storage medium
CN115801788A