CN111861140A - Service processing method, device, storage medium and electronic device - Google Patents
Service processing method, device, storage medium and electronic device Download PDFInfo
- Publication number
- CN111861140A CN111861140A CN202010599922.4A CN202010599922A CN111861140A CN 111861140 A CN111861140 A CN 111861140A CN 202010599922 A CN202010599922 A CN 202010599922A CN 111861140 A CN111861140 A CN 111861140A
- Authority
- CN
- China
- Prior art keywords
- target
- request message
- service request
- service
- target service
- 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.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/06—Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
- G06Q10/063—Operations research, analysis or management
- G06Q10/0631—Resource planning, allocation, distributing or scheduling for enterprises or organisations
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/25—Integrating or interfacing systems involving database management systems
- G06F16/252—Integrating or interfacing systems involving database management systems between a Database Management System and a front-end application
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/01—Customer relationship services
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q40/00—Finance; Insurance; Tax strategies; Processing of corporate or income taxes
- G06Q40/08—Insurance
Landscapes
- Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Human Resources & Organizations (AREA)
- General Physics & Mathematics (AREA)
- Economics (AREA)
- Strategic Management (AREA)
- Marketing (AREA)
- General Business, Economics & Management (AREA)
- Development Economics (AREA)
- Finance (AREA)
- Accounting & Taxation (AREA)
- Databases & Information Systems (AREA)
- Entrepreneurship & Innovation (AREA)
- Operations Research (AREA)
- Game Theory and Decision Science (AREA)
- Technology Law (AREA)
- Quality & Reliability (AREA)
- Tourism & Hospitality (AREA)
- Educational Administration (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- Information Transfer Between Computers (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
The application relates to a service processing method, a service processing device, a storage medium and an electronic device, wherein the method comprises the following steps: receiving a target service request message of a target sub-object, wherein the target sub-object belongs to a target object in a plurality of objects which commonly use a target system, and the target service request message is used for requesting to process a target service; using a target access domain name of a target service request message to acquire a target object identifier corresponding to a target object; responding to the target service request message, and processing the target service; and storing the processing result of the target service into a target database corresponding to the target object identifier. The method and the device solve the problem of data exposure caused by repeated tenant accounts in a multi-tenant service processing mode in the related technology.
Description
Technical Field
The present application relates to the field of computers, and in particular, to a method and an apparatus for processing a service, a storage medium, and an electronic apparatus.
Background
Currently, a customer service system can provide multi-tenant services, which is a software platform that can provide customer service for multiple tenants, such as multiple insurance companies, and involves various functional services and information resources such as sessions, work orders, quality control, customer data, insurance policies, orders, and the like.
Because customer service needs to be provided for different tenants, an access layer, a realization layer and a data layer of a customer service system are required to be provided with information isolation, and data security is ensured. In order to realize tenant information isolation, account numbers under different tenants are distinguished by binding tenant identifications through account numbers on an access layer; realizing corresponding service processing according to the tenant identification at the realization layer; and a mode of sharing a data table database is adopted in the data layer.
However, in the above multi-tenant service processing method, accounts under different tenants are distinguished by binding account with tenant identifiers, and since the accounts are easy to repeat, data exposure between different tenants is caused, and unnecessary use troubles are caused.
Therefore, in a business processing mode of multiple tenants in the related art, a data exposure problem caused by repeated tenant accounts exists.
Disclosure of Invention
The application provides a business processing method, a business processing device, a storage medium and an electronic device, which are used for at least solving the problem of data exposure caused by repeated tenant accounts in a multi-tenant business processing mode in the related technology.
According to an aspect of an embodiment of the present application, a service processing method is provided, including: receiving a target service request message of a target sub-object, wherein the target sub-object belongs to a target object in a plurality of objects which commonly use a target system, and the target service request message is used for requesting to process a target service; using a target access domain name of a target service request message to acquire a target object identifier corresponding to a target object; responding to the target service request message, and processing the target service; and storing the processing result of the target service into a target database corresponding to the target object identifier.
Optionally, before receiving the target service request message of the target sub-object, the method further includes: loading object configuration information, wherein the object configuration information is used for indicating configuration information of each object in a plurality of objects, and the configuration information comprises: accessing a domain name and an object identifier; and storing the object configuration information into a local cache of a target gateway, wherein the target gateway is a gateway for receiving the target service request message, and the target gateway is used for acquiring a target object identifier according to the object configuration information and a target access domain name.
Optionally, after obtaining the target object identifier corresponding to the target object by using the target access domain name of the target service request message, the method further includes: determining a target authority corresponding to the target service request message; under the condition that the target authority belongs to the authority range of the request allowed by the target sub-object, the target object identifier is added into the target service request message; and sending the target service request message to a target seat platform, wherein the target seat platform is used for responding to the target service request message and processing the target service.
Optionally, sending the target service request message to the target agent platform includes: analyzing a target message identifier of a target service request message by using a target mapping relation, and determining a target application program interface corresponding to the target service request message, wherein the target mapping relation is used for representing the mapping relation between the application program interface for processing the service request message and the message identifier of the service request message; and calling a target application program interface, and sending the target service request message to the target agent platform.
Optionally, the method further includes: periodically acquiring service description information, wherein the service description information is used for representing service provided by an application of a framework layer; analyzing the service description information to obtain update information, wherein the update information is used for representing the corresponding relation between the application program interface of the service and the message identifier; and updating the current mapping relation by using the updating information to obtain the target mapping relation.
Optionally, after the target object identifier is added to the target service request message, the method further includes: determining a target database corresponding to a target object identifier when performing protocol conversion on a target service request message; and setting the target database as a data source corresponding to the target service request message.
Optionally, before receiving the target service request message of the target sub-object, the method further includes: receiving new object information for creating a target object, wherein the new object information comprises: a target object identifier and a target access domain name; creating a target object according to the information of the newly added object, and initializing basic information of the target object, wherein the basic information comprises: and (4) permission information.
According to another aspect of the embodiments of the present application, there is provided a service processing apparatus, including: a first receiving unit, configured to receive a target service request message of a target sub-object, where the target sub-object belongs to a target object in a plurality of objects that share a target system, and the target service request message is used to request processing of a target service; a first obtaining unit, configured to obtain a target object identifier corresponding to a target object by using a target access domain name of a target service request message; the processing unit is used for responding to the target service request message and processing the target service; and the first storage unit is used for storing the processing result of the target service into a target database corresponding to the target object identifier.
Optionally, the apparatus further comprises: a loading unit, configured to load object configuration information before receiving a target service request message of a target child object, where the object configuration information is used to indicate configuration information of each object in a plurality of objects, and the configuration information includes: accessing a domain name and an object identifier; and the second storage unit is used for storing the object configuration information into a local cache of a target gateway, wherein the target gateway is a gateway for receiving the target service request message, and the target gateway is used for acquiring a target object identifier according to the object configuration information and a target access domain name.
Optionally, the apparatus further comprises: a first determining unit, configured to determine a target authority corresponding to a target service request message after acquiring a target object identifier corresponding to a target object by using a target access domain name of the target service request message; the adding unit is used for adding the target object identifier into the target service request message under the condition that the target authority belongs to the authority range allowed to be requested by the target sub-object; and the sending unit is used for sending the target service request message to the target seat platform, wherein the target seat platform is used for responding to the target service request message and processing the target service.
Optionally, the sending unit includes: the determining module is used for analyzing a target message identifier of the target service request message by using a target mapping relation and determining a target application program interface corresponding to the target service request message, wherein the target mapping relation is used for representing the mapping relation between the application program interface for processing the service request message and the message identifier of the service request message; and the calling module is used for calling the target application program interface and sending the target service request message to the target seat platform.
Optionally, the apparatus further comprises: a second obtaining unit, configured to periodically obtain service description information, where the service description information is used to indicate a service provided by an application of a framework layer; the analysis unit is used for analyzing the service description information to obtain the updating information, wherein the updating information is used for representing the corresponding relation between the application program interface of the service and the message identifier; and the updating unit is used for updating the current mapping relation by using the updating information to obtain the target mapping relation.
Optionally, the apparatus further comprises: a second determining unit, configured to determine a target database corresponding to the target object identifier when performing protocol conversion on the target service request message after adding the target object identifier to the target service request message; and the setting unit is used for setting the target database as a data source corresponding to the target service request message.
Optionally, the apparatus further comprises: a second receiving unit, configured to receive, before receiving a target service request message of a target sub-object, new object information for creating the target object, where the new object information includes: a target object identifier and a target access domain name; a creating unit, configured to create a target object according to the information of the new object, and initialize basic information of the target object, where the basic information includes: and (4) permission information.
According to still another aspect of the embodiments of the present application, there is also provided a storage medium including a stored program that executes the above-described method when executed.
According to yet another aspect of the embodiments of the present application, there is also provided an electronic device, including a memory, a processor, and a computer program stored on the memory and executable on the processor, wherein the processor executes the above method through the computer program.
In the embodiment of the application, a mode of distinguishing different tenants by accessing a domain name is adopted to receive a target service request message of a target sub-object, wherein the target sub-object belongs to a target object in a plurality of objects which commonly use a target system, and the target service request message is used for requesting to process a target service; using a target access domain name of a target service request message to acquire a target object identifier corresponding to a target object; responding to the target service request message, and processing the target service; the processing result of the target service is stored in a target database corresponding to the target object identifier, the object identifier (for example, the tenant identifier) is determined through the access domain name of the service request message instead of the account, different tenants can be accurately distinguished, and the purpose of effectively isolating different tenants is achieved, so that the technical effects of ensuring the data security and improving the use experience of the tenants are achieved, and the problem of data exposure caused by repeated tenant accounts in the service processing mode of multiple tenants in the related technology is solved.
Drawings
The accompanying drawings, which are incorporated in and constitute a part of this specification, illustrate embodiments consistent with the invention and together with the description, serve to explain the principles of the invention.
In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, the drawings used in the description of the embodiments or the prior art will be briefly described below, and it is obvious for those skilled in the art that other drawings can be obtained according to the drawings without inventive exercise.
Fig. 1 is a schematic diagram of a hardware environment of a business processing method according to an embodiment of the present application;
fig. 2 is a flow chart of an alternative business processing method according to an embodiment of the present application;
FIG. 3 is a schematic diagram of an alternative system architecture according to an embodiment of the present application;
FIG. 4 is a schematic diagram of an alternative method for creating a new object according to an embodiment of the present application;
FIG. 5 is a diagram illustrating basic information of an alternative initialization object according to an embodiment of the present application;
FIG. 6 is a schematic diagram of an alternative system interface according to an embodiment of the present application;
FIG. 7 is a schematic diagram of an alternative system architecture according to an embodiment of the present application;
FIG. 8 is a flow diagram of another alternative business process method according to an embodiment of the present application;
FIG. 9 is a flow chart of yet another alternative business process method according to an embodiment of the present application;
FIG. 10 is a schematic diagram of an alternative traffic processing apparatus according to an embodiment of the present application;
fig. 11 is a block diagram of a server according to an embodiment of the present application.
Detailed Description
In order to make the technical solutions better understood by those skilled in the art, the technical solutions in the embodiments of the present application will be clearly and completely described below with reference to the drawings in the embodiments of the present application, and it is obvious that the described embodiments are only partial embodiments of the present application, but not all embodiments. All other embodiments, which can be derived by a person skilled in the art from the embodiments given herein without making any creative effort, shall fall within the protection scope of the present application.
It should be noted that the terms "first," "second," and the like in the description and claims of this application and in the drawings described above are used for distinguishing between similar elements and not necessarily for describing a particular sequential or chronological order. It is to be understood that the data so used is interchangeable under appropriate circumstances such that the embodiments of the application described herein are capable of operation in sequences other than those illustrated or described herein. Furthermore, the terms "comprises," "comprising," and "having," and any variations thereof, are intended to cover a non-exclusive inclusion, such that a process, method, system, article, or apparatus that comprises a list of steps or elements is not necessarily limited to those steps or elements expressly listed, but may include other steps or elements not expressly listed or inherent to such process, method, article, or apparatus.
First, partial nouns or terms appearing in the description of the embodiments of the present application are applicable to the following explanations:
SaaS: Software-as-a-Service, namely providing Software Service through a network;
AOP: aspect organized Programming, which is a technology for realizing unified maintenance of program functions through a pre-compiling mode and a dynamic proxy during operation, is Oriented to section Programming;
API: application Programming Interface, Application program Interface, is some predefined functions, or refers to the engagement of different components of the software system;
HTTP: hypertext Transfer Protocol, a HyperText Transfer Protocol, is a rule that specifies the communication between a browser and a Web server in detail;
RPC: remote Procedure Call, a mechanism that enables communication between applications;
GRPC: google Remote Procedure Call, a mechanism that enables communication between applications;
DNS: the Domain Name Service, a Domain Name system, as a distributed database that maps Domain names and IP addresses to each other, can make people more conveniently access the Internet;
URL: a Uniform Resource Locator, which is a Uniform Resource Locator of the Web and may refer to a network address;
PB: protocol Buffers, which is a light and efficient structured data storage format;
ETCD: is a highly available key value storage system, which is mainly used for shared configuration and service discovery.
According to an aspect of an embodiment of the present application, an embodiment of a method for service processing is provided.
Alternatively, in this embodiment, the service processing method may be applied to a hardware environment formed by the terminal 101 and the server 103 as shown in fig. 1. As shown in fig. 1, a server 103 is connected to a terminal 101 through a network, which may be used to provide services (such as game services, application services, etc.) for the terminal or a client installed on the terminal, and a database may be provided on the server or separately from the server for providing data storage services for the server 103, and the network includes but is not limited to: the terminal 101 is not limited to a PC, a mobile phone, a tablet computer, and the like. The service processing method in the embodiment of the present application may be executed by the server 103, or may be executed by the terminal 101, or may be executed by both the server 103 and the terminal 101. The terminal 101 executing the service processing method according to the embodiment of the present application may also be executed by a client running thereon.
Fig. 2 is a flowchart of an alternative service processing method according to an embodiment of the present application, and as shown in fig. 2, the method may include the following steps:
step S202, receiving a target service request message of a target sub-object, wherein the target sub-object belongs to a target object in a plurality of objects of a commonly used target system, and the target service request message is used for requesting to process a target service;
step S204, using the target access domain name of the target service request message to obtain the target object identification corresponding to the target object;
step S206, responding to the target service request message, and processing the target service;
and step S208, storing the processing result of the target service into a target database corresponding to the target object identifier.
Through the steps S202 to S208, a target service request message of a target sub-object is received in a manner of distinguishing different tenants by accessing a domain name, wherein the target sub-object belongs to a target object among a plurality of objects which share a target system, and the target service request message is used for requesting processing of a target service; using a target access domain name of a target service request message to acquire a target object identifier corresponding to a target object; responding to the target service request message, and processing the target service; the processing result of the target service is stored in the target database corresponding to the target object identifier, so that the technical effects of ensuring the data security and improving the tenant use experience are achieved, and the problem of data exposure caused by repeated tenant account numbers in a multi-tenant service processing mode in the related technology is solved.
In the technical solution provided in step S202, a target service request message of a target sub-object is received, where the target sub-object belongs to a target object in a plurality of objects that share a target system, and the target service request message is used for requesting processing of a target service.
Multiple objects may share a target system that may provide services to different objects. The target system may provide independent system services for itself for different objects.
For example, a customer service system (an example of a target system) may be a software platform that provides customer service for multiple companies (e.g., multiple insurance companies, an example of multiple objects), may be a multi-tenant system based on SAAS model, and may involve multiple functional services and information resources such as sessions, work orders, quality checks, customer profiles, insurance policies, orders, and so on. From the perspective of a system platform, the customer service system can be regarded as a multi-tenant unified system, and from the perspective of insurance company (tenant) users, the system for serving the independent system is perceived.
There may be multiple sub-objects under each object, and each sub-object may correspond to an account under that object. Each child object may log into the target system using its corresponding account number. For example, for a target object in the plurality of objects that contains a plurality of sub-objects, the plurality of sub-objects may contain the target sub-object. The target sub-object may log in to the client of the target system using the target account to use the service provided by the target system. The client may be running on a terminal device, such as a mobile terminal (e.g., a smartphone, etc.), a desktop computer, or other device capable of running the client.
The target sub-object may operate a system interface to trigger sending of a target service request to a background of the target system, where the target service request is used to request processing of a target service, and the target service may be any service that the target system may provide, for example, quality inspection management, work order management, and the like.
For example, after a worker (target sub-object) of an insurance company (target object) logs in a customer service management system, the customer service management system can be used to provide various functional services and information resources such as sessions, work orders, quality control, customer data, insurance policies, orders and the like.
The target system may be a microservice system, which may run on one or more servers or cloud servers, for example, deployed in accordance with the system architecture shown in fig. 3. The target system can construct a micro-service system and provide various services for tenants.
The target system may include a gateway, which may be a service gateway, which may be a stand-alone device, or a functional unit integrated in other devices, for example, installed in other devices through an integrated component, a chip, and the like.
A target gateway (which may be a service gateway) in the target system may be communicatively connected to a terminal device of a target sub-object, and the target service request message sent by the terminal device by the target sub-object is structured.
In the technical solution provided in step S204, a target access domain name of the target service request message is used to obtain a target object identifier corresponding to the target object.
Each service request message may correspond to an access domain name. For a plurality of objects which commonly use the target system, the corresponding access domain names can be different, so that operation and maintenance and safety precaution can be conveniently carried out in different objects.
For example, each insurance company may want to use a relatively independent access domain name to facilitate operation and maintenance and security protection inside their company, and different access domain names may be created for different tenants when they are created.
For different tenants, each tenant wants to be able to use a relatively independent access domain name, and therefore, the access domain names of different tenants are generally not duplicated. For accounts of different tenants, each tenant is expected to have an autonomous account system, that is, to provide independent system services for the tenant. For example, if two tenants have workers with the same name, they do not want to distinguish between the two by means of XX1, XX2, but want to identify their workers by XX, which can result in account duplication. Therefore, different tenants can be distinguished through accessing the domain name, so that different tenants can be well distinguished, and data leakage is avoided.
After receiving the target service request message, the target system (e.g., a target gateway of the target system) may determine a target access domain name of the target service request message, which may be carried in the message. According to the target access domain name, a corresponding target object identifier, that is, an object identifier of a target object to which the target sub-object belongs, may be acquired.
It should be noted that, in the implementation of the access layer, the URL, the account, or the domain name may also be used to distinguish different tenants, and the way of distinguishing different tenants by using the identifiers such as the URL and the account is similar to the way of distinguishing different tenants by using the domain name, which is not described herein again. The tenants are distinguished at the access layer through the domain names, so that different requests can be effectively distinguished and counted.
In the technical solution provided in step S206, the target service is processed in response to the target service request message.
In response to the received target service request message, the target system may process the target service for the target sub-object. The way it is handled may be different for different services. For example, for a user login, the user may check his account, password, etc., and determine whether to allow his login. For other types of services, the service processing flow corresponding to the service can be adopted for service processing.
The data involved in the business process may be data in a database corresponding to the target object identifier, that is, data of the target database.
For example, if the target service is to query a client profile, the client profile may be obtained from the target database, and the obtained client profile may be returned to the client of the target sub-object.
In the technical solution provided in step S208, the processing result of the target service is stored in the target database corresponding to the target object identifier.
For different services, it may correspond to different processing results.
For other services involving no data processing, such as login and query, the processing result may be a service record, for example, for login service, the processing result may be a login record, and the login record may include, but is not limited to, at least one of the following: the object identifier (account) of the target sub-object, the login time, the login location, the login terminal device identifier, and the like.
For other services involving data operations, the processing results may include: the business record may also include the results of the data operation. For example, for adding customer profiles, the processing results may include adding records that may include, but are not limited to, at least one of: the object identifier (account), adding time, adding location, added terminal device identifier, and the like of the target sub-object may further include: the added customer profile.
And storing the processing result of the target service into a target database corresponding to the target object identifier, namely, a database.
As an optional embodiment, before receiving the target service request message of the target sub-object, the method further includes:
s11, receiving new object information for creating a target object, wherein the new object information includes: a target object identifier and a target access domain name;
s12, creating a target object according to the information of the new object, and initializing the basic information of the target object, wherein the basic information comprises: and (4) permission information.
An administrator of the target system may add an object, e.g., a new tenant, in the target system so that the object may use the target system.
Optionally, in this embodiment, managers (for example, product and operator) of the target system perform tenant addition and user initialization in an interface configuration manner, and configure and manage user and function information of the tenant system in steps.
For example, the administrator can create an additional object (e.g., an additional tenant) by one key, and the specific interface is as shown in fig. 4. After clicking the save in the interface as shown in fig. 4, the client of the administrator may send new object information to the back end (e.g., the configuration management server), where the new object information includes: a target object identification (tenant code) and a target access domain name (tenant domain name), which may further include: tenant name, company code (e.g., insurance company code).
The background server (e.g., the configuration management server) may receive the information of the new object, create a target object according to the information of the new object, and initialize basic information of the target object, where the basic information includes: and (4) permission information. The basic information of the initialization object may be determined according to input information received to the client.
For example, after inputting various information as shown in fig. 4 and clicking on save, the tenant just created is entered. An interface for initializing basic information of the tenant as shown in fig. 5 is displayed on the client to initialize basic information such as related products and permissions, and after corresponding configuration is completed, a new tenant user can use the basic information online as shown in fig. 6.
After the corresponding configuration is completed, the staff of the tenant can open the website, and enter the system initialization account number, so that the target system can be normally used.
Through the steps, a new object (a new tenant, for example, a new insurance company) can be quickly accessed to provide relevant services (for example, customer service) for the new object, and the problems that in the related technology, the way of newly building the tenant is large, the initialization operation is large, the related tables are large, and the operation and maintenance are not facilitated can be solved.
As an optional embodiment, before receiving the target service request message of the target sub-object, the method further includes:
s21, loading object configuration information, where the object configuration information is used to indicate configuration information of each object in the multiple objects, and the configuration information includes: accessing a domain name and an object identifier;
and S22, storing the object configuration information into a local cache of a target gateway, wherein the target gateway is a gateway for receiving the target service request message, and the target gateway is used for acquiring the target object identifier according to the object configuration information and the target access domain name.
In order to realize the identification conversion of the access domain name and the tenant identification, object configuration information can be firstly defined, and fields related to the object configuration information can comprise: the object identification and the access domain name may further include at least one of: tenant name, tenant type, enabled state, system icon, system name, etc.
For example, in order to realize the identification conversion of the domain name and the tenant identification, an independent domain name can be used, and the identification is uniformly replaced by the gateway. And the gateway determines a tenant identification corresponding to the tenant domain name according to the locally cached tenant configuration information, and adds the tenant identification in the service request of the tenant.
Tenant configuration information may be first defined, where the fields involved are tenant identification, tenant name, tenant type, enablement status, access domain name, system icon, system name, etc., as shown in table 1.
TABLE 1
| Field(s) | Description of the invention | Type (B) |
| code | Tenant identification | Character string |
| name | Tenant name | Character string |
| type | Type (B) | Number of |
| status | Enabled state | Number of |
| domain | Access domain name | Character string |
| logo | System icon | Character string |
| name | Name of system | Character string |
After a gateway (e.g., a target gateway) is started, object configuration information (e.g., tenant configuration information) may first be loaded into a local cache. After receiving the service request message, the gateway may obtain an object identifier corresponding to the access domain name according to the object configuration information and the access domain name of the service request message.
It should be noted that, the service gateways corresponding to each object in the multiple objects may be the same gateway, may be different gateways, and may be a specific network architecture manner.
As an optional embodiment, after obtaining a target object identifier corresponding to a target object by using a target access domain name of a target service request message, the method further includes:
S31, determining the target authority corresponding to the target service request message;
s32, when the target authority belongs to the authority range allowed by the target sub-object, the target object mark is added to the target service request message;
and S33, sending the target service request message to a target seat platform, wherein the target seat platform is used for responding the target service request message and processing the target service.
After receiving the service request, the gateway can perform permission check to determine whether the permission of the service request conforms to the range of the allowed request, in addition to acquiring the corresponding object identifier according to the access.
For the target gateway, it may first determine the target authority corresponding to the target service request message, and determine whether the target authority belongs to the authority range allowed by the target sub-object. If the target authority belongs to the authority range allowed by the target sub-object, the target gateway can add the target object identifier to the target service request message, for example, to the Header (Header) of the request message. If the target authority does not belong to the authority range of the request allowed by the target sub-object, the access can be refused according to the rule, and a refusal response is returned to the client of the target sub-object, wherein the refusal response can also comprise the reason of the refusal.
Optionally, in this embodiment, the multi-tenant customer service system replaces the identifier with the domain name, completes the identification of the tenant and the verification of the identity of the tenant on the access layer, can effectively track and distinguish the request of the tenant, lays a foundation for post-customized and personalized services, and is also beneficial to performing a gray scale upgrade service for different tenants.
For example, when a request comes, the gateway may obtain the corresponding tenant identity according to the domain name, check whether the authority of the request conforms to the tenant request range, add the corresponding tenant identity in the request if it is legal, and deny access according to the rule if it is illegal.
After adding the target object identifier to the target service request message, the target gateway may transmit the target service request message to which the target object identifier is added to the target agent platform, so that the target agent platform responds to the target service request message to process the target service.
As an alternative embodiment, sending the target service request message to the target agent platform includes:
s41, analyzing the target message identification of the target service request message by using the target mapping relation, and determining the target application program interface corresponding to the target service request message, wherein the target mapping relation is used for representing the mapping relation between the application program interface for processing the service request message and the message identification of the service request message;
And S42, calling a target application program interface and sending the target service request message to the target agent platform.
The framework layer of the microservice architecture can provide a plurality of business services, and different business services can be provided by different applications of the framework layer. Different APIs of the framework layer may correspond to different business services.
In order to perform access request routing, it is necessary to parse the message identifier of the service request message and determine the API corresponding to the message identifier of the service request, that is, which API can process the requested service.
The message identifier of the service request message may be a resource identifier carried by the service request message, and may be used to locate a resource requested by the service request message, for example, a URL of the service request message. The API corresponding to the message identifier may be an API capable of providing a resource requested by the service request, where the resource may be a multimedia resource or other types of service resources.
It should be noted that, in this embodiment, the service processing method is described by taking the message identifier as a URL as an example, and other types of message identifiers that can be used to determine an API for processing the service request message may be used in this application.
Optionally, in this embodiment, after replacing the object identifier, the target gateway may perform route resolution using a target mapping relationship, where the target mapping relationship is used to represent a mapping relationship between an API for processing the service request message and the message identifier of the service request message. The result of the route resolution may be a target API corresponding to the target message identification of the target service request message, that is, an API that processes the target service request message. By calling the target API, a target service request message may be transmitted to the target agent platform.
As an alternative embodiment, the method further includes:
s51, periodically acquiring service description information, wherein the service description information is used for representing service provided by the application of the framework layer;
s52, analyzing the service description information to obtain update information, wherein the update information is used for representing the corresponding relation between the application program interface of the service and the message identifier;
and S53, updating the current mapping relation by using the updating information to obtain the target mapping relation.
In a microservice system in the related art, access request routing depends on analyzing a URL defined in a PB file, and the PB file generally needs to be loaded to analyze the URL. Therefore, each time a new route is added, the new route needs to be reissued to realize loading analysis, which causes unnecessary repeated issuance of the gateway and influences normal use of the service. Meanwhile, the front end and the back end are heavily dependent, and the gateway cannot actively discover a new request route.
The target gateway can realize dynamic identification routing strategy through service reflection, and solves the problem of repeated issuing of the gateway. The target gateway can trigger the reissuing of the PB file by the original newly added route to periodically and actively analyze the API and the corresponding URL in the service, and update the current mapping relation to obtain the latest mapping relation, so that the dependence of the analysis of the URL on the PB file is eliminated.
Optionally, in this embodiment, the target gateway may periodically obtain service description information, where the service description information is used to indicate a service that can be provided by an application of the framework layer, and the service description information may also be used to indicate a service that is newly added to the application of the framework layer.
By analyzing the service description information, update information can be obtained, and the update information is used for representing the corresponding relation between the API of the service and the message identifier. For example, the service description information may be parsed to construct a URL corresponding to an API of the service, or a URL corresponding to an API of a newly added service. By using the update information, the current mapping relation in the gateway can be updated to obtain the latest mapping relation, and the latest mapping relation can be used for dynamic route analysis.
Optionally, in this embodiment, in the routing of the request, the service description information may be obtained through a reflection mode of the GRPC service, so as to dynamically discover a new route, change a problem that a routing addressing manner in the related art heavily depends on new route loading analysis, and change the original state that each iteration is issued to the gateway into a state of issuing a persistent service; the issue dependence of the front end and the back end and the difficulty of operation and maintenance are solved.
For example, a reflection attribute may be enabled in a GRPC service, and then after a Channel is connected in a gateway, a description set- > service attribute information- > method description information of a file is acquired through a reflection method provided by the GRPC service, so as to analyze an API method and a corresponding URL in the service step by step, thereby obtaining a mapping relationship between the method and the URL, and providing protocol conversion and service invocation.
To maintain dynamic flexibility while reducing performance loss, three resolution strategies can be combined: firstly, initializing and analyzing once when a system is started; then, actively resolve once every interval (e.g., ten minutes); finally, when the request comes, if the route does not exist in the cache, the active resolution is triggered. After each analysis, the routing information is stored in the local cache, so that dynamic routing can be realized, and decoupling of front-end and back-end release dependence is realized.
As an optional embodiment, after the target object identifier is added to the target service request message, the method further includes:
s61, determining a target database corresponding to the target object identification when the protocol conversion is carried out on the target service request message;
and S62, setting the target database as a data source corresponding to the target service request message.
When the protocol conversion is performed on the target service request message (for example, the service request is converted into a GRPC request via the HTTP protocol), the converted request may be intercepted by the AOP, and the data source may be set according to the target object identifier, that is, the target database corresponding to the target object identifier is determined according to the target object identifier, and is set as the data source of the target service request message.
Optionally, in this embodiment, a data source may be automatically identified and set by a tenant identifier in a service implementation layer by using an AOP interception manner, so as to implement automatic database dropping of tenant data. By the implementation, the development complexity can be greatly reduced, the working efficiency of developers is improved, and the probability of data abnormity caused by manual work is reduced. Meanwhile, because each tenant is a physically independent database, the database has high data isolation and effectively meets the scene needs of a specific industry (such as an insurance industry).
For example, AOP dynamic data source switching may be performed when determining a data source for an operation. A downstream device of the gateway (e.g., an agent platform) may set the data source as a database corresponding to the tenant according to the tenant identification. When the service request is converted into a GRPC request through an HTTP at the gateway, the data source can be set according to the tenant identification acquired before, and the dynamic switching of the data source is completed. After the automatic switching of the data source, all the business operations can automatically fall into different tenant databases when being stored in the databases.
As an example of AOP switching, a customer service system under the micro service architecture may provide a multi-database access broker component that encapsulates actual access links of databases of individual tenants, presenting to the seating platform as one database access. When the agent platform accesses the database data through the agent component, the agent component identifies the tenant identification in the request through the AOP slice and switches to the correct database link of the tenant, so that an application layer (agent platform) database switching non-perception access mode is realized.
It should be noted that, in the aspect of data isolation, a shared database may be adopted, and a database-splitting and table-splitting mode is implemented according to tenant identification, and in this mode, all tenant data may be uniformly stored in the same database and table, which is more likely to cause data abnormality due to errors of developers. Meanwhile, the bottom layer completely depends on the level of developers, and data operation between different tenants is unsafe. In addition, the way of sharing the database cannot effectively isolate data, and data exposure among different tenants is easily caused. This scheme may be employed in some scenarios, such as when balanced storage of data is a concern.
In this optional embodiment, the target system is a customer service system, the plurality of objects are a plurality of tenants, and the object identifier is a tenant identifier.
The target system may be a microservice system, and the system architecture thereof may be as shown in fig. 7. The microservice system includes: the system comprises a presentation layer, an interface access layer, a core service, a public service, a service monitor and a resource layer, wherein the interface access layer is an access layer of the micro service system; the core service, the public service and the service monitoring are service framework layers (realization layers) of the micro service system, and the service logic of the core is realized; the resource layer is a data layer of the micro service system and is responsible for storing service data.
For the presentation layer, the presentation layer is arranged on the terminal devices of related personnel (for example, seat personnel, tenants, operation and maintenance personnel, management personnel, and the like), and comprises: the system comprises an agent system front end, an instant messaging application applet and an operation and maintenance management front end, wherein the agent system front end is a PC (personal computer) end used by an agent person and used for customer service daily actual work, such as replying customer consultation, creating a work order, inquiring data and the like; the instant messaging application applet is an application applet used by a tenant and is a client online customer service entrance; the operation and maintenance management front end is a PC end used by operation and maintenance personnel, management personnel and the like, and is used for managing and monitoring the actual working conditions of customer service, such as the workload of the customer service (for example, how many customers are served on the same day) and the working quality (for example, how much goodness is).
For the access layer, the access layer is arranged on a gateway (e.g., a business gateway) of the microservice system, and the access layer may include a plurality of interfaces, and some of the interfaces may be in communication connection with an agent system front end, an instant messaging applet, an operation and maintenance management front end, and the like, so as to receive and forward a request initiated by each component; meanwhile, the access layer also maintains the login state of B-side systems (agent system front end, operation and maintenance management front end) such as a customer service system, a supervisor and the like.
The core service is a main service that can be provided by the framework layer, and may include but is not limited to at least one of the following: IM conversation, a statistical form, client data, conversation evaluation, quality service, an agent worksheet, real-time monitoring, data summarization, service configuration and the like so as to meet different service requirements of tenants, wherein the IM conversation service is mainly responsible for maintaining WebSocket long links at the front end of an agent system and receiving and sending customer service messages (messages sent by agents are forwarded to correct clients, and messages sent by clients are forwarded to correct agents); the statistical report service is mainly responsible for the calculation of the relevant reports of the daily workload and the working quality of the agents and provides the capability of data visualization; the customer data service mainly provides the function of inquiring the relevant information of the customer by the agent, such as inquiring the historical conversation record of the customer, the work order relevant to the customer, the insurance policy bought by the customer and the like; the session evaluation service mainly comprises the steps that after the customer service is finished, questionnaire information such as satisfaction survey and the like is pushed to a customer, and the service can effectively monitor the working quality of the customer service; the quality service captures related conversations according to keywords, such as conversation records related to keywords such as complaints, refunds and the like, in an offline sampling inspection mode or an online monitoring mode; the seat work order service mainly provides a function of creating a work order and tracking the problems of the customers; the real-time monitoring service is responsible for presenting the current total incoming line advisory quantity/each tenant incoming line advisory quantity/each agent incoming line advisory quantity in real time, and can effectively assist an agent supervisor in dynamically coordinating online agent manpower; the data summarizing service is mainly responsible for converging data in each tenant database, so that centralized statistics is facilitated; the service configuration service centrally maintains the configuration items related to the system, and is convenient for an administrator to maintain and manage the system.
The common services are conventional services that can be provided by the framework layer, and may include, but are not limited to, at least one of the following: the system comprises a gateway, a file service, a timing service and a notification service, wherein the gateway service is mainly responsible for authentication and authorization of a core and request forwarding capability; the file service is mainly responsible for storing data such as pictures/files in the system; the timing service mainly provides a distributed timing trigger function and can schedule other services at a specified time or periodically through the timing service; the notification service encapsulates the reach functions of e-mail/short message/enterprise instant messaging application and the like, and provides a uniform interface for the core layer.
Service monitoring is used to monitor various services provided by the framework layer, and may include, but is not limited to, at least one of: the system comprises a registration center, a service alarm, a log service, a management center and a distributed service, wherein the registration center is a core system for registering addresses and service names of all micro-services; the service alarm and log service provides alarms for related developers in real time for logs at the levels of ERROR, WARN and the like through enterprise instant messaging application by acquiring log files of various micro services; the management center is mainly responsible for management and monitoring of each distributed service and issuing of key configuration.
The resource layer stores data resources in the microservice system, and the storage mode used may include but is not limited to: MySQL, Redis, Mongodb, File. The system mainly adopts a very mature component in the industry, and the agent system is subjected to related cluster configuration to ensure high availability and high performance.
The client system can realize the whole business function through the micro-service technology, API calling is realized through GRPC between services, service discovery is managed by ETCD, middleware relates to message queues, Kafka, Redis and the like, and a database relates to MySQL, Mongdb, ElasticSearch and the like. The service provided by the customer service system can be expanded horizontally, and when the number of concurrency is increased, the capacity expansion can be achieved by increasing service nodes. The deployment can support virtual machines, containers and the like, the deployment mode of the containers can dynamically perform corresponding expansion and contraction control according to performance change, response is fast, and cost is saved.
With reference to fig. 8, the flow of the service processing method in this optional embodiment may include, but is not limited to, the following steps:
step 1, a manager of the customer service system creates a new tenant.
The administrator of the customer service system can create a new tenant by adopting the mode shown in fig. 4, and the configuration management server (or the service node) can interact with the client of the administrator to realize creation of the new tenant, so that one-key quick access to the new tenant can be achieved, and online of the service can be realized.
And 2, initializing and loading configuration information of the tenant.
The configuration management server may interact with the agent platform and send an initialization message of the new tenant to the agent platform. And the seat platform loads the configuration of the new tenant and returns a response message to the configuration management server to complete the configuration of the new tenant.
And 3, receiving a request of the tenant, processing the request of the tenant and responding.
The tenant or staff of the tenant can log in the client of the customer service system through the account, and the client is operated to trigger the sending of the request to the customer service system.
The customer service system can realize isolation and distinction of tenants in an access layer through a domain name, ensure that access requests can be tracked at an entrance, provide different service strategies for different tenants, and enable the tenants to perceive that the system is an independent service system, thereby greatly improving the recognition degree and the user experience.
The gateway of the customer service system can receive the request of the tenant and replace the tenant identification by the following method: and acquiring a corresponding tenant identification according to the domain name, checking whether the authority of the request conforms to the tenant request range, and adding the corresponding tenant identification into the request if the authority of the request conforms to the tenant request range.
The customer service system can dynamically analyze the new URL route through a service reflection mechanism at the gateway layer, so that one-time issuing and dynamic identification of the gateway layer are realized, issuing dependence of the front end and the back end is decoupled, and the difficulty of operation and maintenance is reduced.
After replacing the tenant identity, the gateway may perform dynamic route resolution, determine an API for processing the service, and send the request to a downstream agent platform corresponding to the API.
After a request passes through the gateway, the system automatically distinguishes and identifies tenant identification according to the domain name, automatic switching of a data source is realized through the AOP technology, and in the specific service implementation of developers, the operation is as simple and convenient as an independent database, so that high isolation of data can be realized, the development speed can be improved, quick iteration is realized, and the data security problem caused by errors of the developers is reduced.
When the request is converted into a GRPC request through an HTTP (hyper text transport protocol) protocol at the gateway, the agent platform can complete the dynamic switching of the data source, process the service and drop the service to the database through the AOP (automatic object plane) interception technology according to the acquired tenant identification. After the automatic switching of the data source, all the business operations automatically fall into different tenant databases when being stored in the databases.
After the service processing is completed, the seat platform can send a response message to the tenant through the gateway to inform the tenant of the service processing result.
According to the embodiment, the customer service system realizes multi-level effective isolation from an access layer, a realization layer and a data layer in a multi-tenant mode by means of independent domain names, gateway unified replacement identification, AOP dynamic data source switching, reflection automatic addressing routing and the like, and no perception and data absolute isolation are used for tenants; for a customer service system, the expansion is easy, the capacity expansion is easy, and the maintenance is easy; for operation and maintenance, the initial tenants can be added by one key, and the method is fast and efficient.
It should be noted that, for simplicity of description, the above-mentioned method embodiments are described as a series of acts or combination of acts, but those skilled in the art will recognize that the present application is not limited by the order of acts described, as some steps may occur in other orders or concurrently depending on the application. Further, those skilled in the art should also appreciate that the embodiments described in the specification are preferred embodiments and that the acts and modules referred to are not necessarily required in this application.
Through the above description of the embodiments, those skilled in the art can clearly understand that the method according to the above embodiments can be implemented by software plus a necessary general hardware platform, and certainly, different embodiments may be adopted by hardware in different scenarios to ensure the smooth implementation of the scheme. Based on such understanding, the technical solutions of the present application may be embodied in the form of a software product, which is stored in a storage medium (e.g., ROM/RAM, magnetic disk, optical disk) and includes instructions for enabling a terminal device (e.g., a mobile phone, a computer, a server, or a network device) to execute the method according to the embodiments of the present application.
According to another aspect of the embodiment of the present application, a service processing apparatus for implementing the service processing method is also provided. Fig. 10 is a schematic diagram of an alternative service processing apparatus according to an embodiment of the present application, and as shown in fig. 10, the apparatus may include:
(1) a first receiving unit 1002, configured to receive a target service request message of a target sub-object, where the target sub-object belongs to a target object in multiple objects that share a target system, and the target service request message is used to request processing of a target service;
(2) a first obtaining unit 1004, configured to obtain a target object identifier corresponding to a target object by using a target access domain name of a target service request message;
(3) a processing unit 1006, configured to respond to the target service request message, and process the target service;
(4) the first saving unit 1008 is configured to save the processing result of the target service to the target database corresponding to the target object identifier.
It should be noted that the first receiving unit 1002 in this embodiment may be configured to execute the step S202, the first acquiring unit 1004 in this embodiment may be configured to execute the step S204, the processing unit 1006 in this embodiment may be configured to execute the step S206, and the first saving unit 1008 in this embodiment may be configured to execute the step S208.
Through the module, receiving a target service request message of a target sub-object in a mode of distinguishing different tenants through an access domain name, wherein the target sub-object belongs to a target object in a plurality of objects which share a target system, and the target service request message is used for requesting to process a target service; using a target access domain name of a target service request message to acquire a target object identifier corresponding to a target object; responding to the target service request message, and processing the target service; the processing result of the target service is stored in the target database corresponding to the target object identifier, so that the technical effects of ensuring the data security and improving the tenant use experience are achieved, and the problem of data exposure caused by repeated tenant account numbers in a multi-tenant service processing mode in the related technology is solved.
As an alternative embodiment, the apparatus further comprises:
(1) a loading unit, configured to load object configuration information before receiving a target service request message of a target child object, where the object configuration information is used to indicate configuration information of each object in a plurality of objects, and the configuration information includes: accessing a domain name and an object identifier;
(2) And the second storage unit is used for storing the object configuration information into a local cache of a target gateway, wherein the target gateway is a gateway for receiving the target service request message, and the target gateway is used for acquiring a target object identifier according to the object configuration information and a target access domain name.
As an alternative embodiment, the apparatus further comprises:
(1) a first determining unit, configured to determine a target authority corresponding to a target service request message after acquiring a target object identifier corresponding to a target object by using a target access domain name of the target service request message;
(2) the adding unit is used for adding the target object identifier into the target service request message under the condition that the target authority belongs to the authority range allowed to be requested by the target sub-object;
(3) and the sending unit is used for sending the target service request message to the target seat platform, wherein the target seat platform is used for responding to the target service request message and processing the target service.
As an alternative embodiment, the sending unit includes:
(1) the determining module is used for analyzing a target message identifier of the target service request message by using a target mapping relation and determining a target application program interface corresponding to the target service request message, wherein the target mapping relation is used for representing the mapping relation between the application program interface for processing the service request message and the message identifier of the service request message;
(2) And the calling module is used for calling the target application program interface and sending the target service request message to the target seat platform.
As an alternative embodiment, the apparatus further comprises:
(1) a second obtaining unit, configured to periodically obtain service description information, where the service description information is used to indicate a service provided by an application of a framework layer;
(2) the analysis unit is used for analyzing the service description information to obtain the updating information, wherein the updating information is used for representing the corresponding relation between the application program interface of the service and the message identifier;
(3) and the updating unit is used for updating the current mapping relation by using the updating information to obtain the target mapping relation.
As an alternative embodiment, the apparatus further comprises:
(1) a second determining unit, configured to determine a target database corresponding to the target object identifier when performing protocol conversion on the target service request message after adding the target object identifier to the target service request message;
(2) and the setting unit is used for setting the target database as a data source corresponding to the target service request message.
As an alternative embodiment, the apparatus further comprises:
(1) a second receiving unit, configured to receive, before receiving a target service request message of a target sub-object, new object information for creating the target object, where the new object information includes: a target object identifier and a target access domain name;
(2) A creating unit, configured to create a target object according to the information of the new object, and initialize basic information of the target object, where the basic information includes: and (4) permission information.
It should be noted here that the modules described above are the same as the examples and application scenarios implemented by the corresponding steps, but are not limited to the disclosure of the above embodiments. It should be noted that the modules described above as a part of the apparatus may be operated in a hardware environment as shown in fig. 1, and may be implemented by software, or may be implemented by hardware, where the hardware environment includes a network environment.
According to another aspect of the embodiments of the present application, there is also provided an electronic device for implementing the service processing method, where the electronic device may be a server, a terminal, or a combination thereof.
Taking a server as an example, fig. 11 is a block diagram of a server according to an embodiment of the present application, and as shown in fig. 11, the server may include: one or more processors 1101 (only one of which is shown), a memory 1103, and a transmission device 1105, as shown in fig. 11, the server may further include an input-output device 1107.
The memory 1103 may be configured to store software programs and modules, such as program instructions/modules corresponding to the service processing method and apparatus in the embodiment of the present application, and the processor 1101 executes various functional applications and data processing by running the software programs and modules stored in the memory 1103, that is, implements the service processing method. The memory 1103 may include high-speed random access memory, and may also include non-volatile memory, such as one or more magnetic storage devices, flash memory, or other non-volatile solid-state memory. In some examples, the memory 1103 may further include memory located remotely from the processor 1101, which may be connected to a server over a network. Examples of such networks include, but are not limited to, the internet, intranets, local area networks, mobile communication networks, and combinations thereof.
The transmitting device 1105 is used for receiving or sending data via a network, and can also be used for data transmission between the processor and the memory. Examples of the network may include a wired network and a wireless network. In one example, the transmission device 1105 includes a Network adapter (NIC) that can be connected to a router via a Network cable and other Network devices to communicate with the internet or a local area Network. In one example, the transmitting device 1105 is a Radio Frequency (RF) module, which is used to communicate with the internet in a wireless manner.
The memory 1103 is used for storing, among other things, application programs.
The processor 1101 may call an application stored in the memory 1103 through the transmission device 1105 to perform the following steps:
s1, receiving a target service request message of a target sub-object, wherein the target sub-object belongs to a target object in a plurality of objects of a commonly used target system, and the target service request message is used for requesting to process a target service;
s2, using the target access domain name of the target service request message to obtain the target object identification corresponding to the target object;
S3, responding the target service request message, processing the target service;
and S4, storing the processing result of the target service into a target database corresponding to the target object identification.
Optionally, the specific examples in this embodiment may refer to the examples described in the above embodiments, and this embodiment is not described herein again.
It can be understood by those skilled in the art that the structure shown in fig. 11 is only an illustration, and the device implementing the service processing method may also be a terminal, and the terminal may be a terminal device such as a smart phone (e.g., an Android phone, an iOS phone, etc.), a tablet computer, a palm computer, a Mobile Internet Device (MID), a PAD, and the like. Fig. 11 is a diagram illustrating a structure of the electronic device. For example, the terminal may also include more or fewer components (e.g., network interfaces, display devices, etc.) than shown in FIG. 11, or have a different configuration than shown in FIG. 11.
Those skilled in the art will appreciate that all or part of the steps in the methods of the above embodiments may be implemented by a program instructing hardware associated with the terminal device, where the program may be stored in a computer-readable storage medium, and the storage medium may include: flash disks, Read-Only memories (ROMs), Random Access Memories (RAMs), magnetic or optical disks, and the like.
According to still another aspect of an embodiment of the present application, there is also provided a storage medium. Optionally, in this embodiment, the storage medium may be used to execute a program code of the service processing method.
Optionally, in this embodiment, the storage medium may be located on at least one of a plurality of network devices in a network shown in the above embodiment.
Optionally, in this embodiment, the storage medium is configured to store program code for performing the following steps:
s1, receiving a target service request message of a target sub-object, wherein the target sub-object belongs to a target object in a plurality of objects of a commonly used target system, and the target service request message is used for requesting to process a target service;
s2, using the target access domain name of the target service request message to obtain the target object identification corresponding to the target object;
s3, responding the target service request message, processing the target service;
and S4, storing the processing result of the target service into a target database corresponding to the target object identification.
Optionally, the specific examples in this embodiment may refer to the examples described in the above embodiments, and this embodiment is not described herein again.
Optionally, in this embodiment, the storage medium may include, but is not limited to: various media capable of storing program codes, such as a U disk, a ROM, a RAM, a removable hard disk, a magnetic disk, or an optical disk.
The above-mentioned serial numbers of the embodiments of the present application are merely for description and do not represent the merits of the embodiments.
The integrated unit in the above embodiments, if implemented in the form of a software functional unit and sold or used as a separate product, may be stored in the above computer-readable storage medium. Based on such understanding, the technical solution of the present application may be substantially implemented or a part of or all or part of the technical solution contributing to the prior art may be embodied in the form of a software product stored in a storage medium, and including instructions for causing one or more computer devices (which may be personal computers, servers, network devices, or the like) to execute all or part of the steps of the method described in the embodiments of the present application.
In the above embodiments of the present application, the descriptions of the respective embodiments have respective emphasis, and for parts that are not described in detail in a certain embodiment, reference may be made to related descriptions of other embodiments.
In the several embodiments provided in the present application, it should be understood that the disclosed client may be implemented in other manners. The above-described embodiments of the apparatus are merely illustrative, and for example, the division of the units is only one type of division of logical functions, and there may be other divisions when actually implemented, for example, a plurality of units or components may be combined or may be integrated into another system, or some features may be omitted, or not executed. In addition, the shown or discussed mutual coupling or direct coupling or communication connection may be an indirect coupling or communication connection through some interfaces, units or modules, and may be in an electrical or other form.
The units described as separate parts may or may not be physically separate, and parts displayed as units may or may not be physical units, may be located in one place, or may be distributed on a plurality of network units. Some or all of the units can be selected according to actual needs to achieve the purpose of the solution of the embodiment.
In addition, functional units in the embodiments of the present application may be integrated into one processing unit, or each unit may exist alone physically, or two or more units are integrated into one unit. The integrated unit can be realized in a form of hardware, and can also be realized in a form of a software functional unit.
The foregoing is only a preferred embodiment of the present application and it should be noted that those skilled in the art can make several improvements and modifications without departing from the principle of the present application, and these improvements and modifications should also be considered as the protection scope of the present application.
Claims (10)
1. A method for processing a service, comprising:
receiving a target service request message of a target sub-object, wherein the target sub-object belongs to a target object in a plurality of objects which commonly use a target system, and the target service request message is used for requesting to process a target service;
using the target access domain name of the target service request message to acquire a target object identifier corresponding to the target object;
responding the target service request message and processing the target service;
and storing the processing result of the target service into a target database corresponding to the target object identifier.
2. The method of claim 1, wherein before receiving the target service request message for the target sub-object, the method further comprises:
loading object configuration information, wherein the object configuration information is used for indicating configuration information of each object in the plurality of objects, and the configuration information includes: accessing a domain name and an object identifier;
And storing the object configuration information into a local cache of a target gateway, wherein the target gateway is a gateway for receiving the target service request message, and the target gateway is used for acquiring the target object identifier according to the object configuration information and the target access domain name.
3. The method of claim 1, wherein after obtaining the target object identifier corresponding to the target object using the target access domain name of the target service request message, the method further comprises:
determining a target authority corresponding to the target service request message;
under the condition that the target authority belongs to the authority range allowed to be requested by the target sub-object, the target object identification is added into the target service request message;
and sending the target service request message to a target seat platform, wherein the target seat platform is used for responding to the target service request message and processing the target service.
4. The method of claim 3, wherein sending the target service request message to the target agent platform comprises:
analyzing a target message identifier of the target service request message by using a target mapping relation, and determining a target application program interface corresponding to the target service request message, wherein the target mapping relation is used for representing the mapping relation between the application program interface for processing the service request message and the message identifier of the service request message;
And calling the target application program interface, and sending the target service request message to the target seat platform.
5. The method of claim 4, further comprising:
periodically acquiring service description information, wherein the service description information is used for representing service provided by an application of a framework layer;
analyzing the service description information to obtain update information, wherein the update information is used for representing the corresponding relation between an application program interface of the service and the message identifier;
and updating the current mapping relation by using the updating information to obtain the target mapping relation.
6. The method of claim 3, wherein after adding the target object identifier to the target service request message, the method further comprises:
determining the target database corresponding to the target object identification when the protocol conversion is carried out on the target service request message;
and setting the target database as a data source corresponding to the target service request message.
7. The method according to any of claims 1 to 6, wherein before receiving the target service request message of the target sub-object, the method further comprises:
Receiving new object information for creating the target object, wherein the new object information includes: the target object identification and the target access domain name;
according to the information of the newly added object, the target object is created, and basic information of the target object is initialized, wherein the basic information comprises: and (4) permission information.
8. A traffic processing apparatus, comprising:
a first receiving unit, configured to receive a target service request message of a target sub-object, where the target sub-object belongs to a target object in a plurality of objects that share a target system, and the target service request message is used to request processing of a target service;
a first obtaining unit, configured to obtain a target object identifier corresponding to the target object by using a target access domain name of the target service request message;
the processing unit is used for responding to the target service request message and processing the target service;
and the first storage unit is used for storing the processing result of the target service into a target database corresponding to the target object identifier.
9. A storage medium, characterized in that the storage medium comprises a stored program, wherein the program when executed performs the method of any of the preceding claims 1 to 7.
10. An electronic device comprising a memory, a processor and a computer program stored on the memory and executable on the processor, wherein the processor executes the method of any of the preceding claims 1 to 7 by means of the computer program.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN202010599922.4A CN111861140B (en) | 2020-06-28 | 2020-06-28 | Service processing method and device, storage medium and electronic device |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN202010599922.4A CN111861140B (en) | 2020-06-28 | 2020-06-28 | Service processing method and device, storage medium and electronic device |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| CN111861140A true CN111861140A (en) | 2020-10-30 |
| CN111861140B CN111861140B (en) | 2024-08-09 |
Family
ID=72988639
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| CN202010599922.4A Active CN111861140B (en) | 2020-06-28 | 2020-06-28 | Service processing method and device, storage medium and electronic device |
Country Status (1)
| Country | Link |
|---|---|
| CN (1) | CN111861140B (en) |
Cited By (14)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN112527310A (en) * | 2020-12-15 | 2021-03-19 | 平安国际智慧城市科技股份有限公司 | Multi-tenant data isolation method and device, computer equipment and storage medium |
| CN112559076A (en) * | 2020-12-21 | 2021-03-26 | 支付宝(杭州)信息技术有限公司 | Tenant information processing method, device, system and equipment |
| CN112632124A (en) * | 2020-12-21 | 2021-04-09 | 浙江大华技术股份有限公司 | Multimedia information acquisition method, device, system, storage medium and electronic device |
| CN112965832A (en) * | 2021-02-18 | 2021-06-15 | 腾讯科技(深圳)有限公司 | Remote Procedure Call (RPC) service calling method and related device |
| CN112995165A (en) * | 2021-02-10 | 2021-06-18 | 北京金山云网络技术有限公司 | Resource access authentication method and device, storage medium and electronic equipment |
| CN113190529A (en) * | 2021-04-29 | 2021-07-30 | 电子科技大学 | Multi-tenant data sharing storage system suitable for MongoDB database |
| CN113992382A (en) * | 2021-10-22 | 2022-01-28 | 北京京东振世信息技术有限公司 | Service data processing method and device, electronic equipment and storage medium |
| CN114422492A (en) * | 2022-01-17 | 2022-04-29 | 星环信息科技(上海)股份有限公司 | Request forwarding method, device and storage medium |
| CN114546472A (en) * | 2022-02-22 | 2022-05-27 | 中国工商银行股份有限公司 | Configuration method, device, storage medium and electronic device for payment application |
| CN114826738A (en) * | 2022-04-26 | 2022-07-29 | 天工信创(广州)信息科技有限公司 | Multi-tenant realization method, processor and device based on SSO user system |
| CN115361370A (en) * | 2022-08-16 | 2022-11-18 | 中国银行股份有限公司 | Transaction processing method and device under microservice architecture |
| CN115529344A (en) * | 2021-06-24 | 2022-12-27 | 上海擎感智能科技有限公司 | E-commerce platform user information configuration method, system, electronic device and medium |
| CN116107547A (en) * | 2023-01-04 | 2023-05-12 | 三峡高科信息技术有限责任公司 | A method of unified service and multi-data source management |
| CN116204577A (en) * | 2023-05-04 | 2023-06-02 | 神州数码融信云技术服务有限公司 | Data export method and device, computer equipment and computer readable storage medium |
Citations (8)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20130031203A1 (en) * | 2011-07-28 | 2013-01-31 | Sap Ag | Managing consistent interfaces for communication system and object identifier mapping business objects across heterogeneous systems |
| US20170331812A1 (en) * | 2016-05-11 | 2017-11-16 | Oracle International Corporation | Microservices based multi-tenant identity and data security management cloud service |
| US20170373860A1 (en) * | 2016-06-24 | 2017-12-28 | General Electric Company | Routing cloud messages using digital certificates |
| US20180176176A1 (en) * | 2016-12-21 | 2018-06-21 | International Business Machines Corporation | Dns resolution of overlapping domains in a mutli-tenant computing environment |
| CN109951530A (en) * | 2019-02-27 | 2019-06-28 | 上海浪潮云计算服务有限公司 | A kind of Implementation Technology of multi-tenant mode |
| WO2020048391A1 (en) * | 2018-09-04 | 2020-03-12 | 京东数字科技控股有限公司 | Methods and apparatuses for deploying and invoking web services based on multi-tenancy technology |
| CN111090699A (en) * | 2019-12-13 | 2020-05-01 | 北京奇艺世纪科技有限公司 | Method and device for synchronizing service data, storage medium, and electronic device |
| CN111314491A (en) * | 2020-03-27 | 2020-06-19 | 北京尚医智信健康管理有限公司 | Cross-tenant data interaction method, apparatus, server cluster and medium |
-
2020
- 2020-06-28 CN CN202010599922.4A patent/CN111861140B/en active Active
Patent Citations (8)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20130031203A1 (en) * | 2011-07-28 | 2013-01-31 | Sap Ag | Managing consistent interfaces for communication system and object identifier mapping business objects across heterogeneous systems |
| US20170331812A1 (en) * | 2016-05-11 | 2017-11-16 | Oracle International Corporation | Microservices based multi-tenant identity and data security management cloud service |
| US20170373860A1 (en) * | 2016-06-24 | 2017-12-28 | General Electric Company | Routing cloud messages using digital certificates |
| US20180176176A1 (en) * | 2016-12-21 | 2018-06-21 | International Business Machines Corporation | Dns resolution of overlapping domains in a mutli-tenant computing environment |
| WO2020048391A1 (en) * | 2018-09-04 | 2020-03-12 | 京东数字科技控股有限公司 | Methods and apparatuses for deploying and invoking web services based on multi-tenancy technology |
| CN109951530A (en) * | 2019-02-27 | 2019-06-28 | 上海浪潮云计算服务有限公司 | A kind of Implementation Technology of multi-tenant mode |
| CN111090699A (en) * | 2019-12-13 | 2020-05-01 | 北京奇艺世纪科技有限公司 | Method and device for synchronizing service data, storage medium, and electronic device |
| CN111314491A (en) * | 2020-03-27 | 2020-06-19 | 北京尚医智信健康管理有限公司 | Cross-tenant data interaction method, apparatus, server cluster and medium |
Non-Patent Citations (2)
| Title |
|---|
| 胡彦婷: "云服务中的租户数据安全策略研究", 信息与电脑(理论版), 15 November 2016 (2016-11-15), pages 53 - 56 * |
| 解晓鹏, 中国优秀硕士学位论文全文数据库 (信息科技辑), pages 139 - 204 * |
Cited By (20)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN112527310A (en) * | 2020-12-15 | 2021-03-19 | 平安国际智慧城市科技股份有限公司 | Multi-tenant data isolation method and device, computer equipment and storage medium |
| CN112559076A (en) * | 2020-12-21 | 2021-03-26 | 支付宝(杭州)信息技术有限公司 | Tenant information processing method, device, system and equipment |
| CN112632124A (en) * | 2020-12-21 | 2021-04-09 | 浙江大华技术股份有限公司 | Multimedia information acquisition method, device, system, storage medium and electronic device |
| CN112559076B (en) * | 2020-12-21 | 2022-06-14 | 支付宝(杭州)信息技术有限公司 | Tenant information processing method, device, system and equipment |
| CN112995165A (en) * | 2021-02-10 | 2021-06-18 | 北京金山云网络技术有限公司 | Resource access authentication method and device, storage medium and electronic equipment |
| CN112995165B (en) * | 2021-02-10 | 2023-04-14 | 北京金山云网络技术有限公司 | Resource access authentication method and device, storage medium and electronic equipment |
| CN112965832A (en) * | 2021-02-18 | 2021-06-15 | 腾讯科技(深圳)有限公司 | Remote Procedure Call (RPC) service calling method and related device |
| CN112965832B (en) * | 2021-02-18 | 2023-09-26 | 腾讯科技(深圳)有限公司 | Remote Procedure Call (RPC) service calling method and related device |
| CN113190529A (en) * | 2021-04-29 | 2021-07-30 | 电子科技大学 | Multi-tenant data sharing storage system suitable for MongoDB database |
| CN113190529B (en) * | 2021-04-29 | 2023-09-19 | 电子科技大学 | Multi-tenant data sharing and storing system suitable for MongoDB database |
| CN115529344A (en) * | 2021-06-24 | 2022-12-27 | 上海擎感智能科技有限公司 | E-commerce platform user information configuration method, system, electronic device and medium |
| CN113992382B (en) * | 2021-10-22 | 2024-04-05 | 北京京东振世信息技术有限公司 | Service data processing method and device, electronic equipment and storage medium |
| CN113992382A (en) * | 2021-10-22 | 2022-01-28 | 北京京东振世信息技术有限公司 | Service data processing method and device, electronic equipment and storage medium |
| CN114422492A (en) * | 2022-01-17 | 2022-04-29 | 星环信息科技(上海)股份有限公司 | Request forwarding method, device and storage medium |
| CN114422492B (en) * | 2022-01-17 | 2023-12-12 | 星环信息科技(上海)股份有限公司 | Request forwarding method, device and storage medium |
| CN114546472A (en) * | 2022-02-22 | 2022-05-27 | 中国工商银行股份有限公司 | Configuration method, device, storage medium and electronic device for payment application |
| CN114826738A (en) * | 2022-04-26 | 2022-07-29 | 天工信创(广州)信息科技有限公司 | Multi-tenant realization method, processor and device based on SSO user system |
| CN115361370A (en) * | 2022-08-16 | 2022-11-18 | 中国银行股份有限公司 | Transaction processing method and device under microservice architecture |
| CN116107547A (en) * | 2023-01-04 | 2023-05-12 | 三峡高科信息技术有限责任公司 | A method of unified service and multi-data source management |
| CN116204577A (en) * | 2023-05-04 | 2023-06-02 | 神州数码融信云技术服务有限公司 | Data export method and device, computer equipment and computer readable storage medium |
Also Published As
| Publication number | Publication date |
|---|---|
| CN111861140B (en) | 2024-08-09 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| CN111861140B (en) | Service processing method and device, storage medium and electronic device | |
| CN111488595B (en) | Method for realizing authority control and related equipment | |
| US12041058B2 (en) | Systems and methods for automated cloud provisioning | |
| US9426142B2 (en) | Systems and methods for logging into an application on a second domain from a first domain in a multi-tenant database system environment | |
| US12095621B2 (en) | Managed remediation of non-compliant resources | |
| US9077717B2 (en) | Propagation and adoption of extensions across applications in networked solutions | |
| US11392873B2 (en) | Systems and methods for simulating orders and workflows in an order entry and management system to test order scenarios | |
| US11228509B2 (en) | Orchestrated hybrid cloud system for data processing | |
| US10972564B2 (en) | System and method for automating actions in distributed computing | |
| US20120290545A1 (en) | Collection of intranet activity data | |
| JP7593726B2 (en) | Blockchain management of provisioning failures | |
| US20140115184A1 (en) | Remotely managing enterprise resources | |
| US20230010219A1 (en) | Configuring a software as-a-service platform for remotely managing a cloud application | |
| US12189813B2 (en) | Multiple synonymous identifiers in data privacy integration protocols | |
| US9870542B2 (en) | Managing information technology solution centers | |
| US11582345B2 (en) | Context data management interface for contact center | |
| CN113421052A (en) | Data sharing management method, system and computer readable storage medium | |
| US20190171842A1 (en) | Extensibility tools for defining custom restriction rules in access control | |
| US11381665B2 (en) | Tracking client sessions in publish and subscribe systems using a shared repository | |
| CN107046581A (en) | A kind of monitoring method, device and the server of service operation state | |
| US11556402B2 (en) | Metadata plane for application programming interface | |
| CN118055000A (en) | Method and device for generating warning information, storage medium and electronic device | |
| US8468121B1 (en) | Resolving resource time intervals in a distributed system | |
| KR20210050827A (en) | An extraction-system using dispersion deep learning information analysis management based cloud and method of it | |
| US20240305653A1 (en) | Controls for cloud computing environment |
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 |