CN111970349B - Communication system, method, device, equipment and medium based on remote procedure call - Google Patents

Communication system, method, device, equipment and medium based on remote procedure call Download PDF

Info

Publication number
CN111970349B
CN111970349B CN202010791437.7A CN202010791437A CN111970349B CN 111970349 B CN111970349 B CN 111970349B CN 202010791437 A CN202010791437 A CN 202010791437A CN 111970349 B CN111970349 B CN 111970349B
Authority
CN
China
Prior art keywords
transmission object
remote procedure
procedure call
service module
rule
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
CN202010791437.7A
Other languages
Chinese (zh)
Other versions
CN111970349A (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.)
China Construction Bank Corp
Original Assignee
China Construction Bank Corp
CCB Finetech 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 China Construction Bank Corp, CCB Finetech Co Ltd filed Critical China Construction Bank Corp
Priority to CN202010791437.7A priority Critical patent/CN111970349B/en
Publication of CN111970349A publication Critical patent/CN111970349A/en
Application granted granted Critical
Publication of CN111970349B publication Critical patent/CN111970349B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
    • H04L67/025Protocols based on web technology, e.g. hypertext transfer protocol [HTTP] for remote control or remote monitoring of applications
    • 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/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/547Remote procedure calls [RPC]; Web services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/133Protocols for remote procedure calls [RPC]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/60Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Communication Control (AREA)

Abstract

The embodiment of the invention discloses a communication system, a method, a device, equipment and a medium based on remote procedure call. The system comprises: the system comprises a transmission object engineering module, a communication service module and at least one basic service module; the transmission object engineering module issues a transmission object rule corresponding to the remote procedure call interface of each basic service module; the communication service module determines a target basic service module and a transmission object rule corresponding to a request message of an external system, converts the request message into transmission object data, serializes the transmission object data when the transmission object data accords with the transmission object data check rule, generates a remote process call request and sends the remote process call request to the target basic service module; and when the remote procedure call versions are consistent, the basic service modules perform deserialization to obtain transmission object data and execute service logic. The embodiment of the invention can reduce the problem of development coupling of communication service and basic service and reduce unnecessary network resource overhead caused by data errors.

Description

Communication system, method, device, equipment and medium based on remote procedure call
Technical Field
Embodiments of the present invention relate to the field of computer technologies, and in particular, to a communication system, method, apparatus, device, and medium based on remote procedure call.
Background
The current micro service communication mode is mainly divided into two forms of Representational State Transfer (REST) and Remote Procedure Call (RPC). The RPC communication mode is to call a remote method like a local method. The RPC has the advantage of high performance, but the communication service in the micro-service component of the RPC is tightly coupled with the basic service, so that when a basic service developer needs to newly add or change an RPC service interface of the basic service, the communication service developer needs to synchronously develop, update the RPC service configuration and the transmission object serialization, and the RPC service configuration and the transmission object serialization are consistent with the basic service of the basic service developer.
If the basic service has functions added or changed, the RPC service interface and the transmission object are changed, and communication service developers also need to change the communication service. If there are many basic service components, it is difficult for communication service developers to maintain communication services. If the basic service is changed in a unilateral way and the communication service is not modified synchronously, the problem of interface compatibility caused by inconsistency between the communication service and the basic service can be caused.
Therefore, how to reduce the development coupling problem of communication service and basic service in the micro service component of RPC and reduce unnecessary network resource overhead caused by data error becomes a technical problem to be solved urgently at present.
Disclosure of Invention
Embodiments of the present invention provide a communication system, method, apparatus, device, and medium based on remote procedure call, which can reduce the problem of development coupling between communication services and basic services, and reduce unnecessary network resource overhead caused by data errors.
In a first aspect, an embodiment of the present invention provides a communication system based on remote procedure call, including:
the system comprises a transmission object engineering module, a communication service module and at least one basic service module;
the transmission object engineering module is configured to issue a transmission object rule corresponding to a remote procedure call interface of each basic service module, where the transmission object rule includes: the method comprises the following steps of defining a transmission object, serializing a transmission object, deserializing a transmission object, checking a transmission object data, calling a service configuration rule by a remote process and calling a version check rule by the remote process;
the communication service module is used for determining a target basic service module corresponding to a request message and a transmission object rule corresponding to a remote process calling interface of the target basic service module in the transmission object engineering module according to a remote process calling service configuration rule in the transmission object engineering module when receiving the request message of an external system, and converting the request message into transmission object data; judging whether the transmission object data accords with a transmission object data check rule or not according to a transmission object data check rule corresponding to a remote procedure call interface of the target basic service module in the transmission object engineering module; if the transmission object data is determined to accord with the transmission object data check rule, serializing the transmission object data according to a transmission object serialization rule corresponding to a remote procedure call interface of the target basic service module in the transmission object engineering module, generating a remote procedure call request corresponding to the request message, and sending the remote procedure call request to the target basic service module;
each basic service module is used for judging whether the remote procedure calling version of the remote procedure calling request is consistent with the remote procedure calling version of the basic service module according to the corresponding remote procedure calling version checking rule when receiving the remote procedure calling request sent by the communication service module; and if the remote procedure call version of the remote procedure call request is consistent with the remote procedure call version of the basic service module, deserializing the remote procedure call request according to the corresponding deserializing rule of the transmission object to obtain transmission object data corresponding to the remote procedure call request, and executing service logic corresponding to the transmission object data.
In a second aspect, an embodiment of the present invention further provides a communication method based on remote procedure call, including:
when receiving a request message of an external system, a communication service module determines a target basic service module corresponding to the request message and a transmission object rule corresponding to a remote process calling interface of the target basic service module in a transmission object engineering module according to a remote process calling service configuration rule in the transmission object engineering module, and converts the request message into transmission object data;
the communication service module judges whether the transmission object data accords with a transmission object data check rule or not according to a transmission object data check rule corresponding to a remote process call interface of the target basic service module in the transmission object engineering module;
if the communication service module determines that the transmission object data accords with a transmission object data check rule, serializing the transmission object data according to a transmission object serialization rule corresponding to a remote process call interface of the target basic service module in the transmission object engineering module, generating a remote process call request corresponding to the request message, and sending the remote process call request to the target basic service module so that the target basic service module processes the remote process call request.
In a third aspect, an embodiment of the present invention further provides a communication device based on remote procedure call, including:
the message conversion unit is used for determining a target basic service module corresponding to a request message and a transmission object rule corresponding to a remote process calling interface of the target basic service module in a transmission object engineering module according to a remote process calling service configuration rule in the transmission object engineering module when the request message of an external system is received, and converting the request message into transmission object data;
the data checking unit is used for judging whether the transmission object data accords with a transmission object data checking rule or not according to a transmission object data checking rule corresponding to a remote process calling interface of the target basic service module in the transmission object engineering module;
and the request sending unit is used for serializing the transmission object data according to a transmission object serialization rule corresponding to a remote process call interface of the target basic service module in the transmission object engineering module if the transmission object data is determined to accord with a transmission object data check rule, generating a remote process call request corresponding to the request message, and sending the remote process call request to the target basic service module so that the target basic service module processes the remote process call request.
In a fourth aspect, an embodiment of the present invention further provides a computer device, including a memory, a processor, and a computer program stored in the memory and executable on the processor, where the processor executes the computer program to implement the remote procedure call-based communication method according to the embodiment of the present invention.
In a fifth aspect, an embodiment of the present invention further provides a computer-readable storage medium, on which a computer program is stored, where the computer program is executed by a processor to implement the remote procedure call based communication method according to the embodiment of the present invention.
According to the technical scheme of the embodiment of the invention, the transmission object rule corresponding to the remote process calling interface of each basic service module is issued by the transmission object engineering module, and the transmission object rule corresponding to the remote process calling interface of each basic service module is provided for the communication service module to be quoted; when receiving a request message of an external system, the communication service module determines a target basic service module corresponding to the request message and a transmission object rule corresponding to a remote process calling interface of the target basic service module in a transmission object engineering module according to a remote process calling service configuration rule, converts the request message into transmission object data, and judges whether the transmission object data accords with the transmission object data checking rule or not according to a transmission object data checking rule corresponding to the remote process calling interface of the target basic service module; if the transmission object data is in accordance with the transmission object data check rule, serializing the transmission object data according to a transmission object serialization rule, generating a remote procedure call request corresponding to the request message, and sending the remote procedure call request to a target basic service module; when receiving a remote procedure call request sent by a communication service module, a target basic service module judges whether a remote procedure call version of the remote procedure call request is consistent with a remote procedure call version of the basic service module according to a corresponding remote procedure call version check rule; if the remote procedure call version of the remote procedure call request is consistent with the version of the target basic service module, deserializing the remote procedure call request according to the corresponding deserializing rule of the transmission object to obtain transmission object data corresponding to the remote procedure call request, executing business logic corresponding to the transmission object data, issuing the transmission object rule corresponding to the remote procedure call interface of each basic service module through a transmission object engineering module to be provided for the communication service module to be quoted, updating the transmission object rule through the transmission object engineering module when the basic service module has a new or changed function, wherein the communication service module does not need to be changed, the development coupling problem of the communication service and the basic service is reduced, and the communication service module can check the data of the transmission object data according to the checking rule of the transmission object data, the method and the device realize loose coupling of the data rules and the business logic, meanwhile, when the data are abnormal, the remote process calling request cannot be sent to the basic service module, unnecessary network resource overhead caused by the data abnormality is avoided, network overhead is saved, version check can be carried out on the remote process calling request sent by the communication service module through the basic service module, the condition that the communication service version is inconsistent with the basic service version due to unilateral deployment is avoided, and unnecessary network resource overhead caused by the inconsistent remote process calling version can be avoided.
Drawings
Fig. 1 is a schematic structural diagram of a communication system based on remote procedure call according to an embodiment of the present invention.
Fig. 2 is a flowchart of a communication method based on remote procedure call according to a second embodiment of the present invention.
Fig. 3 is a flowchart of a communication method based on remote procedure call according to a third embodiment of the present invention.
Fig. 4 is a schematic structural diagram of a communication device based on remote procedure call according to a fourth embodiment of the present invention.
Fig. 5 is a schematic structural diagram of a computer device according to a fifth embodiment of the present invention.
Detailed Description
The present invention will be described in further detail with reference to the accompanying drawings and examples. It is to be understood that the specific embodiments described herein are merely illustrative of the invention and are not limiting of the invention.
It should be further noted that, for the convenience of description, only some but not all of the relevant aspects of the present invention are shown in the drawings. Before discussing exemplary embodiments in more detail, it should be noted that some exemplary embodiments are described as processes or methods depicted as flowcharts. Although a flowchart may describe the operations (or steps) as a sequential process, many of the operations can be performed in parallel, concurrently, or simultaneously. In addition, the order of the operations may be re-arranged. The process may be terminated when its operations are completed, but may have additional steps not included in the figure. The processes may correspond to methods, functions, procedures, subroutines, and the like.
Example one
Fig. 1 is a schematic structural diagram of a communication system based on remote procedure call according to an embodiment of the present invention. The embodiment of the invention can be suitable for the condition that the micro-service component carries out communication based on a remote process calling mode. As shown in fig. 1, the communication system based on remote procedure call may specifically include: a transmission object engineering module 101, a communication service module 102, and at least one basic service module 103, the structure and function of which will be described below.
The transmission object engineering module 101 is configured to issue a transmission object rule corresponding to a remote procedure call interface of each basic service module 103, where the transmission object rule includes: a transport object definition, a transport object serialization rule, a transport object deserialization rule, a transport object data check rule, a remote procedure call service configuration rule, and a remote procedure call version check rule.
The communication service module 102 is configured to, when receiving a request packet from an external system, determine, according to a remote procedure call service configuration rule in the transmission object engineering module 101, a target basic service module corresponding to the request packet and a transmission object rule corresponding to a remote procedure call interface of the target basic service module in the transmission object engineering module, and convert the request packet into transmission object data; judging whether the transmission object data accords with a transmission object data check rule or not according to a transmission object data check rule corresponding to a remote procedure call interface of the target basic service module in the transmission object engineering module 101; if the transmission object data is determined to accord with the transmission object data check rule, serializing the transmission object data according to a transmission object serialization rule corresponding to a remote procedure call interface of the target basic service module in the transmission object engineering module 101, generating a remote procedure call request corresponding to the request message, and sending the remote procedure call request to the target basic service module.
Each basic service module 103 is configured to, when receiving a remote procedure call request sent by the communication service module 102, determine whether a remote procedure call version of the remote procedure call request is consistent with a remote procedure call version of the basic service module 103 according to a corresponding remote procedure call version check rule; if the remote procedure call version of the remote procedure call request is determined to be consistent with the remote procedure call version of the basic service module 103, deserializing the remote procedure call request according to the corresponding deserializing rule of the transmission object to obtain transmission object data corresponding to the remote procedure call request, and executing service logic corresponding to the transmission object data.
Specifically, the transmission object engineering module 101 issues a transmission object rule corresponding to the remote procedure call interface of each basic service module 103, and provides the transmission object rule corresponding to the remote procedure call interface of each basic service module 103 to the communication service module 102 for reference. When receiving a request message from an external system, the communication service module 102 determines a target basic service module corresponding to the request message and a transmission object rule corresponding to a remote procedure call interface of the target basic service module in the transmission object engineering module according to a remote procedure call service configuration rule in the transmission object engineering module 101, and converts the request message into transmission object data. Then, the communication service module 102 determines whether the transmission object data conforms to the transmission object data check rule according to the transmission object data check rule corresponding to the remote procedure call interface of the target basic service module in the transmission object engineering module 101. If the transmission object data is determined to accord with the transmission object data check rule, the transmission object data is serialized according to a transmission object serialization rule corresponding to a remote procedure call interface of the target basic service module in the transmission object engineering module 101, a remote procedure call request corresponding to the request message is generated, and the remote procedure call request is sent to the target basic service module. When receiving a remote procedure call request sent by the communication service module 102, the target basic service module determines whether the remote procedure call version of the remote procedure call request is consistent with the remote procedure call version of the basic service module according to the corresponding remote procedure call version check rule. And if the remote procedure call version of the remote procedure call request is consistent with the version of the target basic service module, deserializing the remote procedure call request according to the corresponding deserializing rule of the transmission object to obtain transmission object data corresponding to the remote procedure call request, and executing service logic corresponding to the transmission object data.
Optionally, the transport object rule is a rule associated with a transport object used by a remote procedure call interface of the base service module. The transmission object is a message body which can be transmitted through a remote procedure call interface of the basic service module. The transport object definition may include definition information of the message body. The transmission object data is data obtained by converting the request message into an object. The transmission object data may include parameter data in the request message. The transmission object serialization rule is a rule for serializing transmission object data into a message that can be transmitted over a network. The transmission object deserialization rule is a rule for deserializing a message transmitted by the network into transmission object data. The transmission target data check rule is a rule for checking whether or not there is an abnormality in the transmission target data. The remote procedure call service configuration rule may include business function information of the base service module and an interface address of the remote procedure call interface corresponding to the business function information. The remote procedure call version check rule is a rule used for checking the remote procedure call version and judging whether the remote procedure call version is consistent.
Optionally, the transmission object engineering module 101 issues, through a project management tool, a transmission object rule corresponding to a remote procedure call interface of each basic service module 103.
Illustratively, the transport object engineering module 101 issues transport object rules corresponding to the remote procedure call interfaces of the respective basic service modules 103 via the project management tool Maven. Maven is a project management tool that contains an object model, a set of criteria, a project lifecycle, a dependency management system, and logic to run plug-in targets that define plug-ins in the lifecycle phases.
Optionally, the transmission object engineering module 101 is further configured to: updating the issued transmission object rule corresponding to the remote procedure call interface of each basic service module 103 according to the transmission object rule update information corresponding to each basic service module 103.
Specifically, when the basic service module 103 adds or changes a service logic, the transmission object rule corresponding to the remote procedure call interface of the basic service module 103 needs to be updated. The transmission object rule update information is information for updating the transmission object rule. The user may update the issued transmission object rule corresponding to the remote procedure call interface of the basic service module 103 by sending the transmission object rule update information corresponding to the basic service module 103 to the transmission object engineering module 101, and provide the updated transmission object rule corresponding to the remote procedure call interface of each basic service module 103 to the communication service module 102 for reference. The communication service module 102 need not be changed.
Optionally, the communication service module 102 may receive a request message sent by an external system through the REST interface. The request message is a message for requesting to call the basic service module to execute the business logic. The external system may invoke a basic service module 103 to execute the service logic by sending a request message to the communication service module 102.
Optionally, the communication service module 102 may determine a service function corresponding to the request message according to the parameter data in the request message, and then determine, according to the service function information of each basic service module 103 in the remote procedure call service configuration rule, the basic service module 103 for implementing the service function corresponding to the request message, that is, determine a target basic service module corresponding to the request message, and determine a transmission object rule corresponding to the remote procedure call interface of the target basic service module in the transmission object engineering module. The target basic service module is the basic service module 103 that the external system requests to call through the request message. Then, the communication service module 102 converts the request message into an object to obtain transmission object data. The transmission object data may include parameter data in the request message.
The communication service module 102 determines whether the transmission object data conforms to the transmission object data check rule according to the transmission object data check rule corresponding to the remote procedure call interface of the target basic service module in the transmission object engineering module 101, that is, checks whether the transmission object data is abnormal.
Optionally, if it is determined that the transmission object data conforms to the transmission object data check rule, the communication service module 102 serializes the transmission object data according to a transmission object serialization rule corresponding to the remote procedure call interface of the target basic service module in the transmission object engineering module 101, serializes the transmission object data into a message capable of performing network transmission, and sends the message to the remote procedure call interface of the target basic service module as a remote procedure call request corresponding to the request message, so that the target basic service module processes the remote procedure call request.
Optionally, the communication service module 102 may also serialize the transmission object data into a message capable of performing network transmission, and send the message as a remote procedure call request corresponding to the request message to the representational state transfer interface of the target basic service module, so that the target basic service module processes the remote procedure call request. Therefore, the loose coupling of service logic and the control of interface version can be realized, but the performance is not as good as that of remote procedure call.
Optionally, the communication service module 102 is further configured to: and if the transmission object data is determined not to accord with the transmission object data check rule, sending abnormal prompt information to the external system.
The exception prompting information is used for prompting the data exception of the external system. If the communication service module 102 determines that the transmission object data does not conform to the transmission object data check rule, it directly sends an exception prompt message to the external system. Therefore, unnecessary network resource overhead caused by data exception can be avoided.
Optionally, when the target basic service module receives the remote procedure call request sent by the communication service module 102 through the remote procedure call interface, it determines whether the remote procedure call version of the remote procedure call request is consistent with the remote procedure call version of the basic service module according to the corresponding remote procedure call version check rule. And if the remote procedure call version of the remote procedure call request is consistent with the version of the target basic service module, deserializing the remote procedure call request according to the corresponding deserializing rule of the transmission object to obtain transmission object data corresponding to the remote procedure call request, and executing service logic corresponding to the transmission object data.
The basic service modules 103 are independent of each other and are used for executing different business logics. Optionally, when receiving the remote procedure call request sent by the communication service module 102, each basic service module 103 determines whether the remote procedure call version of the remote procedure call request is consistent with the remote procedure call version of the basic service module 103 according to the corresponding remote procedure call version check rule, which may include: when receiving a remote procedure call request sent by the communication service module 102, each basic service module 103 judges whether the remote procedure call version number of the remote procedure call request is consistent with the remote procedure call version number of the basic service module 103 according to the corresponding remote procedure call version check rule; if the remote procedure call version number of the remote procedure call request is consistent with the remote procedure call version number of the base service module 103, it is determined that the remote procedure call version of the remote procedure call request is consistent with the remote procedure call version of the base service module 103.
If it is determined that the remote procedure call version of the remote procedure call request is consistent with the remote procedure call version of the basic service module, each basic service module 103 deserializes the remote procedure call request according to the corresponding transfer object deserialization rule to obtain transfer object data corresponding to the remote procedure call request, and executes service logic corresponding to the transfer object data.
Optionally, each basic service module 103 is further configured to: if it is determined that the remote procedure call version of the remote procedure call request is not identical to the remote procedure call version of the basic service module 103, an exception warning message is sent to the communication service module 102.
Therefore, by checking the remote procedure call version of the remote procedure call request by each basic service module 103, unnecessary network resource overhead caused by inconsistent remote procedure call versions can be avoided.
Optionally, the communication service module 102 is further configured to, when starting up, load a transmission object rule corresponding to the remote procedure call interface of each basic service module 103 in the transmission object engineering module 101, and cache the remote procedure call service configuration rule in the transmission object engineering module; wherein the transmission object rule comprises: a transport object definition, a transport object serialization rule, a transport object deserialization rule, a transport object data check rule, a remote procedure call service configuration rule, and a remote procedure call version check rule. Therefore, the communication service module 102 can provide the remote procedure call interface of each basic service module 103 to the external system according to the loaded transmission object rule and the cached remote procedure call service configuration rule.
The embodiment of the invention provides a communication system based on remote process calling, which issues a transmission object rule corresponding to a remote process calling interface of each basic service module through a transmission object engineering module, and provides the transmission object rule corresponding to the remote process calling interface of each basic service module for the communication service module to be quoted; when receiving a request message of an external system, the communication service module determines a target basic service module corresponding to the request message and a transmission object rule corresponding to a remote process calling interface of the target basic service module in a transmission object engineering module according to a remote process calling service configuration rule, converts the request message into transmission object data, and judges whether the transmission object data conforms to the transmission object data checking rule according to a transmission object data checking rule corresponding to the remote process calling interface of the target basic service module; if the transmission object data is in accordance with the transmission object data check rule, serializing the transmission object data according to a transmission object serialization rule, generating a remote procedure call request corresponding to the request message, and sending the remote procedure call request to a target basic service module; when receiving a remote procedure call request sent by a communication service module, a target basic service module judges whether a remote procedure call version of the remote procedure call request is consistent with a remote procedure call version of the basic service module according to a corresponding remote procedure call version check rule; if the remote procedure call version of the remote procedure call request is determined to be consistent with the version of the target basic service module, the remote procedure call request is deserialized according to the corresponding deserialization rule of the transmission object to obtain transmission object data corresponding to the remote procedure call request, and business logic corresponding to the transmission object data is executed, the transmission object rule corresponding to the remote procedure call interface of each basic service module can be issued by the transmission object engineering module and provided for the communication service module to be quoted, when the basic service module has a new or changed function, the transmission object rule can be updated by the transmission object engineering module, the communication service module does not need to be changed, the development coupling problem of the communication service and the basic service is reduced, the communication service module can check the data of the transmission object data according to the transmission object data checking rule, the method and the device realize loose coupling of the data rules and the business logic, meanwhile, when the data are abnormal, the remote process calling request cannot be sent to the basic service module, unnecessary network resource overhead caused by the data abnormality is avoided, network overhead is saved, version check can be carried out on the remote process calling request sent by the communication service module through the basic service module, the condition that the communication service version is inconsistent with the basic service version due to unilateral deployment is avoided, and unnecessary network resource overhead caused by the inconsistent remote process calling version can be avoided.
Example two
Fig. 2 is a flowchart of a communication method based on remote procedure call according to a second embodiment of the present invention. The embodiment can be suitable for the condition that the micro-service component carries out communication based on a remote procedure calling mode. The method can be applied to the communication service module in the communication system based on the remote procedure call provided by the embodiment of the invention. As shown in fig. 2, the method of this embodiment specifically includes:
step 201, when receiving a request message from an external system, a communication service module determines a target basic service module corresponding to the request message and a transmission object rule corresponding to a remote procedure call interface of the target basic service module in a transmission object engineering module according to a remote procedure call service configuration rule in the transmission object engineering module, and converts the request message into transmission object data.
Optionally, the communication service module may receive a request message sent by an external system through the REST interface. The request message is a message for requesting to call the basic service module to execute the business logic. The external system can call a certain basic service module to execute the business logic by sending the request message to the communication service module.
Optionally, the communication service module may determine a service function corresponding to the request message according to parameter data in the request message, and then determine a basic service module for implementing the service function corresponding to the request message according to service function information of each basic service module in the remote procedure call service configuration rule, that is, determine a target basic service module corresponding to the request message, and determine a transmission object rule corresponding to a remote procedure call interface of the target basic service module in the transmission object engineering module. The target basic service module is the basic service module which is called by the external system through the request message request. Then the communication service module converts the request message into an object to obtain transmission object data. The transmission object data may include parameter data in the request message.
Step 202, the communication service module judges whether the transmission object data conforms to the transmission object data check rule according to the transmission object data check rule corresponding to the remote procedure call interface of the target basic service module in the transmission object engineering module.
In this embodiment, the communication service module determines whether the transmission object data conforms to the transmission object data check rule according to the transmission object data check rule corresponding to the remote procedure call interface of the target basic service module in the transmission object engineering module, that is, checks whether the transmission object data is abnormal.
Optionally, after the determining whether the transmission object data conforms to the transmission object data check rule, the method further includes: and if the communication service module determines that the transmission object data does not accord with the transmission object data check rule, sending an abnormal prompt message to the external system.
Step 203, if the communication service module determines that the transmission object data conforms to a transmission object data check rule, serializing the transmission object data according to a transmission object serialization rule corresponding to a remote procedure call interface of the target basic service module in the transmission object engineering module, generating a remote procedure call request corresponding to the request message, and sending the remote procedure call request to the target basic service module so that the target basic service module processes the remote procedure call request.
Optionally, if the communication service module determines that the transmission object data conforms to the transmission object data check rule, serializing the transmission object data according to a transmission object serialization rule corresponding to the remote procedure call interface of the target basic service module in the transmission object engineering module, serializing the transmission object data into a message capable of performing network transmission, and sending the message to the remote procedure call interface of the target basic service module as a remote procedure call request corresponding to the request message, so that the target basic service module processes the remote procedure call request.
Optionally, the communication service module may also serialize the transmission object data into a message capable of performing network transmission, and send the message as a remote procedure call request corresponding to the request message to the representational state transfer interface of the target basic service module, so that the target basic service module processes the remote procedure call request. Therefore, the loose coupling of service logic and the control of interface version can be realized, but the performance is not as good as that of remote procedure call.
Optionally, the processing, by the target basic service module, of the remote procedure call request includes: when the target basic service module receives a remote procedure call request sent by the communication service module, judging whether a remote procedure call version of the remote procedure call request is consistent with a remote procedure call version of the basic service module according to a corresponding remote procedure call version check rule; and if the target basic service module determines that the remote procedure call version of the remote procedure call request is consistent with the remote procedure call version of the basic service module, deserializing the remote procedure call request according to the corresponding deserializing rule of the transmission object to obtain transmission object data corresponding to the remote procedure call request, and executing service logic corresponding to the transmission object data.
Optionally, after the determining whether the remote procedure call version of the remote procedure call request is consistent with the remote procedure call version of the basic service module, the method further includes: and if the target basic service module determines that the remote procedure call version of the remote procedure call request is inconsistent with the remote procedure call version of the basic service module, sending abnormal warning information to the communication service module.
The embodiment of the invention provides a communication method based on remote process calling, which comprises the steps of determining a target basic service module corresponding to a request message and a transmission object rule corresponding to a remote process calling interface of the target basic service module in a transmission object engineering module according to a remote process calling service configuration rule when the communication service module receives the request message of an external system, converting the request message into transmission object data, and judging whether the transmission object data accords with the transmission object data checking rule according to the transmission object data checking rule corresponding to the remote process calling interface of the target basic service module; if the transmission object data check rule is met, serializing the transmission object data according to the transmission object serialization rule, generating a remote process call request corresponding to the request message, and sending the remote process call request to a target basic service module so that the target basic service module processes the remote process call request, providing the transmission object rule corresponding to the remote process call interface of each basic service module to the communication service module through a transmission object engineering module for reference, when the basic service module has a new or changed function, updating the transmission object rule through the transmission object engineering module, the communication service module does not need to be changed, the development coupling problem of the communication service and the basic service is reduced, the communication service module can check the data of the transmission object data according to the transmission object data check rule, the loose coupling of the data rules and the business logic is realized, and meanwhile, when the data is abnormal, the remote procedure call request is not sent to the basic service module, so that unnecessary network resource expenditure caused by the data abnormality is avoided, and the network expenditure is saved.
EXAMPLE III
Fig. 3 is a flowchart of a communication method based on remote procedure call according to a third embodiment of the present invention. The embodiment of the present invention may be combined with various alternatives in one or more of the above embodiments, and in the embodiment of the present invention, the method further includes: when the communication service module is started, loading a transmission object rule corresponding to a remote process calling interface of each basic service module in a transmission object engineering module, and caching a remote process calling service configuration rule in the transmission object engineering module; wherein the transport object rule comprises: a transport object definition, a transport object serialization rule, a transport object deserialization rule, a transport object data check rule, a remote procedure call service configuration rule, and a remote procedure call version check rule.
As shown in fig. 3, the method of the embodiment of the present invention specifically includes:
step 301, when the communication service module is started, loading a transmission object rule corresponding to a remote procedure call interface of each basic service module in a transmission object engineering module, and caching a remote procedure call service configuration rule in the transmission object engineering module.
Wherein the transport object rule comprises: a transport object definition, a transport object serialization rule, a transport object deserialization rule, a transport object data check rule, a remote procedure call service configuration rule, and a remote procedure call version check rule. Therefore, the communication service module can provide remote procedure call interfaces of all basic service modules for an external system according to the loaded transmission object rule and the cached remote procedure call service configuration rule.
Step 302, when receiving a request message from an external system, a communication service module determines a target basic service module corresponding to the request message and a transmission object rule corresponding to a remote procedure call interface of the target basic service module in a transmission object engineering module according to a remote procedure call service configuration rule in the transmission object engineering module, and converts the request message into transmission object data.
Step 303, the communication service module judges whether the transmission object data conforms to a transmission object data check rule according to a transmission object data check rule corresponding to the remote procedure call interface of the target basic service module in the transmission object engineering module.
Step 304, if the communication service module determines that the transmission object data conforms to a transmission object data check rule, serializing the transmission object data according to a transmission object serialization rule corresponding to a remote procedure call interface of the target basic service module in the transmission object engineering module, generating a remote procedure call request corresponding to the request message, and sending the remote procedure call request to the target basic service module so that the target basic service module processes the remote procedure call request.
The embodiment of the invention provides a communication method based on remote process calling, which loads a transmission object rule corresponding to a remote process calling interface of each basic service module in a transmission object engineering module when a communication service module is started, and caches the remote process calling service configuration rule in the transmission object engineering module so that the communication service module can provide the remote process calling interface of each basic service module for an external system according to the loaded transmission object rule and the cached remote process calling service configuration rule.
Example four
Fig. 4 is a schematic structural diagram of a communication device based on remote procedure call according to a fourth embodiment of the present invention. As shown in fig. 4, the apparatus includes: a message conversion unit 401, a data inspection unit 402, and a request transmission unit 403.
The message conversion unit 401 is configured to, when receiving a request message from an external system, determine, according to a remote procedure call service configuration rule in a transmission object engineering module, a target basic service module corresponding to the request message and a transmission object rule in the transmission object engineering module corresponding to a remote procedure call interface of the target basic service module, and convert the request message into transmission object data; a data checking unit 402, configured to determine whether the transmission object data conforms to a transmission object data checking rule according to a transmission object data checking rule corresponding to a remote procedure call interface of the target basic service module in the transmission object engineering module; a request sending unit 403, configured to serialize the transmission object data according to a transmission object serialization rule corresponding to a remote procedure call interface of the target basic service module in the transmission object engineering module if it is determined that the transmission object data conforms to a transmission object data check rule, generate a remote procedure call request corresponding to the request packet, and send the remote procedure call request to the target basic service module, so that the target basic service module processes the remote procedure call request.
The embodiment of the invention provides a communication device based on remote process calling, which is characterized in that when a communication service module receives a request message of an external system, a target basic service module corresponding to the request message and a transmission object rule corresponding to a remote process calling interface of the target basic service module in a transmission object engineering module are determined according to a remote process calling service configuration rule, the request message is converted into transmission object data, and then whether the transmission object data accords with the transmission object data checking rule or not is judged according to the transmission object data checking rule corresponding to the remote process calling interface of the target basic service module; if the transmission object data check rule is met, serializing the transmission object data according to the transmission object serialization rule, generating a remote process call request corresponding to the request message, and sending the remote process call request to a target basic service module so that the target basic service module processes the remote process call request, providing the transmission object rule corresponding to the remote process call interface of each basic service module to the communication service module through a transmission object engineering module for reference, when the basic service module has a new or changed function, updating the transmission object rule through the transmission object engineering module, the communication service module does not need to be changed, the development coupling problem of the communication service and the basic service is reduced, the communication service module can check the data of the transmission object data according to the transmission object data check rule, the loose coupling of the data rules and the business logic is realized, and meanwhile, when the data is abnormal, the remote procedure call request is not sent to the basic service module, so that unnecessary network resource expenditure caused by the data abnormality is avoided, and the network expenditure is saved.
In an optional implementation manner of the embodiment of the present invention, optionally, the communication device based on remote procedure call further includes: and the abnormity prompting unit is used for sending abnormity prompting information to the external system if the transmission object data is determined not to accord with the transmission object data check rule.
In an optional implementation manner of the embodiment of the present invention, optionally, the communication device based on remote procedure call further includes: the rule loading unit is used for loading a transmission object rule corresponding to a remote procedure call interface of each basic service module in a transmission object engineering module when the system is started, and caching a remote procedure call service configuration rule in the transmission object engineering module; wherein the transport object rule comprises: a transport object definition, a transport object serialization rule, a transport object deserialization rule, a transport object data check rule, a remote procedure call service configuration rule, and a remote procedure call version check rule.
In an optional implementation manner of the embodiment of the present invention, optionally, the processing, by the target basic service module, the remote procedure call request includes: when the target basic service module receives a remote procedure call request sent by the communication service module, judging whether a remote procedure call version of the remote procedure call request is consistent with a remote procedure call version of the basic service module according to a corresponding remote procedure call version check rule; and if the target basic service module determines that the remote procedure call version of the remote procedure call request is consistent with the remote procedure call version of the basic service module, deserializing the remote procedure call request according to the corresponding deserializing rule of the transmission object to obtain transmission object data corresponding to the remote procedure call request, and executing service logic corresponding to the transmission object data.
In an optional implementation manner of the embodiment of the present invention, optionally, after the determining whether the remote procedure call version of the remote procedure call request is consistent with the remote procedure call version of the basic service module, the method further includes: and if the target basic service module determines that the remote procedure call version of the remote procedure call request is inconsistent with the remote procedure call version of the basic service module, sending abnormal warning information to the communication service module.
With regard to the apparatus in the above-described embodiment, the specific manner in which each module performs the operation has been described in detail in the embodiment related to the method, and will not be elaborated here.
The communication device based on remote procedure call can execute the communication method based on remote procedure call provided by any embodiment of the invention, and has the corresponding functional modules and beneficial effects of executing the communication method based on remote procedure call.
EXAMPLE five
Fig. 5 is a schematic structural diagram of a computer device according to a fifth embodiment of the present invention. FIG. 5 illustrates a block diagram of an exemplary computer device 12 suitable for use in implementing embodiments of the present invention. The computer device 12 shown in FIG. 5 is only an example and should not bring any limitations to the functionality or scope of use of embodiments of the present invention.
As shown in FIG. 5, computer device 12 is in the form of a general purpose computing device. The components of computer device 12 may include, but are not limited to: one or more processors 16, a memory 28, and a bus 18 that connects the various system components (including the memory 28 and the processors 16).
Bus 18 represents one or more of any of several types of bus structures, including a memory bus or memory controller, a peripheral bus, an accelerated graphics port, a processor, or a local bus using any of a variety of bus architectures. By way of example, such architectures include, but are not limited to, Industry Standard Architecture (ISA) bus, micro-channel architecture (MAC) bus, enhanced ISA bus, Video Electronics Standards Association (VESA) local bus, and Peripheral Component Interconnect (PCI) bus.
Computer device 12 typically includes a variety of computer system readable media. Such media may be any available media that is accessible by computer device 12 and includes both volatile and nonvolatile media, removable and non-removable media.
The memory 28 may include computer system readable media in the form of volatile memory, such as Random Access Memory (RAM)30 and/or cache memory 32. Computer device 12 may further include other removable/non-removable, volatile/nonvolatile computer system storage media. By way of example only, storage system 34 may be used to read from and write to non-removable, nonvolatile magnetic media (not shown in FIG. 5 and commonly referred to as a "hard drive"). Although not shown in FIG. 5, a magnetic disk drive for reading from and writing to a removable, nonvolatile magnetic disk (e.g., a "floppy disk") and an optical disk drive for reading from or writing to a removable, nonvolatile optical disk (e.g., a CD-ROM, DVD-ROM, or other optical media) may be provided. In these cases, each drive may be connected to bus 18 by one or more data media interfaces. Memory 28 may include at least one program product having a set (e.g., at least one) of program modules that are configured to carry out the functions of embodiments of the invention.
A program/utility 40 having a set (at least one) of program modules 42 may be stored, for example, in memory 28, such program modules 42 including, but not limited to, an operating system, one or more application programs, other program modules, and program data, each of which examples or some combination thereof may comprise an implementation of a network environment. Program modules 42 generally carry out the functions and/or methodologies of the described embodiments of the invention.
Computer device 12 may also communicate with one or more external devices 14 (e.g., keyboard, pointing device, display 24, etc.), with one or more devices that enable a user to interact with computer device 12, and/or with any devices (e.g., network card, modem, etc.) that enable computer device 12 to communicate with one or more other computing devices. Such communication may be through an input/output (I/O) interface 22. Also, computer device 12 may communicate with one or more networks (e.g., a Local Area Network (LAN), a Wide Area Network (WAN), and/or a public network such as the Internet) via network adapter 20. As shown, network adapter 20 communicates with the other modules of computer device 12 via bus 18. It should be appreciated that although not shown in FIG. 5, other hardware and/or software modules may be used in conjunction with computer device 12, including but not limited to: microcode, device drivers, redundant processing units, external disk drive arrays, RAID systems, tape drives, and data backup storage systems, among others.
The processor 16 executes various functional applications and data processing by running programs stored in the memory 28, so as to implement the communication method based on remote procedure call provided by the embodiment of the present invention: when receiving a request message of an external system, a communication service module determines a target basic service module corresponding to the request message and a transmission object rule corresponding to a remote process calling interface of the target basic service module in a transmission object engineering module according to a remote process calling service configuration rule in the transmission object engineering module, and converts the request message into transmission object data; the communication service module judges whether the transmission object data accords with a transmission object data check rule or not according to a transmission object data check rule corresponding to a remote process call interface of the target basic service module in the transmission object engineering module; if the communication service module determines that the transmission object data accords with a transmission object data check rule, serializing the transmission object data according to a transmission object serialization rule corresponding to a remote process call interface of the target basic service module in the transmission object engineering module, generating a remote process call request corresponding to the request message, and sending the remote process call request to the target basic service module so that the target basic service module processes the remote process call request.
EXAMPLE six
A sixth embodiment of the present invention provides a computer-readable storage medium, on which a computer program is stored, where when the computer program is executed by a processor, the computer program implements a communication method based on remote procedure call, where the method includes: when receiving a request message of an external system, a communication service module determines a target basic service module corresponding to the request message and a transmission object rule corresponding to a remote process calling interface of the target basic service module in a transmission object engineering module according to a remote process calling service configuration rule in the transmission object engineering module, and converts the request message into transmission object data; the communication service module judges whether the transmission object data accords with a transmission object data check rule or not according to a transmission object data check rule corresponding to a remote process call interface of the target basic service module in the transmission object engineering module; if the communication service module determines that the transmission object data accords with a transmission object data check rule, serializing the transmission object data according to a transmission object serialization rule corresponding to a remote process call interface of the target basic service module in the transmission object engineering module, generating a remote process call request corresponding to the request message, and sending the remote process call request to the target basic service module so that the target basic service module processes the remote process call request.
Any combination of one or more computer-readable media may be employed. The computer readable medium may be a computer readable signal medium or a computer readable storage medium. A computer readable storage medium may be, for example, but not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any combination of the foregoing. More specific examples (a non-exhaustive list) of the computer readable storage medium would include the following: 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 document, 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.
A computer readable signal medium may include a propagated data signal with computer readable program code embodied therein, for example, in baseband or as part of a carrier wave. Such a propagated data signal may take many forms, including, but not limited to, electro-magnetic, optical, or any suitable combination thereof. 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 wireless, wireline, optical fiber cable, RF, etc., or any suitable combination of the foregoing.
Computer program code for carrying out operations for aspects of the present invention may be written in any combination of one or more programming languages, including an object oriented programming language such as Java, Smalltalk, C + + or the like 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 computer device. In the case of a remote computer, the remote computer may be connected to the user's computer through any type of network, including a Local Area Network (LAN) or a Wide Area Network (WAN), or the connection may be made to an external computer (for example, through the Internet using an Internet service provider).
It is to be noted that the foregoing is only illustrative of the preferred embodiments of the present invention and the technical principles employed. It will be understood by those skilled in the art that the present invention is not limited to the particular embodiments described herein, but is capable of various obvious changes, rearrangements and substitutions as will now become apparent to those skilled in the art without departing from the scope of the invention. Therefore, although the present invention has been described in greater detail by the above embodiments, the present invention is not limited to the above embodiments, and may include other equivalent embodiments without departing from the spirit of the present invention, and the scope of the present invention is determined by the scope of the appended claims.

Claims (13)

1. A communication system based on remote procedure calls, comprising:
the system comprises a transmission object engineering module, a communication service module and at least one basic service module;
the transmission object engineering module is configured to issue a transmission object rule corresponding to a remote procedure call interface of each basic service module, where the transmission object rule includes: the method comprises the following steps of defining a transmission object, serializing a transmission object, deserializing a transmission object, checking a transmission object data rule, calling a service configuration rule by a remote process and calling a version checking rule by a remote process;
the communication service module is used for determining a target basic service module corresponding to a request message and a transmission object rule corresponding to a remote process calling interface of the target basic service module in the transmission object engineering module according to a remote process calling service configuration rule in the transmission object engineering module when receiving the request message of an external system, and converting the request message into transmission object data; judging whether the transmission object data accords with a transmission object data check rule or not according to a transmission object data check rule corresponding to a remote procedure call interface of the target basic service module in the transmission object engineering module; if the transmission object data is determined to accord with the transmission object data check rule, serializing the transmission object data according to a transmission object serialization rule corresponding to a remote procedure call interface of the target basic service module in the transmission object engineering module, generating a remote procedure call request corresponding to the request message, and sending the remote procedure call request to the target basic service module;
each basic service module is used for judging whether the remote procedure calling version of the remote procedure calling request is consistent with the remote procedure calling version of the basic service module according to the corresponding remote procedure calling version checking rule when receiving the remote procedure calling request sent by the communication service module; if the remote procedure call version of the remote procedure call request is consistent with the remote procedure call version of the basic service module, deserializing the remote procedure call request according to the corresponding deserializing rule of the transmission object to obtain transmission object data corresponding to the remote procedure call request, and executing service logic corresponding to the transmission object data;
the communication service module is further used for:
when the system is started, loading a transmission object rule corresponding to a remote procedure call interface of each basic service module in the transmission object engineering module, and caching a remote procedure call service configuration rule in the transmission object engineering module; and providing a remote procedure call interface of each basic service module for the external system according to the loaded transmission object rule and the cached remote procedure call service configuration rule.
2. The system of claim 1, wherein the transport object engineering module issues transport object rules corresponding to remote procedure call interfaces of each of the base service modules via a project management tool.
3. The system of claim 1, wherein the transport object engineering module is further configured to:
and updating the issued transmission object rule corresponding to the remote procedure call interface of each basic service module according to the transmission object rule updating information corresponding to each basic service module.
4. The system of claim 1, wherein the communication service module is further configured to:
and if the transmission object data is determined not to accord with the transmission object data check rule, sending abnormal prompt information to the external system.
5. The system of claim 1, wherein each of the basic service modules is further configured to:
and if the remote procedure call version of the remote procedure call request is determined to be inconsistent with the remote procedure call version of the basic service module, sending abnormal warning information to the communication service module.
6. The system of claim 1, wherein the communication service module receives a request message from an external system through the representational state transfer interface.
7. A communication method based on remote procedure call is applied to a communication service module, and is characterized in that the method comprises the following steps:
when receiving a request message of an external system, a communication service module determines a target basic service module corresponding to the request message and a transmission object rule corresponding to a remote process calling interface of the target basic service module in a transmission object engineering module according to a remote process calling service configuration rule in the transmission object engineering module, and converts the request message into transmission object data;
the communication service module judges whether the transmission object data accords with a transmission object data check rule or not according to a transmission object data check rule corresponding to a remote process call interface of the target basic service module in the transmission object engineering module;
if the communication service module determines that the transmission object data accords with a transmission object data check rule, serializing the transmission object data according to a transmission object serialization rule corresponding to a remote procedure call interface of the target basic service module in the transmission object engineering module, generating a remote procedure call request corresponding to the request message, and sending the remote procedure call request to the target basic service module so that the target basic service module processes the remote procedure call request
When the communication service module is started, loading a transmission object rule corresponding to a remote procedure call interface of each target basic service module in the transmission object engineering module, and caching a remote procedure call service configuration rule in the transmission object engineering module; providing a remote procedure call interface of each basic service module for the external system according to the loaded transmission object rule and the cached remote procedure call service configuration rule;
wherein the transport object rule comprises: a transport object definition, a transport object serialization rule, a transport object deserialization rule, a transport object data check rule, a remote procedure call service configuration rule, and a remote procedure call version check rule.
8. The method according to claim 7, wherein after said determining whether said transmission object data complies with transmission object data checking rules, further comprising:
and if the communication service module determines that the transmission object data does not accord with the transmission object data check rule, sending an abnormal prompt message to the external system.
9. The method of claim 7, wherein the target base service module processes the remote procedure call request, comprising:
when the target basic service module receives a remote procedure call request sent by the communication service module, judging whether a remote procedure call version of the remote procedure call request is consistent with a remote procedure call version of the basic service module according to a corresponding remote procedure call version check rule;
and if the target basic service module determines that the remote procedure call version of the remote procedure call request is consistent with the remote procedure call version of the basic service module, deserializing the remote procedure call request according to the corresponding deserializing rule of the transmission object to obtain transmission object data corresponding to the remote procedure call request, and executing service logic corresponding to the transmission object data.
10. The method of claim 7, after said determining whether the remote procedure call version of the remote procedure call request is consistent with the remote procedure call version of the base service module, further comprising:
and if the target basic service module determines that the remote procedure call version of the remote procedure call request is inconsistent with the remote procedure call version of the basic service module, sending abnormal warning information to the communication service module.
11. A communication device configured in a communication service module for remote procedure call, the device comprising:
the message conversion unit is used for determining a target basic service module corresponding to a request message and a transmission object rule corresponding to a remote process calling interface of the target basic service module in a transmission object engineering module according to a remote process calling service configuration rule in the transmission object engineering module when the request message of an external system is received, and converting the request message into transmission object data;
the data checking unit is used for judging whether the transmission object data accords with a transmission object data checking rule or not according to a transmission object data checking rule corresponding to a remote process calling interface of the target basic service module in the transmission object engineering module;
a request sending unit, configured to serialize the transmission object data according to a transmission object serialization rule corresponding to a remote procedure call interface of the target basic service module in the transmission object engineering module if it is determined that the transmission object data conforms to a transmission object data check rule, generate a remote procedure call request corresponding to the request packet, and send the remote procedure call request to the target basic service module, so that the target basic service module processes the remote procedure call request;
the rule loading unit is used for loading the transmission object rule corresponding to the remote procedure call interface of each basic service module in the transmission object engineering module when the transmission object engineering module is started, and caching the remote procedure call service configuration rule in the transmission object engineering module; providing a remote procedure call interface of each basic service module for the external system according to the loaded transmission object rule and the cached remote procedure call service configuration rule;
wherein the transport object rule comprises: a transmission object definition, a transmission object serialization rule, a transmission object deserialization rule, a transmission object data check rule, a remote procedure call service configuration rule, and a remote procedure call version check rule.
12. A computer device comprising a memory, a processor and a computer program stored on the memory and executable on the processor, wherein the processor implements the remote procedure call based communication method according to any one of claims 7 to 10 when executing the computer program.
13. A computer-readable storage medium, on which a computer program is stored which, when being executed by a processor, carries out a remote procedure call based communication method according to any one of claims 7 to 10.
CN202010791437.7A 2020-08-07 2020-08-07 Communication system, method, device, equipment and medium based on remote procedure call Active CN111970349B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010791437.7A CN111970349B (en) 2020-08-07 2020-08-07 Communication system, method, device, equipment and medium based on remote procedure call

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010791437.7A CN111970349B (en) 2020-08-07 2020-08-07 Communication system, method, device, equipment and medium based on remote procedure call

Publications (2)

Publication Number Publication Date
CN111970349A CN111970349A (en) 2020-11-20
CN111970349B true CN111970349B (en) 2022-06-24

Family

ID=73364787

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010791437.7A Active CN111970349B (en) 2020-08-07 2020-08-07 Communication system, method, device, equipment and medium based on remote procedure call

Country Status (1)

Country Link
CN (1) CN111970349B (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113067885B (en) * 2021-03-31 2024-02-27 中国建设银行股份有限公司 Application system, request processing method, electronic device and storage medium

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101131744A (en) * 2006-08-22 2008-02-27 华为技术有限公司 Method and system for implementing automatic adaptation of data object model
CN102262560A (en) * 2010-05-27 2011-11-30 阿里巴巴集团控股有限公司 Calling method, device and system for remote service
CN103353867A (en) * 2005-12-29 2013-10-16 亚马逊科技公司 Distributed replica storage system with web services interface
CN105721473A (en) * 2016-02-24 2016-06-29 锐达互动科技股份有限公司 WEB side remote invoking optimizing method and system
CN108492195A (en) * 2018-03-08 2018-09-04 中国平安人寿保险股份有限公司 Extensive method, equipment and storage medium are joined by a kind of entering for regulation engine packet
US10291462B1 (en) * 2017-01-03 2019-05-14 Juniper Networks, Inc. Annotations for intelligent data replication and call routing in a hierarchical distributed system
CN109815025A (en) * 2018-12-17 2019-05-28 顺丰科技有限公司 Business model call method, device and storage medium
CN110008045A (en) * 2019-04-12 2019-07-12 深圳乐信软件技术有限公司 Polymerization, device, equipment and the storage medium of micro services

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7581231B2 (en) * 2001-07-10 2009-08-25 Microsoft Corporation Computing system and method for allowing plurality of applications written in different programming languages to communicate and request resources or services via a common language runtime layer
US7051341B2 (en) * 2001-12-14 2006-05-23 International Business Machines Corporation Method, system, and program for implementing a remote method call
US6973659B2 (en) * 2002-08-22 2005-12-06 International Business Machines Corporation Mapping between remote procedure call system primitives and event driven execution environment system primitives
CN108984316A (en) * 2018-06-15 2018-12-11 广州视源电子科技股份有限公司 It is a kind of for the method, apparatus of distributed data processing, electronic equipment and computer storage medium
CN111045833A (en) * 2018-10-15 2020-04-21 北京京东尚科信息技术有限公司 Interface calling method and device
CN110798380B (en) * 2019-10-23 2021-08-20 北京奇艺世纪科技有限公司 Data acquisition method, system, device, test equipment and test server

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103353867A (en) * 2005-12-29 2013-10-16 亚马逊科技公司 Distributed replica storage system with web services interface
CN101131744A (en) * 2006-08-22 2008-02-27 华为技术有限公司 Method and system for implementing automatic adaptation of data object model
CN102262560A (en) * 2010-05-27 2011-11-30 阿里巴巴集团控股有限公司 Calling method, device and system for remote service
CN105721473A (en) * 2016-02-24 2016-06-29 锐达互动科技股份有限公司 WEB side remote invoking optimizing method and system
US10291462B1 (en) * 2017-01-03 2019-05-14 Juniper Networks, Inc. Annotations for intelligent data replication and call routing in a hierarchical distributed system
CN108492195A (en) * 2018-03-08 2018-09-04 中国平安人寿保险股份有限公司 Extensive method, equipment and storage medium are joined by a kind of entering for regulation engine packet
CN109815025A (en) * 2018-12-17 2019-05-28 顺丰科技有限公司 Business model call method, device and storage medium
CN110008045A (en) * 2019-04-12 2019-07-12 深圳乐信软件技术有限公司 Polymerization, device, equipment and the storage medium of micro services

Also Published As

Publication number Publication date
CN111970349A (en) 2020-11-20

Similar Documents

Publication Publication Date Title
CN110297689B (en) Intelligent contract execution method, device, equipment and medium
CN109032706B (en) Intelligent contract execution method, device, equipment and storage medium
CN111290806B (en) Calling method and device of application program interface, computer equipment and storage medium
CN111221572B (en) Method, device, medium and equipment for automatically adapting to running environment
CN110990081A (en) Microservice registration and discovery method and device, storage medium and electronic equipment
CN113641413A (en) Target model loading and updating method and device, readable medium and electronic equipment
CN113986402A (en) Function calling method and device, electronic equipment and storage medium
CN110221840B (en) Function implementation method and device of application program, equipment and storage medium
CN112363938A (en) Data processing method and device, electronic equipment and storage medium
CN111970349B (en) Communication system, method, device, equipment and medium based on remote procedure call
CN116737174B (en) Automatic subsystem generating tool and method based on open source hong Meng system
KR20210040322A (en) Scheduling method and apparatus, device and storage medium
US9172395B2 (en) Generating an ICONV module in real time
CN112035270A (en) Interface adaptation method, system, device, computer readable medium and electronic equipment
CN114816672A (en) Virtual machine creation method and device, electronic equipment and storage medium
CN115357257A (en) Installation file generation method, system, computing device and storage medium
CN115185599A (en) Project deployment method, system and storage medium based on Golang
CN112711602B (en) Method and device for running stored procedure, database system and storage medium
CN114035864A (en) Interface processing method, interface processing device, electronic device, and storage medium
CN114489667A (en) Script generation method and device, electronic equipment and storage medium
CN112925796A (en) Write consistency control method, device, equipment and storage medium
CN113961232A (en) Terminal, method and platform server for providing integrated development environment
CN113032004A (en) Method, apparatus and program product for managing development jobs in a development environment
CN112083939A (en) Batch upgrading method, device, system and medium
CN115658276B (en) Service development method, device, electronic equipment and readable storage medium

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
TR01 Transfer of patent right

Effective date of registration: 20220916

Address after: 25 Financial Street, Xicheng District, Beijing 100033

Patentee after: CHINA CONSTRUCTION BANK Corp.

Address before: 25 Financial Street, Xicheng District, Beijing 100033

Patentee before: CHINA CONSTRUCTION BANK Corp.

Patentee before: Jianxin Financial Science and Technology Co.,Ltd.

TR01 Transfer of patent right