CN115086408B - Data processing method, system, device, electronic equipment and storage medium - Google Patents

Data processing method, system, device, electronic equipment and storage medium Download PDF

Info

Publication number
CN115086408B
CN115086408B CN202210751253.7A CN202210751253A CN115086408B CN 115086408 B CN115086408 B CN 115086408B CN 202210751253 A CN202210751253 A CN 202210751253A CN 115086408 B CN115086408 B CN 115086408B
Authority
CN
China
Prior art keywords
service
container
voting
request
identifier
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202210751253.7A
Other languages
Chinese (zh)
Other versions
CN115086408A (en
Inventor
赵振宇
贾海涛
郝拯华
牛充
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Zitiao Network Technology Co Ltd
Original Assignee
Beijing Zitiao Network Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Zitiao Network Technology Co Ltd filed Critical Beijing Zitiao Network Technology Co Ltd
Priority to CN202210751253.7A priority Critical patent/CN115086408B/en
Publication of CN115086408A publication Critical patent/CN115086408A/en
Application granted granted Critical
Publication of CN115086408B publication Critical patent/CN115086408B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

The present disclosure relates to the field of computer technology, and in particular, to a data processing method, system, apparatus, electronic device, and storage medium. According to the embodiment of the disclosure, the service of the second service is responsible for generating the first service container identifier of the first service container to be sent by the service of the first service for direct use by the service of the first service, and the first service container identifier is not needed to be generated for the first service container by the service of the first service, so that the first service container identifier for the second service can be associated with the corresponding second service at the service of the second service in time for subsequent processing, and data inconsistency between the two services can be prevented.

Description

Data processing method, system, device, electronic equipment and storage medium
Technical Field
The present disclosure relates to the field of computer technologies, and in particular, to a data processing method, system, apparatus, electronic device, and storage medium.
Background
Users sometimes have voting requirements when using collaborative office suite software, such as in instant messaging (Instant Messenger, IM) group chat sessions, video conferences, calendar cards in the suite, which may be required to initiate a vote. In the instant messaging tool, the sending and receiving of the message is also an independent core function module, so that under the micro-service framework, the two function modules are divided into two micro-services to process the service request. In the network communication process, two micro services can generate inconsistent scenes of data among the micro services, which causes trouble to users and reduces user experience.
Disclosure of Invention
This summary is provided to introduce a selection of concepts in a simplified form that are further described below in the detailed description. This summary is not intended to identify key features or essential features of the claimed subject matter, nor is it intended to be used to limit the scope of the claimed subject matter.
According to a first aspect, according to one or more embodiments of the present disclosure, there is provided a data processing method, comprising:
determining a first service container identification for a second service in response to a second service initiation request from a first client of the first service;
generating a first service container creation request based on the first service container identification;
transmitting the first service container creation request to a service of a first service, so that the service of the first service transmits a first service container for executing the second service to at least one second client based on the first service container creation request;
wherein the first service container identifier is used for indicating the first service container.
In a second aspect, according to one or more embodiments of the present disclosure, there is provided a data processing system comprising:
A service module of the second service, configured to determine a first service container identifier for the second service in response to a second service initiation request from a client of the first service;
a service module of a first service, configured to send a container of the first service for executing the second service to at least one second client based on the first service container identifier;
wherein the first service container identifier is used for indicating the first service container.
In a third aspect, according to one or more embodiments of the present disclosure, there is provided a data processing apparatus comprising:
a determining unit, configured to determine a first service container identifier for a second service in response to a second service initiation request from a first client of the first service;
a request creation unit, configured to generate a first service container creation request based on the first service container identification container;
a transmitting unit configured to transmit the first service container creation request to a service of a first service, so that the service of the first service transmits a first service container for executing the second service to at least one second client based on the first service container creation request;
wherein the first service container identifier is used for indicating the first service container.
In a fourth aspect, according to one or more embodiments of the present disclosure, there is provided an electronic device comprising: at least one memory and at least one processor; wherein the memory is for storing program code, and the processor is for invoking the program code stored by the memory to cause the electronic device to perform the data processing method provided in accordance with one or more embodiments of the present disclosure.
In a fifth aspect, according to one or more embodiments of the present disclosure, there is provided a non-transitory computer storage medium storing program code which, when executed by a computer device, causes the computer device to perform a data processing method provided according to one or more embodiments of the present disclosure.
According to one or more embodiments of the present disclosure, by the service of the second service being responsible for generating the first service container identifier of the first service container to be transmitted by the service of the first service for direct use by the service of the first service, the first service container identifier is generated for the first service container without the service of the first service, so that the first service container identifier for the second service can be associated with the corresponding second service at the service of the second service in time for subsequent processing, and data inconsistency between the two services can be prevented.
Drawings
The above and other features, advantages, and aspects of embodiments of the present disclosure will become more apparent by reference to the following detailed description when taken in conjunction with the accompanying drawings. The same or similar reference numbers will be used throughout the drawings to refer to the same or like elements. It should be understood that the figures are schematic and that elements and components are not necessarily drawn to scale.
FIG. 1 is a flow chart of a data processing method provided in accordance with an embodiment of the present disclosure;
FIG. 2 is a schematic diagram of an architecture of a data processing system provided in accordance with an embodiment of the present disclosure;
fig. 3 is a schematic structural diagram of an electronic device according to an embodiment of the present disclosure.
Detailed Description
Embodiments of the present disclosure will be described in more detail below with reference to the accompanying drawings. While certain embodiments of the present disclosure have been shown in the accompanying drawings, it is to be understood that the present disclosure may be embodied in various forms and should not be construed as limited to the embodiments set forth herein, but are provided to provide a more thorough and complete understanding of the present disclosure. It should be understood that the drawings and embodiments of the present disclosure are for illustration purposes only and are not intended to limit the scope of the present disclosure.
It should be understood that the steps recited in the embodiments of the present disclosure may be performed in a different order, and/or performed in parallel. Furthermore, embodiments may include additional steps and/or omit performing the illustrated steps. The scope of the present disclosure is not limited in this respect.
The term "including" and variations thereof as used herein are intended to be open-ended, i.e., including, but not limited to. The term "based on" is based at least in part on. The term "one embodiment" means "at least one embodiment"; the term "another embodiment" means "at least one additional embodiment"; the term "some embodiments" means "at least some embodiments. The term "responsive to" and related terms mean that one signal or event is affected to some extent by another signal or event, but not necessarily completely or directly. If event x occurs "in response to" event y, x may be directly or indirectly in response to y. For example, the occurrence of y may ultimately lead to the occurrence of x, but other intermediate events and/or conditions may exist. In other cases, y may not necessarily result in the occurrence of x, and x may occur even though y has not yet occurred. Furthermore, the term "responsive to" may also mean "at least partially responsive to".
The term "determining" broadly encompasses a wide variety of actions, which may include obtaining, calculating, computing, processing, deriving, investigating, looking up (e.g., looking up in a table, a database or another data structure), ascertaining and the like, and may also include receiving (e.g., receiving information), accessing (e.g., accessing data in a memory) and the like, and may also include receiving a generating, creating, establishing and the like, as well as parsing, selecting, choosing and the like, and the like. Related definitions of other terms will be given in the description below. Related definitions of other terms will be given in the description below.
It should be noted that the terms "first," "second," and the like in this disclosure are merely used to distinguish between different devices, modules, or units and are not used to define an order or interdependence of functions performed by the devices, modules, or units.
It should be noted that references to "one", "a plurality" and "a plurality" in this disclosure are intended to be illustrative rather than limiting, and those of ordinary skill in the art will appreciate that "one or more" is intended to be understood as "one or more" unless the context clearly indicates otherwise.
For the purposes of this disclosure, the phrase "a and/or B" means (a), (B), or (a and B).
The names of messages or information interacted between the various devices in the embodiments of the present disclosure are for illustrative purposes only and are not intended to limit the scope of such messages or information.
Referring to fig. 1, fig. 1 illustrates a data processing method provided in an embodiment of the present disclosure, including:
step S120: determining a first service container identification for a second service in response to a second service initiation request from a first client of the first service;
step S140: generating a first service container creation request based on the first service container identification;
Step S160: transmitting the first service container creation request to a service of a first service, so that the service of the first service transmits a first service container for executing the second service to at least one second client based on the first service container creation request; wherein the first service container identifier is used for indicating the first service container.
In some embodiments, the first service includes one or more of: instant messaging service, social networking service, online document service; the first service container includes one or more of the following: instant messaging messages, social networking information, online documents.
In some embodiments, the second service comprises a voting service, and the second service initiation request comprises a voting initiation request, but the disclosure is not limited thereto.
In some embodiments, the second service may further comprise an approval service, and the second service initiation request comprises an approval initiation request.
In some embodiments, the first service container may be used to expose content of the second service or perform a function corresponding to the second service. For example, if the second service is a voting service, the first service container may be used to display voting contents, perform voting functions, or view voting results.
In some embodiments, the content carried by the first service container (i.e., the first service container content) may be determined by an executing entity (e.g., a service of the second service) of the data processing method provided in this embodiment, or may be determined by another entity, which is not limited herein.
An execution subject of the data processing method provided in one or more embodiments of the present disclosure may be a voting service, which may be a preset software function module for processing the voting service, which may be configured in a dedicated server.
The second service is schematically described below as an example of the voting service, but the present disclosure is not limited thereto.
In some embodiments, the voting-initiating request is used to initiate or create a voting task.
In some embodiments, the first client is a voting initiator, i.e. a client used by a voting initiator.
Illustratively, the first business container may include, but is not limited to, instant messaging messages, social network information (i.e., messages posted to a social network platform, such as posts, microblogs, blogs, articles, etc.), online documents, and the like. For example, a user may utilize even communication messages, social networking messages, online documents, or constituent elements of online documents (blocks of content) to carry and present voting content for the user to vote and present voting results.
In some embodiments, the information that the voting initiation request may carry includes, but is not limited to, client identification, voter scope identification, voting container type information, voting topic information, minimum number of votes information, maximum number of votes information, voting disclosure information, voting choice information, or a user identification of the voting initiator. Illustratively, the voter scope is a set of voters participating in the vote, and the voter scope identifier may be an identifier corresponding to the set, such as an identifier of an instant messaging group; the voting container type may include, but is not limited to, a container for voting for the user, or a type for notifying the user (e.g., a voting sponsor) of the voting result, etc.; the voting public information is used for identifying whether the voting is public or not; the voting option information may be a list of options available for voting; the User identification of the voting initiator may be the User identification (User ID) of the voting initiator.
In some embodiments, the voting service may be a pre-set software function module for processing the voting service, which may be configured in a dedicated server.
In some embodiments, the voting container service is a service that can provide a container for votes, which can be an existing service that is originally used to process other services than voting services, including, for example, but not limited to, instant messaging services, social networking services, online document services; accordingly, the voting container may include, but is not limited to, instant messaging messages, social networking information, or online documents.
In some embodiments, the at least one second client may include a client of a voter participating in the vote, and a client of a vote initiator (i.e., the first client).
In some embodiments, even though the communication service may include a messaging service and/or a push service.
The voting by the instant messaging client will be described below as an example. The voting creation portal can be preset at the instant messaging client, through which a voting initiator can set voting information such as a voting theme, a voting option, a voting staff range (e.g., an instant messaging group), a minimum number of votes, a maximum number of votes, whether the vote is disclosed, etc., generate a voting initiation request, and send the request to a voting service. Upon receiving the request, the voting service may generate a voting identifier and a voting container identifier, place the voting identifier, a voting initiator user identifier, a voting person range identifier, voting range type information, voting subject information, minimum number of votes information, maximum number of votes information, voting state information (e.g., open or close), voting public information (e.g., whether the vote is open), voting container type information, and voting option information into a message body (i.e., voting container content), and place the message body, the voting container identifier, and other relevant parameters (e.g., whether pushing is required, whether authorization is required), etc. into a message creation request to request the message service to send a voting message to the second client.
In some embodiments, the voting identification is used to indicate a corresponding voting task, and the voting container identification is used to indicate a corresponding voting container. The voting marks and the voting tasks have unique corresponding relation, namely the same voting task corresponds to the same voting mark, and different voting tasks correspond to different voting marks; similarly, the voting container identification has a unique correspondence with the voting container. One and voting task may correspond to a plurality of voting containers and thus a plurality of voting container identifications. For example, a plurality of voting messages corresponding to the same voting task may be repeatedly transmitted in a group chat.
In some embodiments, the voting container identification includes one or more of the following: and the identification corresponding to the voting container which is sent to the at least one second client side in a group mode and the identification corresponding to the voting container which is independently sent to the first client side.
Illustratively, the voting container is exemplified as a message. If a voting message needs to be sent to a group chat, a message identification (e.g., group_msg_id) of the group message may be generated, and if a voting message needs to be privately sent to a certain client (e.g., a first client), a message identification (e.g., initiator_msg_id) for the privately sent message may be generated.
The voting container service is exemplified as a message service. Typically, a message identifier (message_id) is generated by a message service, which generates a message identifier when receiving a message creation request of a requesting party, and the message service returns the message identifier to the requesting party in a response to the message creation request after dropping other relations between a message entity and the message, and sends the message to a client, at which time the user can see the corresponding message. If the requester is a voting service, the voting service can acquire a message identifier returned by the message service, bind the corresponding voting entity with the message identifier and place the corresponding voting entity in a database, and perform corresponding logic processing according to the bound voting identifier and the message identifier in the subsequent business processes related to voting, such as updating voting, closing voting, retransmitting voting and the like. However, since the voting service and the message service are divided into two different micro-service modules, and the two micro-service modules are connected by means of a network, the two services may generate a data inconsistency problem caused by sending voting timeout due to network problem in the mutual cooperation. For example, client a initiates a voting-initiation request a for the first time, and the voting service sends a voting message to the participating voter based on the voting-initiation request a requesting message service. If, during the process of requesting a message service by a voting service, the message service located downstream successfully processes the request and sends a corresponding voting message to a voter, but a request timeout may occur due to a longer processing time of the request, for example, due to a network problem, which results in the voting service considering that the processing is failed (i.e., the voting message is failed), then for the voting service, the voting identifier is not bound to any message identifier, and the voting is not bound to any voting message. However, since the client has already displayed the voting message, the voting service cannot update the voting result onto the voting message when the voter subsequently performs a voting or other operation on the voting message.
In this regard, according to one or more embodiments of the present disclosure, by changing the generation subject of the second service container identifier (e.g., the message identifier), the execution subject of the embodiments of the present disclosure (e.g., the service of the second service) is responsible for generating the first service container identifier of the first service container to be transmitted by the service of the first service (e.g., the message service) for direct use by the first service, without requiring that the service of the first service generate the first service container identifier for the first service container for another service of the first service, so that the first service container identifier for the second service can be associated with the corresponding second service at the service of the second service in time for subsequent processing, and data inconsistency between the two services can be prevented. For example, the voting service may populate the generated message identifier into the message creation request, and after the message service recognizes that the message creation request has been populated with the message identifier, the message service may not regenerate a new message identifier, but may instead use the message identifier carried in the message creation request for subsequent processing. In this way, even if the message service has overtime, the voting service does not need to acquire the message identifier from the message service to bind the voting identifier, so that the problem that the voting service cannot bind the voting identifier with the message identifier due to cooperation between the message service and the voting service or network problems can be avoided, and the voting message can be ensured to normally execute the voting function.
In some embodiments, the service of the first business is configured to generate a corresponding target container identification for the container of the target type; the container of the target type is not a container for the second service; the voting service and the voting container service adopt the same container identifier generating algorithm, and the same container identifier generating algorithm adopts time parameters and service identifiers.
Illustratively, the time parameter includes a timestamp; the service identifier (e.g., server identifier) is an identifier uniquely corresponding to a service, and different services correspond to different service identifiers.
The voting container service is exemplified as a message service. In general, the message service needs to be responsible for generating a unique message identifier for a message, so if the voting service generates a voting message identifier for a voting message, a phenomenon that the message identifier generated by the voting service for the voting message is exactly the same as the message identifier generated by the message service for a non-voting message may occur, and once the message identifiers of two different messages are the same, disorder may occur to message contents of the two messages, disorder to operations (such as forwarding, withdrawing, replying, collecting) of the messages, and the like may occur, and even user privacy may be revealed.
In this regard, according to one or more embodiments of the present disclosure, by employing the same container identifier generation algorithm for the voting service and the voting container service, and employing the time parameter and the server identifier for the container identifier generation algorithm, the voting service may be adapted to the message service based on the format of the identifier of the voting message generated by the same algorithm, so that the message service may perform subsequent processing based on the voting message identifier, and the same voting service may generate different voting message identifiers at different times by employing the time parameter for the algorithm, so that confusion between voting message identifiers is avoided, and may also employ service identifiers uniquely corresponding to services so that confusion between message identifiers generated by different services (e.g., the voting service and the message service) is not caused by employing the algorithm.
In some embodiments, the data processing method further comprises:
step S130: determining first service container content for executing the second service based on the second service initiation request;
step S140 further includes: generating a first service container creation request based on the first service container identification and the first service container content; the first service container is used for bearing and displaying the content of the first service container.
In a specific embodiment, the service of the second service may generate a message body and a message identifier for executing the second service based on information carried by the second service initiation request, and insert the message body and the message identifier into the message creation request, so as to request the message service to send a message for executing the second service to the second client, where the message identifier of the sent message is a message identifier generated by the service of the second service.
In some embodiments, the data processing method further comprises:
step A1: determining whether the second service initiation request is a repeated request or not based on a deduplication identifier carried by the second service initiation request, wherein different second service initiation requests correspond to different deduplication identifiers;
step A2: and if the second service initiation request is determined to be a repeated request, not responding to the second service initiation request and sending the first service container to the at least one second client.
It should be noted that, not sending the first service container to the at least one second client in response to the second service initiation request means that the second client will not receive the first service container, which includes but is not limited to the following situations: (1) The service of the second service does not perform the step of determining the content of the first service container; or, (2) the service of the second service does not continue to perform the step of generating the first service container creation request; or, (3) the service of the first service does not perform the step of sending the first service container to at least one second client based on said first service container creation request.
In some embodiments, if it is determined that the second service initiation request is a repeated request, a prompt for indicating that the request is successful may be directly returned to the first client.
In some embodiments, if it is determined that the second service initiation request is not a duplicate request, then step S140 or other suitable steps may be continued.
In some embodiments, the deduplication identifier may include a Client Identifier (CID), which may be generated when the same Client initiates a different second service initiation request at a different time.
According to one or more embodiments of the present disclosure, by enabling different second service initiation requests to correspond to different deduplication identities, a server (e.g., a service of the second service) may be enabled to accurately deduplicate the second service initiation requests based on the deduplication identities.
In some scenarios, the deduplication identifier (e.g., the client identifier) generated by the client using the preset algorithm may collide, that is, the same deduplication identifier is generated when two different users initiate different second service initiation requests using different clients at the same time, so that the server misconsiders the two clients as repeated requests.
In this regard, in accordance with one or more embodiments of the present disclosure, the deduplication identification further comprises a User identification (User ID, UID) of a User currently operating the first client. In this embodiment, by performing deduplication based also on the user identifier uniquely corresponding to the voting initiator, it is possible to avoid a case where different second service initiation requests are mistakenly regarded as repeated requests because different clients generate the same client identifier.
In some embodiments, step A1 comprises: if the time interval between the successively received second service initiation requests with the same deduplication identifier does not exceed the preset duration, determining that the second service initiation requests with the same deduplication identifier are repeated requests.
In an exemplary embodiment, after the server receives the second service initiation request, a cache lasting for a preset duration (for example, 5 minutes) may be established, so as to store the deduplication identifier carried by the second service initiation request, and if the second service initiation request with the same deduplication identifier is received again within the preset duration, the two second service initiation requests may be used as repeated requests, thereby avoiding repeated creation of votes due to network reasons, misoperation of users, and other reasons, improving user experience, and saving processing and storage resources of the server.
In some embodiments, determining, by both the service of the second service and the service of the first service, whether the second service initiation request is a duplicate request; and if any one service determines that the second service initiation request is a repeated request, not responding to the second service initiation request and sending the first service container to the at least one second client.
In some embodiments, since the service of the second service and the service of the first service belong to two different micro service modules, and the two micro service modules are connected by means of a network, there may be a problem of inconsistent data when users resend votes due to a network problem in the interaction of the two services. For example, if the client a initiates a second service initiation request a for the first time, where the second service initiation request a carries the deduplication identifier α, the service of the second service will send a first service container to the participating voter based on the service of the first service requested by the second service initiation request a. In the process that the service of the second service requests the service of the first service, the service of the first service located at the downstream successfully processes the request and sends the corresponding first service container to the voter, but the service of the second service is considered to be failed in this process due to long request processing time caused by network problems and the like, so that a prompt or an instruction about the failed request is sent to the client a, the client correspondingly sends a retry, namely resends the second service initiation request A carrying the same deduplication identifier alpha, and the service of the second service considers that the last processing fails and does not consider the request as a repeated request, so that a new first service container creation request is generated to request the service of the first service, and the service of the first service again sends the same first service container to the voter based on the new request, thereby causing repeated sending of the same first service container, wasting service end resources and causing trouble to the user.
In this regard, according to one or more embodiments of the present disclosure, by further enabling the service of the first service to perform the deduplication processing on the second service initiation request, so that the service of the first service receives the second identical second service initiation request for the second time, and can treat the second service initiation request as a duplicate request, without continuing to send the identical first service container to the voter again, thereby saving server resources, without causing trouble to the user, and improving user experience.
In a specific embodiment, the service of the second service may send the obtained deduplication identifier to the service of the first service, and the service of the first service identifies the deduplication identifier. After the service of the first service receives the deduplication identifier, the service can be compared with the deduplication identifier stored in the database, and if the record is found, the second service initiation request can be determined to be a repeated request.
According to one or more embodiments of the present disclosure, there is provided a data processing system comprising:
a service module of the second service, configured to determine a first service container identifier for the second service in response to a second service initiation request from a client of the first service;
A service module of a first service, configured to send a first service container for executing the second service to at least one second client based on the first service container identifier;
wherein the first service container identifier is used for indicating the first service container.
In some embodiments, the service module of the first service is further configured to generate a corresponding target container identifier for a container of a target type; the container of the target type is not a container for the second service; the service module of the second service and the service module of the first service adopt the same container identification generating algorithm, and the same container identification generating algorithm adopts time parameters and server identifications.
In some embodiments, the service module of the second service is further configured to determine, based on a deduplication identifier carried by the second service initiation request, whether the second service initiation request is a repeated request, where different second service initiation requests correspond to different deduplication identifiers; if the second service initiation request is determined to be a repeated request, the system does not respond to the second service initiation request to send the first service container to the at least one second client.
In some embodiments, the service module of the second service and the service module of the first service are both configured to determine whether the second service initiation request is a repeated request; if any one of the services determines that the second service initiation request is a repeated request, the system does not respond to the second service initiation request to send the first service container to the at least one second client.
In some embodiments, the service module of the first service may further record and store the second service identification, the container type information, and the container content information (e.g., including static voting content information) through a preset container entity. One voting task (or second service initiation request) may correspond to a plurality of first service containers and thus may correspond to a plurality of container entities.
The voting service will be described below as an example. Fig. 2 shows a schematic architecture diagram of a data processing system provided according to an embodiment of the present disclosure, the data processing system including a voting service module (i.e., a service module of a second service) and a voting container service module (i.e., a service module of a first service, such as a message service).
The voting service module is used for receiving a voting related request sent by the client, determining voting container content or updating voting result container content and calling the voting container service to send, push or update the voting container or the voting result container, wherein the voting related request comprises but is not limited to a voting initiating request, a voting container sending request, a voting viewing request and a voting ending request.
In some embodiments, the voting service module may also record and store voting content information (e.g., including dynamic voting content information), voting identifications, voting container identifications, voting staff range identifications, and the like through preset voting entities. One voting task (or voting initiation request) corresponds to one voting entity.
In some embodiments, the voting container service module may also record and store the voting identification, container type information, and container content information (e.g., including static voting content information) via preset container entities. One voting task (or voting initiation request) may correspond to a plurality of voting containers and thus may correspond to a plurality of container entities.
In some embodiments, the voting entity and/or the container entity stores the voting identifier and the container identifier, so that both the voting service module and the voting container service module can query the corresponding voting container through the voting identifier, and can query the corresponding voting identifier through the voting container, thereby realizing bidirectional association of the voting entity and the container entity.
Illustratively, referring to fig. 2, the voting entities in the voting service module may correspond to the voting identifications (e.g., volt IDs) in the container entities 1, 2, both of which are directed to the same voting task; the voting container identifications in the voting entities may correspond to the container types in the container entities 1, 2, respectively, the container entities 1, 2 pointing to different voting containers (e.g. different voting messages), respectively.
In this embodiment, the voting entity and the container entity are data structures for storing related data.
It should be noted that, for the embodiments of the system, since they basically correspond to the method embodiments, the relevant portions will be referred to in the description of the method embodiments, and will not be described herein. Some or all of the modules may be selected according to actual needs to achieve the purpose of the solution of this embodiment. Those of ordinary skill in the art will understand and implement the present invention without undue burden.
Accordingly, there is provided, in accordance with an embodiment of the present disclosure, a data processing apparatus including:
a determining unit, configured to determine a first service container identifier for a second service in response to a second service initiation request from a first client of the first service;
a request creation unit, configured to generate a first service container creation request based on the first service container identifier;
a transmitting unit configured to transmit the first service container creation request to a service of a first service, so that the service of the first service transmits a first service container for executing the second service to at least one second client based on the first service container creation request;
Wherein the first service container identifier is used for indicating the first service container.
In some embodiments, the data processing unit further comprises:
a second service deduplication unit, configured to determine, based on a deduplication identifier carried by the second service initiation request, whether the second service initiation request is a duplicate request, where different second service initiation requests correspond to different deduplication identifiers; and the first service container is not sent to the at least one second client in response to the second service initiation request if the second service initiation request is determined to be a repeated request.
In some embodiments, the data processing unit further comprises:
a container content determining unit configured to determine, based on the second service initiation request, first service container content for executing the second service;
the request creation unit is used for generating a first service container creation request based on the first service container identifier and the first service container content; the first service container is used for bearing and displaying the content of the first service container.
For embodiments of the device, reference is made to the description of method embodiments for the relevant points, since they essentially correspond to the method embodiments. The apparatus embodiments described above are merely illustrative, wherein the modules illustrated as separate modules may or may not be separate. Some or all of the modules may be selected according to actual needs to achieve the purpose of the solution of this embodiment. Those of ordinary skill in the art will understand and implement the present invention without undue burden.
Accordingly, in accordance with one or more embodiments of the present disclosure, there is provided an electronic device comprising:
at least one memory and at least one processor;
wherein the memory is for storing program code, and the processor is for invoking the program code stored by the memory to cause the electronic device to perform the data processing method provided in accordance with one or more embodiments of the present disclosure.
Accordingly, in accordance with one or more embodiments of the present disclosure, there is provided a non-transitory computer storage medium storing program code executable by a computer device to cause the computer device to perform a data processing method provided in accordance with one or more embodiments of the present disclosure.
Referring now to fig. 3, a schematic diagram of an electronic device (e.g., a terminal device or server) 1300 suitable for use in implementing embodiments of the present disclosure is shown. The terminal devices in the embodiments of the present disclosure may include, but are not limited to, mobile terminals such as mobile phones, notebook computers, digital broadcast receivers, PDAs (personal digital assistants), PADs (tablet computers), PMPs (portable multimedia players), in-vehicle terminals (e.g., in-vehicle navigation terminals), and the like, and stationary terminals such as digital TVs, desktop computers, and the like. The electronic device shown in fig. 3 is merely an example and should not be construed to limit the functionality and scope of use of the disclosed embodiments.
As shown in fig. 3, the electronic device 1300 may include a processing means (e.g., a central processor, a graphics processor, etc.) 1301, which may perform various appropriate actions and processes according to a program stored in a Read Only Memory (ROM) 1302 or a program loaded from a storage means 1308 into a Random Access Memory (RAM) 1303. In the RAM1303, various programs and data necessary for the operation of the electronic apparatus 1300 are also stored. The processing device 1301, the ROM 1302, and the RAM1303 are connected to each other through a bus 1304. An input/output (I/O) interface 1305 is also connected to bus 1304.
In general, the following devices may be connected to the I/O interface 1305: input devices 1306 including, for example, a touch screen, touchpad, keyboard, mouse, camera, microphone, accelerometer, gyroscope, and the like; an output device 1307 including, for example, a Liquid Crystal Display (LCD), a speaker, a vibrator, and the like; storage 1308 including, for example, magnetic tape, hard disk, etc.; and communication means 1309. The communication means 1309 may allow the electronic device 1300 to communicate with other devices wirelessly or by wire to exchange data. While fig. 3 shows an electronic device 1300 having various means, it is to be understood that not all illustrated means are required to be implemented or provided. More or fewer devices may be implemented or provided instead.
In particular, according to embodiments of the present disclosure, the processes described above with reference to flowcharts may be implemented as computer software programs. For example, embodiments of the present disclosure include a computer program product comprising a computer program embodied on a computer readable medium, the computer program comprising program code for performing the method shown in the flowcharts. In such an embodiment, the computer program may be downloaded and installed from a network via the communications device 1309, or installed from the storage device 1308, or installed from the ROM 1302. The above-described functions defined in the methods of the embodiments of the present disclosure are performed when the computer program is executed by the processing device 1301.
It should be noted that the computer readable medium described in the present disclosure may be a computer readable signal medium or a computer readable storage medium, or any combination of the two. The computer readable storage medium can be, for example, but not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or a combination of any of the foregoing. More specific examples of the computer-readable storage medium may include, but are not limited to: an electrical connection having one or more wires, a portable computer diskette, a hard disk, a Random Access Memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing. In the context of this disclosure, a computer-readable storage medium may be any tangible medium that can contain, or store a program for use by or in connection with an instruction execution system, apparatus, or device. In the present disclosure, however, the computer-readable signal medium may include a data signal propagated in baseband or as part of a carrier wave, with the computer-readable program code embodied therein. Such a propagated data signal may take any of a variety of forms, including, but not limited to, electro-magnetic, optical, or any suitable combination of the foregoing. A computer readable signal medium may also be any computer readable medium that is not a computer readable storage medium and that can communicate, propagate, or transport a program for use by or in connection with an instruction execution system, apparatus, or device. Program code embodied on a computer readable medium may be transmitted using any appropriate medium, including but not limited to: electrical wires, fiber optic cables, RF (radio frequency), and the like, or any suitable combination of the foregoing.
In some implementations, the clients, servers may communicate using any currently known or future developed network protocol, such as HTTP (HyperText Transfer Protocol ), and may be interconnected with any form or medium of digital data communication (e.g., a communication network). Examples of communication networks include a local area network ("LAN"), a wide area network ("WAN"), the internet (e.g., the internet), and peer-to-peer networks (e.g., ad hoc peer-to-peer networks), as well as any currently known or future developed networks.
The computer readable medium may be contained in the electronic device; or may exist alone without being incorporated into the electronic device.
The computer readable medium carries one or more programs which, when executed by the electronic device, cause the electronic device to perform the methods of the present disclosure described above.
Computer program code for carrying out operations of the present disclosure may be written in one or more programming languages, including an object oriented programming language such as Java, smalltalk, C ++ and conventional procedural programming languages, such as the "C" programming language or similar programming languages. The program code may execute entirely on the user's computer, partly on the user's computer, as a stand-alone software package, partly on the user's computer and partly on a remote computer or entirely on the remote computer or server. In the case of a remote computer, the remote computer may be connected to the user's computer through any kind of network, including a Local Area Network (LAN) or a Wide Area Network (WAN), or may be connected to an external computer (for example, through the Internet using an Internet service provider).
The flowcharts and block diagrams in the figures illustrate the architecture, functionality, and operation of possible implementations of systems, methods and computer program products according to various embodiments of the present disclosure. In this regard, each block in the flowchart or block diagrams may represent a module, segment, or portion of code, which comprises one or more executable instructions for implementing the specified logical function(s). It should also be noted that, in some alternative implementations, the functions noted in the block may occur out of the order noted in the figures. For example, two blocks shown in succession may, in fact, be executed substantially concurrently, or the blocks may sometimes be executed in the reverse order, depending upon the functionality involved. It will also be noted that each block of the block diagrams and/or flowchart illustration, and combinations of blocks in the block diagrams and/or flowchart illustration, can be implemented by special purpose hardware-based systems which perform the specified functions or acts, or combinations of special purpose hardware and computer instructions.
The units involved in the embodiments of the present disclosure may be implemented by means of software, or may be implemented by means of hardware. Wherein the names of the units do not constitute a limitation of the units themselves in some cases.
The functions described above herein may be performed, at least in part, by one or more hardware logic components. For example, without limitation, exemplary types of hardware logic components that may be used include: a Field Programmable Gate Array (FPGA), an Application Specific Integrated Circuit (ASIC), an Application Specific Standard Product (ASSP), a system on a chip (SOC), a Complex Programmable Logic Device (CPLD), and the like.
In the context of this disclosure, a machine-readable medium may be a tangible medium that can contain, or store a program for use by or in connection with an instruction execution system, apparatus, or device. The machine-readable medium may be a machine-readable signal medium or a machine-readable storage medium. The machine-readable medium may include, but is not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any suitable combination of the foregoing. More specific examples of a machine-readable storage medium would include an electrical connection based on one or more wires, a portable computer diskette, a hard disk, a Random Access Memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing.
According to one or more embodiments of the present disclosure, there is provided a data processing method including: determining a first service container identification for a second service in response to a second service initiation request from a first client of the first service; generating a first service container creation request based on the first service container identification; transmitting the first service container creation request to a service of a first service, so that the service of the first service transmits a first service container for executing the second service to at least one second client based on the first service container creation request; wherein the first service container identifier is used for indicating the first service container.
According to one or more embodiments of the present disclosure, the second service includes a voting service; the second service initiation request comprises a voting initiation request.
According to one or more embodiments of the present disclosure, the first service includes one or more of the following: instant messaging service, social networking service, online document service; the first service container includes one or more of the following: instant messaging messages, social networking information, online documents.
According to one or more embodiments of the present disclosure, the service of the first business is configured to generate a corresponding target container identification for a container of a target type; the container of the target type is not a container for the second service; the service of the second service and the service of the first service adopt the same container identification generating algorithm, and the same container identification generating algorithm adopts time parameters and service identifications.
Methods provided according to one or more embodiments of the present disclosure further include: determining whether the second service initiation request is a repeated request or not based on a deduplication identifier carried by the second service initiation request, wherein different second service initiation requests correspond to different deduplication identifiers; and if the second service initiation request is determined to be a repeated request, not responding to the second service initiation request and sending the first service container to the at least one second client.
According to one or more embodiments of the present disclosure, determining, by both the service of the second service and the service of the first service, whether the second service initiation request is a duplicate request; and if any one service determines that the second service initiation request is a repeated request, not responding to the second service initiation request and sending the first service container to the at least one second client.
According to one or more embodiments of the present disclosure, the deduplication identification comprises a client identification; different second service initiation requests sent by the same client carry different client identifications.
In accordance with one or more embodiments of the present disclosure, the deduplication identification further comprises a user identification of a user currently operating the first client.
Methods provided according to one or more embodiments of the present disclosure further include: determining first service container content for executing the second service based on the second service initiation request; the generating a first service container creation request based on the first service container identification includes: generating a first service container creation request based on the first service container identification and the first service container content; the first service container is used for bearing and displaying the content of the first service container.
According to one or more embodiments of the present disclosure, there is provided a data processing system comprising: a service module of the second service, configured to determine a first service container identifier for the second service in response to a second service initiation request from a client of the first service; a service module of a first service, configured to send a first service container for executing the second service to at least one second client based on the first service container identifier; wherein the first service container identifier is used for indicating the first service container.
According to one or more embodiments of the present disclosure, there is provided a voting processing device comprising: a determining unit, configured to determine a first service container identifier for a second service in response to a second service initiation request from a first client of the first service; a request creation unit, configured to generate a first service container creation request based on the first service container identifier; a transmitting unit configured to transmit the first service container creation request to a service of a first service, so that the service of the first service transmits a first service container for executing the second service to at least one second client based on the first service container creation request; wherein the first service container identifier is used for indicating the first service container.
According to one or more embodiments of the present disclosure, there is provided an electronic device including: at least one memory and at least one processor; wherein the memory is for storing program code, and the processor is for invoking the program code stored by the memory to cause the electronic device to perform the data processing method provided in accordance with one or more embodiments of the present disclosure.
According to one or more embodiments of the present disclosure, there is provided a non-transitory computer storage medium storing program code which, when executed by a computer device, causes the computer device to perform a data processing method provided according to one or more embodiments of the present disclosure.
The foregoing description is only of the preferred embodiments of the present disclosure and description of the principles of the technology being employed. It will be appreciated by persons skilled in the art that the scope of the disclosure referred to in this disclosure is not limited to the specific combinations of features described above, but also covers other embodiments which may be formed by any combination of features described above or equivalents thereof without departing from the spirit of the disclosure. Such as those described above, are mutually substituted with the technical features having similar functions disclosed in the present disclosure (but not limited thereto).
Moreover, although operations are depicted in a particular order, this should not be understood as requiring that such operations be performed in the particular order shown or in sequential order. In certain circumstances, multitasking and parallel processing may be advantageous. Likewise, while several specific implementation details are included in the above discussion, these should not be construed as limiting the scope of the present disclosure. Certain features that are described in the context of separate embodiments can also be implemented in combination in a single embodiment. Conversely, various features that are described in the context of a single embodiment can also be implemented in multiple embodiments separately or in any suitable subcombination.
Although the subject matter has been described in language specific to structural features and/or methodological acts, it is to be understood that the subject matter defined in the appended claims is not necessarily limited to the specific features or acts described above. Rather, the specific features and acts described above are example forms of implementing the claims.

Claims (13)

1. A method of data processing, comprising:
determining a first service container identification for a second service in response to a second service initiation request from a first client of the first service;
generating a first service container creation request based on the first service container identification;
transmitting the first service container creation request to a service of a first service, so that the service of the first service transmits a first service container for executing the second service to at least one second client based on the first service container creation request;
wherein the first service container identifier is used for indicating the first service container, and the first service container is used for displaying the content of the second service or executing the function of the second service; the first service and the second service are different types of services.
2. The method of claim 1, wherein the step of determining the position of the substrate comprises,
the second service comprises a voting service;
the second service initiation request comprises a voting initiation request.
3. The method of claim 1, wherein the step of determining the position of the substrate comprises,
the first service includes one or more of the following: instant messaging service, social networking service, online document service;
the first service container includes one or more of the following: instant messaging messages, social networking information, online documents.
4. The method of claim 1, wherein the step of determining the position of the substrate comprises,
the service of the first business is configured to generate a corresponding target container identification for a container of a target type; the container of the target type is not a container for the second service;
the service of the second service and the service of the first service adopt the same container identification generating algorithm, and the same container identification generating algorithm adopts time parameters and service identifications.
5. The method as recited in claim 1, further comprising:
determining whether the second service initiation request is a repeated request or not based on a deduplication identifier carried by the second service initiation request, wherein different second service initiation requests correspond to different deduplication identifiers;
And if the second service initiation request is determined to be a repeated request, not responding to the second service initiation request and sending the first service container to the at least one second client.
6. The method of claim 5, wherein the step of determining the position of the probe is performed,
determining, by both the service of the second service and the service of the first service, whether the second service initiation request is a repeated request;
and if any one service determines that the second service initiation request is a repeated request, not responding to the second service initiation request and sending the first service container to the at least one second client.
7. The method of claim 5, wherein the step of determining the position of the probe is performed,
the deduplication identifier comprises a client identifier; different second service initiation requests sent by the same client carry different client identifications.
8. The method of claim 7, wherein the step of determining the position of the probe is performed,
the deduplication identification also includes a user identification of a user currently operating the first client.
9. The method as recited in claim 1, further comprising:
determining first service container content for executing the second service based on the second service initiation request;
The generating a first service container creation request based on the first service container identification includes: generating a first service container creation request based on the first service container identification and the first service container content;
the first service container is used for bearing and displaying the content of the first service container.
10. A data processing system, comprising:
a service module of the second service, configured to determine a first service container identifier for the second service in response to a second service initiation request from a client of the first service;
a service module of a first service, configured to send a first service container for executing the second service to at least one second client based on the first service container identifier;
wherein the first service container identifier is used for indicating the first service container, and the first service container is used for displaying the content of the second service or executing the function of the second service; the first service and the second service are different types of services.
11. A voting processing device, comprising:
a determining unit, configured to determine a first service container identifier for a second service in response to a second service initiation request from a first client of the first service;
A request creation unit, configured to generate a first service container creation request based on the first service container identifier;
a transmitting unit configured to transmit the first service container creation request to a service of a first service, so that the service of the first service transmits a first service container for executing the second service to at least one second client based on the first service container creation request;
wherein the first service container identifier is used for indicating the first service container, and the first service container is used for displaying the content of the second service or executing the function of the second service; the first service and the second service are different types of services.
12. An electronic device, comprising:
at least one memory and at least one processor;
wherein the memory is for storing program code and the processor is for invoking the program code stored in the memory to cause the electronic device to perform the method of any of claims 1-9.
13. A non-transitory computer storage medium comprising,
the non-transitory computer storage medium stores program code that, when executed by a computer device, causes the computer device to perform the method of any of claims 1 to 9.
CN202210751253.7A 2022-06-28 2022-06-28 Data processing method, system, device, electronic equipment and storage medium Active CN115086408B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210751253.7A CN115086408B (en) 2022-06-28 2022-06-28 Data processing method, system, device, electronic equipment and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210751253.7A CN115086408B (en) 2022-06-28 2022-06-28 Data processing method, system, device, electronic equipment and storage medium

Publications (2)

Publication Number Publication Date
CN115086408A CN115086408A (en) 2022-09-20
CN115086408B true CN115086408B (en) 2023-12-19

Family

ID=83256700

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210751253.7A Active CN115086408B (en) 2022-06-28 2022-06-28 Data processing method, system, device, electronic equipment and storage medium

Country Status (1)

Country Link
CN (1) CN115086408B (en)

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1992622A (en) * 2005-12-29 2007-07-04 腾讯科技(深圳)有限公司 Method for implementing group subscriber ballot in instant communication system
CN101001151A (en) * 2006-01-15 2007-07-18 腾讯科技(深圳)有限公司 Message transmitting system and method
CN105706135A (en) * 2013-10-30 2016-06-22 谷歌公司 Supporting voting-based campaigns in search
CN105788055A (en) * 2014-12-23 2016-07-20 富泰华工业(深圳)有限公司 Voting system and method for social networking site
WO2016115646A1 (en) * 2015-01-21 2016-07-28 Correa Parker Cesar Ramón Juan An electronic voting method and system implemented in a portable device
CN109976771A (en) * 2019-03-28 2019-07-05 新华三技术有限公司 A kind of dispositions method and device of application
CN110362341A (en) * 2019-07-24 2019-10-22 上海钧正网络科技有限公司 Business management method, device, equipment and storage medium based on micro services framework
CN112600914A (en) * 2020-12-07 2021-04-02 腾讯科技(深圳)有限公司 Data processing method and device, computer readable medium and electronic equipment

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1992622A (en) * 2005-12-29 2007-07-04 腾讯科技(深圳)有限公司 Method for implementing group subscriber ballot in instant communication system
CN101001151A (en) * 2006-01-15 2007-07-18 腾讯科技(深圳)有限公司 Message transmitting system and method
CN105706135A (en) * 2013-10-30 2016-06-22 谷歌公司 Supporting voting-based campaigns in search
CN105788055A (en) * 2014-12-23 2016-07-20 富泰华工业(深圳)有限公司 Voting system and method for social networking site
WO2016115646A1 (en) * 2015-01-21 2016-07-28 Correa Parker Cesar Ramón Juan An electronic voting method and system implemented in a portable device
CN109976771A (en) * 2019-03-28 2019-07-05 新华三技术有限公司 A kind of dispositions method and device of application
CN110362341A (en) * 2019-07-24 2019-10-22 上海钧正网络科技有限公司 Business management method, device, equipment and storage medium based on micro services framework
CN112600914A (en) * 2020-12-07 2021-04-02 腾讯科技(深圳)有限公司 Data processing method and device, computer readable medium and electronic equipment

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
Social Media Intelligence and Learning Environment: an Open Source Framework for Social Media Data Collection, Analysis and Curation;Chen Wang del;2019 15th International Conference on eScience (eScience);全文 *
基于P2P技术的企业即时通信平台开发研究;吕喆;王树明;;计算机与现代化(06);全文 *

Also Published As

Publication number Publication date
CN115086408A (en) 2022-09-20

Similar Documents

Publication Publication Date Title
CN112311841B (en) Information pushing method and device, electronic equipment and computer readable medium
CN111931962B (en) Information display method and device and electronic equipment
CN110781373B (en) List updating method and device, readable medium and electronic equipment
US20220377119A1 (en) Interaction method and apparatus, and electronic device
US11758087B2 (en) Multimedia conference data processing method and apparatus, and electronic device
CN115037709B (en) Information processing method, apparatus, electronic device and storage medium
CN111163336B (en) Video resource pushing method and device, electronic equipment and computer readable medium
CN111506376A (en) Feedback information display method and device, readable medium and electronic equipment
CN113326013A (en) Information interaction method and device and electronic equipment
CN110719222A (en) Method for revoking resources, method, apparatus and medium for refunding resources
CN112311750B (en) Interaction method and device and electronic equipment
CN110855655B (en) Information verification method, device, equipment and storage medium
CN111225255B (en) Target video push playing method and device, electronic equipment and storage medium
CN112367241A (en) Message generation and message transmission method, device, equipment and computer readable medium
US11848762B2 (en) Live broadcast stream pushing method and apparatus, and electronic device
US11777889B2 (en) Information processing method and device and electronic equipment
CN115086408B (en) Data processing method, system, device, electronic equipment and storage medium
CN113079085B (en) Business service interaction method, business service interaction device, business service interaction equipment and storage medium
CN115658655A (en) Information processing method, device, electronic equipment and storage medium
CN115563134A (en) Interaction method, interaction device, electronic equipment and computer readable medium
CN111182023B (en) Mutual aid task processing method and system
CN111897620A (en) Interaction method and device and electronic equipment
CN114973495B (en) Voting processing method, voting processing system, voting processing device, electronic equipment and storage medium
CN111367590A (en) Interrupt event processing method and device
US20240152504A1 (en) Data interaction method, apparatus, and electronic device

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant