Service calling method, medium and electronic equipment

By processing the call request of the third business party in the transit server, the problem of the third business party's business interruption during the migration period of the SaaS system was solved, and the normal operation of the business and the smooth completion of the migration process.

CN119376895APending Publication Date: 2025-01-28KE COM (BEIJING) TECHNOLOGY CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202411632837.8
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-11-14
Publication Date
2025-01-28

AI Technical Summary

Technical Problem

During the process of migrating the target tenant from the SaaS system to the localized OP system, the SaaS system needs to shut down and migrate data, resulting in business interruption of the third business party and affecting the normal operation of the third business party.

Method used

By listening to the call request of the third business party in the transit server, the corresponding operation is performed according to the business operation type of the request.

Benefits of technology

Avoid problems due to the SaaS server shutdown, ensure the normal operation of the business of the third business party, and the impact of minimizing the request for retrying the request on the third business party.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119376895A_ABST
    Figure CN119376895A_ABST
Patent Text Reader

Abstract

The invention provides a business calling method, a medium and electronic equipment, and the method comprises the steps: responding to a monitored calling request of a third business party in a process that a target tenant migrates from a software-as-a-service system to a localized deployment system, and obtaining a business operation type corresponding to the calling request; and in response to the fact that the business operation type is the first operation type and the calling interface is the main service interface of the software-as-a-service system, returning a request response message to the third business party, the request response message carrying a set return value. According to the method and the device, in the migration process of the target tenant, the problem of service interruption of the third service party caused by shutdown of the SaaS server can be avoided, and normal operation of the service of the third service party is ensured.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present disclosure relates to the fields of computer technology and Internet technology, and in particular to a service calling method, medium and electronic device. Background Art

[0002] With the development and application of cloud computing technology, more and more enterprises choose to use multi-tenant Software as a Service (SaaS) systems to manage their businesses. However, with the development of business, the personalized needs of enterprises are also increasing, while the support of SaaS systems for personalized needs of enterprises is low. In order to meet the personalized needs of enterprise businesses, some enterprises consider deploying SaaS services locally (On-Premise, OP for short).

[0003] In the related art, when performing tenant localization OP, it is necessary to migrate tenant data from the SaaS service to the OP environment, and the SaaS service will be shut down during the migration process. This migration method not only affects the normal use of the SaaS service, but also may cause business interruption of third-party businesses, affecting the normal operation of third-party businesses. Summary of the invention

[0004] In order to solve the above technical problems, a service calling method, medium and electronic device are proposed.

[0005] According to a first aspect of an embodiment of the present disclosure, a service calling method is provided, which is applied to a process in which a target tenant migrates from a software-as-a-service system to a localized deployment system, and includes:

[0006] In response to monitoring a call request from a third business party, a business operation type corresponding to the call request is obtained.

[0007] In response to the business operation type being the first operation type and the calling interface being the main service interface of the software as a service system, a request response message is returned to the third business party, the request response message carrying a set return value, and the first operation type is a query type request.

[0008] In some optional embodiments of the present disclosure, it also includes:

[0009] In response to the business operation type being a second operation type, recording a call parameter corresponding to the call request in an operation record table, the second operation type being an update type request.

[0010] In some optional implementations of the present disclosure, after recording the call parameters corresponding to the call request in the operation record table, the method further includes:

[0011] In response to the service of the localized deployment system being successfully enabled, creating a target invocation task;

[0012] The target calling task is executed, and the target calling task is used to retry the corresponding calling request based on the calling parameters recorded in the operation record table.

[0013] In some further optional implementations of the present disclosure, the executing the target calling task includes:

[0014] Reading the call parameters corresponding to each call request from the operation record table in sequence according to a set period;

[0015] Retry the corresponding call request based on the call parameters corresponding to each call request.

[0016] In some further optional implementations of the present disclosure, after obtaining the business operation type corresponding to the call request, the method further includes:

[0017] In response to the business operation type being the first operation type and the calling interface being a transit service interface, based on the calling parameters corresponding to the calling request, the business calling operation corresponding to the calling request is executed.

[0018] In some optional implementations of the present disclosure, the operation of migrating the target tenant from the software as a service system to the localized deployment system includes:

[0019] Extracting the first business data of the target tenant from the database of the software-as-a-service system, and migrating the first business data to the database of the localized deployment system; and

[0020] Extracting the second business data of the target tenant from the cache of the software-as-a-service system, migrating the second business data to the cache of the localized deployment system, and performing data preheating processing on the second business data in the cache of the localized deployment system; and

[0021] The unconsumed messages corresponding to the target tenant are exported from the message queue of the software as a service system, and the unconsumed messages are imported into the message queue of the localized deployment system.

[0022] According to a second aspect of an embodiment of the present disclosure, a service invocation device is provided, which is applied to a process in which a target tenant migrates from a software-as-a-service system to a localized deployment system, and includes:

[0023] An acquisition module, configured to respond to a call request from a third business party and acquire a business operation type corresponding to the call request;

[0024] A return module is used to return a request response message to the third business party in response to the business operation type being the first operation type and the calling interface being the main service interface of the software as a service system, wherein the request response message carries a set return value, and the first operation type is a query type request.

[0025] In some optional embodiments of the present disclosure, the device further includes:

[0026] The recording module is used to record the call parameters corresponding to the call request in the operation record table in response to the business operation type being a second operation type, and the second operation type is an update type request.

[0027] In some optional embodiments of the present disclosure, the device further includes:

[0028] A creation module, configured to create a target invocation task in response to successful activation of a service of the localized deployment system;

[0029] An execution module is used to execute the target calling task, and the target calling task is used to retry the corresponding calling request based on the calling parameters recorded in the operation record table.

[0030] In some further optional implementations of the present disclosure, the execution module includes:

[0031] A reading submodule, used for sequentially reading the call parameters corresponding to each call request from the operation record table according to a set period;

[0032] The execution submodule is used to retry the corresponding call request based on the call parameters corresponding to each call request.

[0033] In some further optional embodiments of the present disclosure, the device further includes:

[0034] The calling module is used to execute the business calling operation corresponding to the calling request based on the calling parameters corresponding to the calling request in response to the business operation type being the first operation type and the calling interface being the transit service interface.

[0035] In some optional implementations of the present disclosure, the device further includes: a data migration module;

[0036] The data migration module includes:

[0037] A first migration submodule is used to extract the first business data of the target tenant from the database of the software as a service system, and migrate the first business data to the database of the localized deployment system; and

[0038] a second migration submodule, configured to extract the second business data of the target tenant from the cache of the software as a service system, migrate the second business data to the cache of the localized deployment system, and perform data preheating processing on the second business data in the cache of the localized deployment system; and

[0039] The third migration submodule is used to export the unconsumed messages corresponding to the target tenant in the message queue of the software as a service system, and import the unconsumed messages into the message queue of the localized deployment system.

[0040] According to a third aspect of an embodiment of the present disclosure, a computer-readable storage medium is provided, wherein the storage medium stores computer program instructions, and when the computer program instructions are executed, the above-mentioned service calling method is implemented.

[0041] According to a fourth aspect of an embodiment of the present disclosure, an electronic device is provided, the electronic device comprising:

[0042] a memory for storing a computer program product;

[0043] The processor is used to execute the computer program product stored in the memory, and when the computer program product is executed, the above-mentioned service calling method is implemented.

[0044] According to a fifth aspect of an embodiment of the present disclosure, a computer program product is provided, including computer program instructions, which implement the above-mentioned service calling method when executed by a processor.

[0045] Based on the above embodiments of the present disclosure, during the migration of the target tenant from the SaaS system to the localized OP system, if a call request from a third-party service provider is intercepted, a corresponding operation can be performed according to the business operation type corresponding to the call request. For example, if the business operation type is a query request and the main service interface of the SaaS system is to be accessed, a set return value can be returned first. Therefore, the technical solution of the present disclosure can avoid the business interruption of the third-party service provider caused by the downtime of the SaaS server during the migration of the target tenant, and ensure the normal operation of the business of the third-party service provider.

[0046] The technical solution of the present disclosure is further described in detail below through the accompanying drawings and embodiments. BRIEF DESCRIPTION OF THE DRAWINGS

[0047] By describing the embodiments of the present disclosure in more detail in conjunction with the accompanying drawings, the above and other purposes, features and advantages of the present disclosure will become more apparent. The accompanying drawings are used to provide a further understanding of the embodiments of the present disclosure and constitute a part of the specification. Together with the embodiments of the present disclosure, they are used to explain the present disclosure and do not constitute a limitation of the present disclosure. In the drawings, the same reference numerals generally represent the same components or steps.

[0048] Figure 1 A system architecture diagram of the SaaS system before the target tenant migration disclosed herein;

[0049] Figure 2 This is a system architecture diagram of the OP system after the target tenant of the present disclosure has been migrated;

[0050] Figure 3 A flowchart of a service calling method provided by an embodiment of the present disclosure;

[0051] Figure 4 A flowchart of a service calling method provided by another embodiment of the present disclosure;

[0052] Figure 5 A flowchart of a service calling method provided by another embodiment of the present disclosure;

[0053] Figure 6 A schematic diagram of the structure of an embodiment of a service calling device disclosed in the present invention;

[0054] Figure 7 A structural diagram of another embodiment of the service calling device disclosed in the present invention;

[0055] Figure 8 It is a structural diagram of an electronic device provided by an exemplary embodiment of the present application. DETAILED DESCRIPTION

[0056] The exemplary embodiments according to the present disclosure will be described in detail below with reference to the accompanying drawings. Obviously, the described embodiments are only a part of the embodiments of the present disclosure, rather than all the embodiments of the present disclosure, and it should be understood that the present disclosure is not limited to the exemplary embodiments described here.

[0057] It should be noted that the relative arrangement of components and steps, the numerical expressions and numerical values ​​set forth in these embodiments do not limit the scope of the present disclosure unless specifically stated otherwise.

[0058] Those skilled in the art can understand that the terms "first" and "second" in the embodiments of the present disclosure are only used to distinguish different steps, devices or modules, etc., and neither represent any specific technical meaning nor indicate the necessary logical order between them.

[0059] It should also be understood that in the embodiments of the present disclosure, “plurality” may refer to two or more than two, and “at least one” may refer to one, two, or more than two.

[0060] It should also be understood that any component, data or structure mentioned in the embodiments of the present disclosure can generally be understood as one or more, unless explicitly limited or otherwise indicated in the context.

[0061] In addition, the term "and / or" in this disclosure is only a description of the association relationship of associated objects, indicating that there may be three relationships, such as A and / or B, which can represent: A exists alone, A and B exist at the same time, and B exists alone. In addition, the character " / " in this disclosure generally indicates that the associated objects before and after are in an "or" relationship.

[0062] It should also be understood that the description of the various embodiments in the present disclosure focuses on the differences between the various embodiments, and the same or similar aspects thereof can be referenced to each other, and for the sake of brevity, they will not be described one by one.

[0063] At the same time, it should be understood that for the convenience of description, the sizes of the various parts shown in the drawings are not drawn according to the actual proportional relationship.

[0064] The following description of at least one exemplary embodiment is merely illustrative in nature and is in no way intended to limit the present disclosure, its application, or uses.

[0065] Technologies, methods, and equipment known to ordinary technicians in the relevant art may not be discussed in detail, but where appropriate, the technologies, methods, and equipment should be considered as part of the specification.

[0066] It should be noted that like reference numerals and letters refer to similar items in the following figures, and therefore, once an item is defined in one figure, it need not be further discussed in subsequent figures.

[0067] The embodiments of the present disclosure can be applied to electronic devices such as terminal devices, computer systems, servers, etc., which can operate with many other general or special computing system environments or configurations. Examples of well-known terminal devices, computing systems, environments and / or configurations suitable for use with electronic devices such as terminal devices, computer systems or servers include, but are not limited to: personal computer systems, server computer systems, thin clients, thick clients, handheld or laptop devices, microprocessor-based systems, set-top boxes, programmable consumer electronics, network personal computers, small computer systems, large computer systems, and distributed cloud computing technology environments including any of the above systems, etc.

[0068] Electronic devices such as terminal devices, computer systems, servers, etc. can be described in the general context of computer system executable instructions (such as program modules) executed by computer systems. Generally, program modules can include routines, programs, target programs, components, logic, data structures, etc., which perform specific tasks or implement specific abstract data types. Computer systems / servers can be implemented in a distributed cloud computing environment. In a distributed cloud computing environment, tasks can be performed by remote processing devices linked through a communication network. In a distributed cloud computing environment, program modules can be located on local or remote computing system storage media including storage devices.

[0069] SUMMARY OF THE DISCLOSURE

[0070] In the process of implementing the present disclosure, the inventors discovered that during the process of migrating the target tenant from the SaaS system to the localized OP system, since the SaaS system needs to be shut down to migrate data and the OP system has not yet enabled services, the business of the third business party is interrupted, affecting the normal operation of the third business party.

[0071] In the service calling method provided by the present disclosure, the transit server can process the calling request initiated by the third service party to ensure that the migration of the target tenant does not affect the service operation of the third service party.

[0072] Exemplary Systems

[0073] Figure 1 The SaaS system architecture to which the service calling method or service calling device of the embodiment of the present disclosure can be applied is shown. The system architecture is the SaaS system architecture before the target tenant is migrated. Figure 2 An OP system architecture to which the service calling method or service calling device according to the embodiment of the present disclosure can be applied is shown. The system architecture is an OP system architecture after the target tenant is migrated.

[0074] like Figure 1 As shown, the SaaS system architecture may include a SaaS server 101, a tenant x transit server 102, a server 103 of a third party of the tenant's business, and a network 104. The network 104 is used as a medium for providing a communication link between the SaaS server 101 and the tenant x transit server 103, and may also be used as a medium for providing a communication link between the tenant x transit server 102 and the server 103 of a third party of the tenant. The network 104 may include various connection types, such as wired or wireless communication links or optical fiber cables, etc. The network used between the SaaS server 101 and the tenant x transit server 103 may be the same as or different from the network used between the tenant x transit server 102 and the server 103 of the third party of the tenant.

[0075] The SaaS server 101 can provide services to multiple tenants, and is used to provide the main functions and main logic of the business to multiple tenants. The SaaS server 101 can be a server that provides various services, for example, a backend server that provides data writing, data query, data storage and other services for the business of each tenant.

[0076] The tenant x transit server 102 is responsible for interacting with the tenant's own third-party server 103 , and forwarding the call request sent by the third-party server to the SaaS server 101 when the call request needs to be implemented by the SaaS server 101 .

[0077] It should be noted that the service calling method provided in the embodiment of the present disclosure may be executed by the tenant x transit server 102 , and accordingly, the service calling device may be arranged in the tenant x transit server 102 .

[0078] It should be understood that Figure 1 The number of SaaS servers 101, tenant x transit servers 102, and servers 103 of the tenant's third business party and networks 104 is only illustrative. Any number of SaaS servers 101, tenant x transit servers 102, and servers 103 of the tenant's third business party and networks 104 may be provided as required.

[0079] like Figure 2 As shown, the OP system architecture may include an OP server 201, a tenant x transit server 202, a server 203 of a third party of the tenant's business, and a network 204. The network 204 is used to provide a medium for a communication link between the OP server 201 and the tenant x transit server 203, and may also be used to provide a medium for a communication link between the tenant x transit server 202 and the server 203 of a third party of the tenant. The network 204 may include various connection types, such as wired, wireless communication links, or optical fiber cables, etc. The network used between the OP server 201 and the tenant x transit server 203 may be the same as or different from the network used between the tenant x transit server 202 and the server 203 of the third party of the tenant.

[0080] OP server 201 can provide services for tenant x, and is used to provide the main functions and main logic of the business for multiple tenants. OP server 201 can be a server that provides various services, for example, a backend server that provides data writing, data query, data storage and other services for the tenant's business.

[0081] The tenant x transit server 102 is responsible for interacting with the tenant's own third-party server 203 , and forwarding the call request to the OP server 201 when the call request sent by the third-party server needs to be implemented by the OP server 201 .

[0082] It should be noted that the service calling method provided in the embodiment of the present disclosure may be executed by the tenant x transit server 202 , and accordingly, the service calling device may be arranged in the tenant x transit server 202 .

[0083] It should be understood that Figure 2 The number of OP servers 201, tenant x transit servers 202, and servers 203 and networks 204 of the third party of the tenant is only illustrative. According to the implementation requirements, there can be any number of OP servers 201, tenant x transit servers 202, and servers 203 and networks 204 of the third party of the tenant.

[0084] In tenant x from Figure 1 The SaaS system shown is migrated to Figure 2 In the OP system shown, the transit server of tenant x can continuously monitor the call request sent by the third-party business party and perform corresponding operations on the call request to ensure that the third-party business party can operate normally.

[0085] Exemplary Methods

[0086] Figure 3 A flowchart of a service calling method provided by an embodiment of the present disclosure; Figure 3 The method shown is applied in a transfer server, and includes steps 301 and 302. Each step is described below.

[0087] In step 301, in response to monitoring a call request from a third service party, a service operation type corresponding to the call request is obtained.

[0088] In the present disclosure, the third party is used to indicate various business application systems, such as contract system, transaction system, house source system, customer source order system, construction system, etc. The call request is used to indicate the request message sent by the third party for executing the business operation.

[0089] In the present disclosure, the business operation type corresponding to the call request is used for the business operation type to be performed. The business operation type can be an update type request, such as write, modify, delete, etc. The call request can also be a query type request, such as querying relevant information of a purchase order.

[0090] In step 302, in response to the business operation type being the first operation type and the calling interface being the main service interface of the software as a service system, a request response message is returned to the third business party, the request response message carrying a set return value.

[0091] In the present disclosure, the first operation type may be used to indicate a query type request. The main service interface of the Software as a Service (SaaS) system is an interface that needs to access the SaaS server.

[0092] In this embodiment, since the SaaS server is in a deactivated state and cannot be accessed during the data migration process, the transit server may not forward the call request to the SaaS server, but directly return a request response message to the third business party, and the request response message may carry a set return value, such as a null return value. In this implementation, the third business party may continue to perform other business operations after receiving the request response message returned by the transit server.

[0093] Through the above steps 301-302, during the migration of the target tenant from the SaaS system to the localized OP system, if a call request from a third business party is monitored, a corresponding operation can be performed according to the business operation type corresponding to the call request. For example, if the business operation type is the first operation type and the main service interface of the SaaS system is to be accessed, the set return value can be returned first. Therefore, the technical solution disclosed in the present disclosure can avoid the business interruption of the third business party caused by the downtime of the SaaS server during the migration of the target tenant, and ensure the normal operation of the business of the third business party.

[0094] Figure 4 A flowchart of a service calling method provided by yet another embodiment of the present disclosure. Figure 4 How to process a received call request is taken as an example for exemplary description, including step 401 to step 406. Each step is described below.

[0095] In step 401, in response to monitoring a call request from a third service party, a service operation type corresponding to the call request is obtained.

[0096] In some implementations, when the business operation type is the first operation type and the calling interface is the main service interface of the software as a service system, step 402 may be executed; when the business operation type is the first operation type and the calling interface is the transit service interface, step 403 may be executed; when the business operation type is the second operation type, step 404 may be executed.

[0097] In step 402, in response to the business operation type being the first operation type and the calling interface being the main service interface of the software as a service system, a request response message is returned to the third business party, the request response message carrying a set return value.

[0098] In this embodiment, the implementation of step 401-step 402 can be found in Figure 3 The description of step 301 - step 302 of the illustrated embodiment will not be described in detail here.

[0099] In step 403, in response to the business operation type being the first operation type and the calling interface being the transit service interface, the business calling operation corresponding to the calling request is executed based on the calling parameters corresponding to the calling request.

[0100] In the present disclosure, some business data may be stored in the cache of the relay server or in the memory of the relay server. Therefore, when the business operation type is the first operation type (query type operation) and the calling interface is the relay service interface, the business call operation corresponding to the call request can be executed directly based on the call parameters corresponding to the call request to obtain the operation result.

[0101] In step 404, in response to the business operation type being the second operation type, the call parameters corresponding to the call request are recorded in the operation record table.

[0102] In the present disclosure, the second operation type is used to indicate update requests, such as write, modify, delete, etc. The operation record table is used to record the call parameters of the call request sent by the third business party during the period when the SaaS server is deactivated and the OP server has not yet enabled the service. The call parameters may include path parameters, request body parameters, etc. Specifically, the path parameter can be used as a unique identifier of the resource to indicate the path information of the data to be operated by the call request, and the request body parameter can be used to pass complex or large amounts of data, such as table data or JSON objects, to ensure that the server can correctly process the call request.

[0103] In this embodiment, the operation record table may be created when initiating a tenant migration operation or deactivating a SaaS server, and when multiple call requests of the second operation type are received, the call parameters of each call request are sequentially written into the operation record table.

[0104] In step 405, in response to the successful activation of the service of the localized deployment system, a target invocation task is created.

[0105] In this embodiment, after the tenant data migration is completed and the service verification of the localized deployment system is completed, the service of the localized deployment system can be enabled, that is, the service in the OP server can be enabled.

[0106] In the present disclosure, the target calling task is a task that performs a compensatory calling on the calling request stored in the operation record table based on the calling parameters in the request record table. The target calling task can sequentially execute the corresponding calling requests based on the calling requests recorded in the operation record table.

[0107] In this embodiment, after enabling the service in the OP server, the OP server may send an indication message to the transit server, so that the transit server may create a target call service. In other embodiments, when migration or deactivation of the SaaS server occurs, another request call task may be created, and the request call task may periodically send a polling request message to the OP server to determine whether the OP server has successfully enabled the service, so that the target call service can be created in time after the OP server successfully enables the service.

[0108] In step 406, a target calling task is executed, where the target calling task is used to retry the corresponding calling request based on the calling parameters recorded in the operation record table.

[0109] In this embodiment, the operation record table may record call parameters corresponding to multiple call requests, and the target call task may retry the corresponding call requests in sequence according to the time when each call request is received. Specifically, each call request may be forwarded to the OP server according to each call parameter so that the OP server performs the corresponding business operation.

[0110] Through the above steps 401-406, during the migration of the target tenant from the SaaS system to the localized OP system, if a call request from a third business party is monitored, a corresponding operation can be performed according to the business operation type corresponding to the call request. For example, if the business operation type is the first operation type and the main service interface of the SaaS system is to be accessed, the set return value can be returned first. When the business operation type is the second operation type, the call parameters of each call request can be recorded in the operation record table, and after the service in the OP server is successfully enabled, the call request in the operation record table can be retried. Therefore, the technical solution disclosed in the present invention can avoid the business interruption problem of the third business party caused by the shutdown of the SaaS server during the migration of the target tenant, ensure the normal operation of the business of the third business party, and help minimize the impact on the third business party through the retry of the call request, and can also avoid the loss of business data during the deactivation period.

[0111] In some optional implementations, during the migration of the target tenant from the SaaS system to the localized OP system, different types of data may be migrated in different ways. Specifically, the first business data of the target tenant is extracted from the database of the software-as-a-service system, and the first business data is migrated to the database of the localized deployment system; and, the second business data of the target tenant is extracted from the cache of the software-as-a-service system, and the second business data is migrated to the cache of the localized deployment system, and data preheating processing is performed on the second business data in the cache of the localized deployment system; and, the unconsumed messages corresponding to the target tenant are exported from the message queue of the software-as-a-service system, and the unconsumed messages are imported into the message queue of the localized deployment system.

[0112] When extracting the first business data of the target tenant from the database of the SaaS system, such as MySQL OSS (object storage service), it is necessary to ensure that the first business data can be accurately and completely extracted and migrated; and for the data in the cache, such as the second business data in Redis Elasticsearch, after the migration, the data can be preheated after the OP system is started and before the business is switched, which helps to ensure the accuracy and completeness of the data after migration, and can prevent the OP system from a cache breakdown and avalanche after the traffic is cut in after migration to the OP system; by exporting the unconsumed messages in the message queue in the SaaS system to the message queue of the OP system, the integrity and accuracy of the data can be ensured, and data loss caused by the failure of the call request of the third business party to be executed (the message in the message queue is not consumed) can be avoided.

[0113] Figure 5 A flowchart of a service calling method provided by another embodiment of the present disclosure is shown. Figure 5 Take how to execute the target call task as an example to illustrate. Figure 4 Based on the embodiment shown, step 406 includes step 461 and step 462. Each step is described below.

[0114] In step 461, the call parameters corresponding to each call request are sequentially read from the operation record table according to a set period.

[0115] In the present disclosure, the set period is used to indicate the time interval for executing the call requests indicated by each call parameter in the operation record table. When the number of call requests recorded in the operation record table is large, if each call request is executed at the same time, the system load may be increased, resulting in problems such as slow system response, service crash or stop responding. Therefore, in the present implementation, each call request may be executed in sequence according to the set period to avoid affecting system performance.

[0116] In step 462, based on the call parameters corresponding to each call request, the corresponding call request is retried.

[0117] In the embodiment of the present disclosure, by obtaining call parameters from the operation record table according to a set period and retrying the corresponding call request, system performance problems caused by executing the call request at the same time can be avoided, and data inconsistency problems caused by multiple third-party business parties performing write operations on the same data at the same time can be avoided.

[0118] Exemplary Devices

[0119] Figure 6 FIG. 1 is a schematic diagram of a structure of an embodiment of a service calling device disclosed in the present invention. Figure 6 As shown, the device is applied to a transfer server and includes:

[0120] The acquisition module 61 is used to respond to the call request of the third business party monitored and obtain the business operation type corresponding to the call request;

[0121] The return module 62 is used to return a request response message to the third business party in response to the business operation type being the first operation type and the calling interface being the main service interface of the software as a service system, wherein the request response message carries a set return value.

[0122] Figure 7 A structural diagram of another embodiment of the service calling device disclosed in the present invention. Figure 7 As shown, in Figure 6 On the basis of the illustrated embodiment, in some further optional implementations of the present disclosure, the device further includes:

[0123] The recording module 63 is configured to record the call parameters corresponding to the call request in the operation record table in response to the business operation type being the second operation type.

[0124] In some optional embodiments of the present disclosure, the device further comprises:

[0125] A creation module 64, configured to create a target invocation task in response to successful activation of a service of the localized deployment system;

[0126] The execution module 65 is used to execute the target calling task, and the target calling task is used to retry the corresponding calling request based on the calling parameters recorded in the operation record table.

[0127] In some further optional embodiments of the present disclosure, the execution module 65 includes:

[0128] The reading submodule 651 is used to sequentially read the call parameters corresponding to each call request from the operation record table according to a set period;

[0129] The execution submodule 652 is used to retry the corresponding call request based on the call parameters corresponding to each call request.

[0130] In some further optional embodiments of the present disclosure, the device further comprises:

[0131] The calling module 66 is used to execute the business calling operation corresponding to the calling request based on the calling parameters corresponding to the calling request in response to the business operation type being the first operation type and the calling interface being the transit service interface.

[0132] In some optional embodiments of the present disclosure, the apparatus further includes: a data migration module 67;

[0133] The data migration module 67 includes:

[0134] A first migration submodule 671 is used to extract the first business data of the target tenant from the database of the software as a service system, and migrate the first business data to the database of the localized deployment system; and

[0135] The second migration submodule 672 is used to extract the second business data of the target tenant from the cache of the software as a service system, migrate the second business data to the cache of the localized deployment system, and perform data preheating processing on the second business data in the cache of the localized deployment system; and

[0136] The third migration submodule 673 is used to export the unconsumed messages corresponding to the target tenant in the message queue of the software as a service system, and import the unconsumed messages into the message queue of the localized deployment system.

[0137] The device of the embodiment of the present disclosure can be used to implement the methods of the above-mentioned embodiments of the present disclosure. The two correspond to each other in specific implementation, and the specific implementations of related parts are referenced to each other, which will not be repeated here.

[0138] Exemplary electronic devices, computer program products, computer-readable storage media, and systems

[0139] An embodiment of the present disclosure further provides an electronic device, comprising: a memory for storing a computer program; a processor for executing the computer program stored in the memory, and when the computer program is executed, the service calling method of any of the above embodiments of the present disclosure is implemented.

[0140] The embodiment of the present disclosure also provides a service calling system, which includes a customer relationship management platform and a target cloud terminal. The system is used to implement the service calling method of any of the above embodiments of the present disclosure.

[0141] Below, reference Figure 8 An electronic device according to an embodiment of the present disclosure is described, in which a device for implementing the method according to an embodiment of the present disclosure may be integrated. Figure 8 A structural diagram of an electronic device provided in an exemplary embodiment of the present disclosure, such as Figure 8As shown, the electronic device includes one or more processors 81, one or more computer-readable storage media memory 82, and a computer program stored in the memory and executable on the processor. When executing the program in the memory 82, the above service calling method can be implemented.

[0142] Specifically, in practical applications, the electronic device may further include components such as an input device 83 and an output device 84, and these components are interconnected via a bus system and / or other forms of connection mechanisms (not shown). Those skilled in the art will appreciate that Figure 8 The structure of the electronic device shown in the figure does not constitute a limitation on the electronic device, and may include more or fewer components than shown in the figure, or certain components, or different component arrangements.

[0143] The processor 81 can be a central processing unit (CPU) or other forms of processing units with service calling capabilities and / or instruction execution capabilities. It performs various functions and processes data by running or executing software programs and / or modules stored in the memory 82, and calling data stored in the memory 82, thereby monitoring the electronic device as a whole.

[0144] The memory 82 may store one or more computer program products, and the memory may include various forms of computer-readable storage media, such as volatile memory and / or non-volatile memory. The above-mentioned volatile memory may include, for example, random access memory (RAM) and / or cache memory (cache), etc. The above-mentioned non-volatile memory may include, for example, read-only memory (ROM), hard disk, flash memory, etc. One or more computer program products may be stored on a computer-readable storage medium, and the processor 81 may run the computer program product to implement the service calling method of each embodiment of the present disclosure and / or other desired functions.

[0145] The input device 83 can be used to receive input digital or character information. The input device 83 can include a keyboard, a mouse, a joystick, etc. related to user settings and function control.

[0146] The output device 84 can output various information to the outside, including the determined distance information, direction information, etc. The output device 84 can include, for example, a display, a speaker, a printer, a communication network and a remote output device connected thereto, and the like.

[0147] The electronic device may also include a power supply for supplying power to various components, which may be logically connected to the processor 81 through a power management system, so as to manage charging, discharging, power consumption and other functions through the power management system. The power supply may also include one or more DC or AC power supplies, recharging systems, power failure detection circuits, power converters or inverters, power status indicators and other arbitrary components.

[0148] Of course, to simplify, Figure 8 Only some of the components related to the present disclosure in the electronic device are shown, and components such as a bus, an input / output interface, etc. are omitted. In addition, according to specific application situations, the electronic device may further include any other appropriate components.

[0149] In addition to the above-mentioned methods and devices, an embodiment of the present disclosure may also be a computer program product, which includes computer program instructions, which, when executed by a processor, enable the processor to execute the steps in the business call method according to various embodiments of the present disclosure described in the above-mentioned "Exemplary Method" section of this specification.

[0150] The computer program product may be written in any combination of one or more programming languages ​​to write program code for performing the operations of the disclosed embodiments, including object-oriented programming languages ​​such as Java, C++, etc., and conventional procedural programming languages ​​such as "C" or similar programming languages. The program code may be executed entirely on the user computing device, partially on the user device, as a separate software package, partially on the user computing device and partially on a remote computing device, or entirely on a remote computing device or server.

[0151] In addition, an embodiment of the present disclosure may also be a computer-readable storage medium on which computer program instructions are stored. When the computer program instructions are executed by a processor, the processor executes the steps in the business calling method according to various embodiments of the present disclosure described in the above "Exemplary Method" section of this specification.

[0152] Computer readable storage media can adopt any combination of one or more readable media. The readable medium can be a readable signal medium or a readable storage medium. The readable storage medium can include, for example, but is not limited to, a system or device of electricity, magnetism, light, electromagnetic, infrared, or semiconductor, or any combination of the above. More specific examples (non-exhaustive list) of readable storage media include: an electrical connection with one or more wires, a portable disk, 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 disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the above.

[0153] The basic principles of the present disclosure are described above in conjunction with specific embodiments. However, it should be noted that the advantages, strengths, effects, etc. mentioned in the present disclosure are only examples and not limitations, and it cannot be considered that these advantages, strengths, effects, etc. are required by each embodiment of the present disclosure. In addition, the specific details disclosed above are only for the purpose of illustration and ease of understanding, and are not limitations. The above details do not limit the present disclosure to the necessity of adopting the above specific details to be implemented.

[0154] Each embodiment in this specification is described in a progressive manner, and each embodiment focuses on the differences from other embodiments. The same or similar parts between the embodiments can be referred to each other. For the system embodiment, since it basically corresponds to the method embodiment, the description is relatively simple, and the relevant parts can be referred to the partial description of the method embodiment.

[0155] A person of ordinary skill in the art can understand that all or part of the steps of implementing the above method embodiment can be completed by hardware related to program instructions, and the aforementioned program can be stored in a computer-readable storage medium. When the program is executed, it executes the steps of the above method embodiment; and the aforementioned storage medium includes: ROM, RAM, magnetic disk or optical disk, etc., various media that can store program codes.

[0156] The method and apparatus of the present disclosure may be implemented in many ways. For example, the method and apparatus of the present disclosure may be implemented by software, hardware, firmware, or any combination of software, hardware, and firmware. The above order of steps for the method is for illustration only, and the steps of the method of the present disclosure are not limited to the order specifically described above, unless otherwise specifically stated. In addition, in some embodiments, the present disclosure may also be implemented as a program recorded in a recording medium, which includes machine-readable instructions for implementing the method according to the present disclosure. Therefore, the present disclosure also covers a recording medium storing a program for executing the method according to the present disclosure.

[0157] The description of the present disclosure is given for the purpose of illustration and description, and is not intended to be exhaustive or to limit the present disclosure to the disclosed form. Many modifications and variations will be apparent to those of ordinary skill in the art. The embodiments are selected and described in order to better illustrate the principles and practical applications of the present disclosure, and to enable those of ordinary skill in the art to understand the present disclosure and thereby design various embodiments with various modifications suitable for specific uses.

Claims

1. A service calling method, characterized in that: Applied to the process of target tenants migrating from a software-as-a-service system to a local deployment system, including: In response to monitoring a call request from a third business party, obtaining a business operation type corresponding to the call request; In response to the business operation type being the first operation type and the calling interface being the main service interface of the software as a service system, a request response message is returned to the third business party, the request response message carrying a set return value, and the first operation type is a query type request.

2. The method according to claim 1, characterized in that After obtaining the business operation type corresponding to the call request, the method further includes: In response to the business operation type being a second operation type, recording a call parameter corresponding to the call request in an operation record table, the second operation type being an update type request.

3. The method according to claim 2, characterized in that After recording the call parameters corresponding to the call request in the operation record table, the method further includes: In response to the service of the localized deployment system being successfully enabled, creating a target invocation task; The target calling task is executed, and the target calling task is used to retry the corresponding calling request based on the calling parameters recorded in the operation record table.

4. The method according to claim 3, characterized in that: The executing the target calling task includes: Reading the call parameters corresponding to each call request from the operation record table in sequence according to a set period; Retry the corresponding call request based on the call parameters corresponding to each call request.

5. The method according to any one of claims 1 to 4, characterized in that: After obtaining the business operation type corresponding to the call request, the method further includes: In response to the business operation type being the first operation type and the calling interface being a transit service interface, based on the calling parameters corresponding to the calling request, the business calling operation corresponding to the calling request is executed.

6. The method according to any one of claims 1 to 5, characterized in that: The operation of migrating the target tenant from the software-as-a-service system to the localized deployment system includes: Extracting the first business data of the target tenant from the database of the software-as-a-service system, and migrating the first business data to the database of the localized deployment system; and Extracting the second business data of the target tenant from the cache of the software-as-a-service system, migrating the second business data to the cache of the localized deployment system, and performing data preheating processing on the second business data in the cache of the localized deployment system; and The unconsumed messages corresponding to the target tenant are exported from the message queue of the software as a service system, and the unconsumed messages are imported into the message queue of the localized deployment system.

7. A computer-readable storage medium, wherein the storage medium stores computer program instructions, and when the computer program instructions are executed, the method according to any one of claims 1 to 6 is implemented.

8. An electronic device, comprising: A memory for storing a computer program product; A processor is used to execute the computer program product stored in the memory, and when the computer program product is executed, it implements the method described in any one of claims 1 to 6.

9. A computer program product comprising computer program instructions, characterized in that When the computer program instructions are executed by a processor, the method described in any one of claims 1 to 6 is implemented.