CN112799682A - Data acquisition and processing system and method for operating multi-version application thereof - Google Patents

Data acquisition and processing system and method for operating multi-version application thereof Download PDF

Info

Publication number
CN112799682A
CN112799682A CN202110391843.9A CN202110391843A CN112799682A CN 112799682 A CN112799682 A CN 112799682A CN 202110391843 A CN202110391843 A CN 202110391843A CN 112799682 A CN112799682 A CN 112799682A
Authority
CN
China
Prior art keywords
application service
sub
service request
application
server
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
Application number
CN202110391843.9A
Other languages
Chinese (zh)
Other versions
CN112799682B (en
Inventor
杨涛
陈诚
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hangzhou Taimei Xingcheng Pharmaceutical Technology Co Ltd
Original Assignee
Hangzhou Taimei Xingcheng Pharmaceutical Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hangzhou Taimei Xingcheng Pharmaceutical Technology Co Ltd filed Critical Hangzhou Taimei Xingcheng Pharmaceutical Technology Co Ltd
Priority to CN202110391843.9A priority Critical patent/CN112799682B/en
Publication of CN112799682A publication Critical patent/CN112799682A/en
Application granted granted Critical
Publication of CN112799682B publication Critical patent/CN112799682B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • G06F8/71Version control; Configuration management

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Stored Programmes (AREA)

Abstract

The invention provides a data acquisition and processing system and a method for operating multi-version application thereof, wherein the system comprises a reverse server, a gateway, a server and a registration center, and the method comprises the following steps: configuring different instances of the application service at a server side, wherein each instance corresponds to one version of the application service, and defining the instances of each version of the application service as belonging to one or more sub-environments; an application provides one or more application services; adding identification information of different instances to a registration center, wherein the identification information of the instances comprises sub-environment information to which the instances belong; the reverse server receives the application service request and classifies and forwards the application service request according to the sub-environment information; forwarding the dynamic service request to the gateway; the gateway receives the request and acquires the identification information of the corresponding instance from the registration center according to the sub-environment information; and the gateway forwards the request to a sub-environment corresponding to the server side for processing according to the acquired identification information.

Description

Data acquisition and processing system and method for operating multi-version application thereof
Technical Field
The present invention relates to the field of information technology, and in particular, to a data acquisition and processing system, a method for operating a multi-version application thereof, and a computer-readable medium.
Background
In a SaaS (Software-as-a-Service) scenario, generally, all users of a tenant (e.g., an enterprise) use the same version of application, and can control the entry of multi-version application according to the version of a user client. Often, all users of the same tenant need to maintain the same version, different versions are distinguished among different tenants, and version control needs to be performed based on the tenants.
The traditional method needs to deploy a plurality of development environments for parallel application functions, and related application services need to be redeployed no matter whether changed or not, and are physically isolated, so that the cost is high, and the system deployment and maintenance are complex.
Disclosure of Invention
The technical problem to be solved by the invention is to provide a data acquisition and processing system and a method for operating multi-version application thereof, so that convenient and efficient operation, development and use of multi-version application services are realized.
In order to solve the technical problem, the invention provides a method for operating multi-version application by a data acquisition and processing system, wherein the system comprises a reverse server, a gateway, a server and a registration center, and the method comprises the following steps: configuring different instances of application services at a server, wherein each instance corresponds to one version of one application service, and defining the instances of each version of the application services as belonging to one or more sub-environments; wherein an application provides one or more application services; adding the identification information of the different instances to the registry, wherein the identification information of the instances comprises the sub-environment information to which the instances belong; the reverse server receives an application service request, and classifies and forwards the application service request according to the sub-environment information acquired from the application service request; forwarding a dynamic service request in the application service requests to the gateway; the gateway receives the dynamic service request and acquires the identification information of the corresponding application service instance from the registration center according to the sub-environment information of the application service; and the gateway forwards the dynamic service request to a sub-environment corresponding to the server for processing according to the acquired identification information of the application service instance.
In one embodiment of the invention, the system further comprises a static resource server comprising a plurality of static resources, one static resource corresponding to one version of the application service, each static resource being defined as belonging to one or more sub-environments.
In an embodiment of the present invention, the application service request further includes a static service request, and for a static service request in the application service request, the reverse server forwards the static service request to a sub-environment corresponding to the static resource server according to sub-environment information obtained from the application service request for processing.
In an embodiment of the invention, the static resource comprises a static page resource, and the static page comprises a page in html format or js format.
In an embodiment of the present invention, the receiving, by the reverse server, the application service request, and classifying and forwarding the application service request according to the sub-environment information acquired from the application service request includes: the reverse server receives an application service request sent by a user side, wherein the application service request comprises domain name information; when the application service request also comprises the required sub-environment information, the reverse server directly classifies and forwards the application service request; the required sub-environment information is configured in advance in a user management module of the data acquisition and processing system; when the application service request comprises domain name information which is sub domain name information and does not comprise required sub environment information, the sub domain name information is analyzed through a script program to obtain the sub environment information required by the application service request, and the reverse server classifies and forwards the application service request according to the sub environment information required by the application service request.
In an embodiment of the invention, the service registration and discovery framework between the registry and the server comprises Eureka, Consul or Zookeeper.
In an embodiment of the present invention, the different instances send their identification information to the registry, and the identification information of the instance including its affiliated sub-environment information includes: when the service registration and discovery framework includes Eureka, different instances of sub-context information are added to the metadata at the registry side of the framework.
In an embodiment of the present invention, after adding the identification information of the different instance to the registry, the identification information of the instance including the sub-environment information to which the instance belongs, the method further includes:
and setting the polling rule of registering and discovering the application service instance by the registry as the prior discovery of the application service instance according to the sub-environment information specified in the application service request.
In an embodiment of the present invention, when the set polling rule preferentially finds the instance of the application service according to the sub-environment information specified in the application service request, if the instance of the application service corresponding to the specified sub-environment information cannot be found, the application service request is routed to the application service instance of the default version.
In an embodiment of the invention, the reverse server comprises Nginx or Apache.
In an embodiment of the present invention, when the reverse server includes nginnx, the script program includes a Lua script program.
In an embodiment of the invention, the data collecting and processing system comprises a medical data collecting and processing system, and each of the applications corresponds to a service function of the medical data collecting and processing system.
The invention also provides a data acquisition and processing system for running multi-version application, which comprises a reverse server, a gateway, a server and a registration center, wherein: the server is configured to include different instances of application services, each instance corresponding to a version of an application service, the instances of each version of the application service being defined as belonging to one or more sub-environments; wherein an application provides one or more application services; the registry is configured to include identification information of the different instances, the identification information of the instances including sub-environment information to which the instances belong; the reverse server is configured to receive an application service request and classify and forward the application service request according to the sub-environment information acquired from the reverse server; forwarding a dynamic service request in the application service requests to the gateway; the gateway is configured to receive the dynamic service request and acquire identification information of a corresponding application service instance from the registry according to the sub-environment information of the application service; the gateway is further configured to forward the dynamic service request to a sub-environment corresponding to the server for processing according to the acquired identification information of the application service instance.
The invention also provides a computer-readable medium having stored thereon computer program code which, when executed by a processor, implements a method as described above.
Compared with the prior art, the invention has the following advantages: developing and setting sub-environments of a reverse server, a gateway, a registration center, a server and a request end sent by a user of the system, and running the instances of the application services of different versions in the sub-environments of the system; when part of application services in the data acquisition and processing system provide new versions, the data acquisition and processing system can still operate under the original system hardware condition without reconfiguring a whole set of system with new physical resources, and the efficient and convenient operation of the data acquisition system is realized.
Drawings
The accompanying drawings, which are included to provide a further understanding of the invention and are incorporated in and constitute a part of this application, illustrate embodiment(s) of the invention and together with the description serve to explain the principle of the invention. In the drawings:
FIG. 1 is a flow chart of a method for a data collection and processing system to run multi-version applications in accordance with one embodiment of the present invention.
Fig. 2 is a schematic diagram of a data acquisition and processing system for running multi-version applications according to an embodiment of the present invention.
Fig. 3 is a schematic diagram of a data acquisition and processing system running a multi-version application according to another embodiment of the present invention.
Detailed Description
In order to make the aforementioned objects, features and advantages of the present invention comprehensible, embodiments accompanied with figures are described in detail below.
In the following description, numerous specific details are set forth in order to provide a thorough understanding of the present invention, but the present invention may be practiced in other ways than those specifically described herein, and thus the present invention is not limited to the specific embodiments disclosed below.
As used herein, the terms "a," "an," "the," and/or "the" are not intended to be inclusive and include the plural unless the context clearly dictates otherwise. In general, the terms "comprises" and "comprising" merely indicate that steps and elements are included which are explicitly identified, that the steps and elements do not form an exclusive list, and that a method or apparatus may include other steps or elements.
Flow charts are used herein to illustrate operations performed by systems according to embodiments of the present application. It should be understood that the preceding or following operations are not necessarily performed in the exact order in which they are performed. Rather, various steps may be processed in reverse order or simultaneously. Meanwhile, other operations are added to or removed from these processes.
Embodiments of the present invention describe a method of a data acquisition and processing system running a multi-version application, and a computer readable medium having computer program code stored thereon.
FIG. 1 is a flow chart of a method for a data collection and processing system to run multi-version applications in accordance with one embodiment of the present invention.
In one embodiment, the data acquisition and processing system comprises a reverse server, a gateway, a server and a registration center. The various parts of the system may be connected by a network. Fig. 2 is a schematic diagram of a data acquisition and processing system for running multi-version applications according to an embodiment of the present invention.
Fig. 3 is a schematic diagram of a data acquisition and processing system running a multi-version application according to another embodiment of the present invention. As illustrated in fig. 3, the system may also include a static resource server.
As shown in fig. 1, a method for running multi-version application by a data collection and processing system includes, step 101, configuring different instances of an application service at a server, each instance corresponding to one version of an application service, and defining the instances of each version of the application service as belonging to one or more sub-environments; wherein an application provides one or more application services. And 102, adding the identification information of the different instances to the registration center, wherein the identification information of the instances comprises the sub-environment information to which the instances belong. 103, the reverse server receives an application service request, and classifies and forwards the application service request according to the sub-environment information acquired from the application service request; forwarding dynamic service requests in the application service requests to the gateway. And 104, the gateway receives the dynamic service request and acquires the identification information of the corresponding application service instance from the registration center according to the sub-environment information of the application service. And 105, the gateway forwards the dynamic service request to a sub-environment corresponding to the server for processing according to the acquired identification information of the application service instance.
In one embodiment, the data collection and processing system comprises a medical data collection and processing system, each of the applications may correspond to a business function of the medical data collection and processing system, and the business functions of the medical data collection and processing system include, for example, clinical trial medication management and usage electronic data collection, medication alert electronic data collection, clinical trial subject flow management electronic data collection, medical examination verification and assay data collection and processing, and the like.
In step 101, the server includes, for example, a plurality of servers, and the number of the servers can be configured and expanded according to requirements. Different instances of an application service are configured at a server, each instance corresponding to a version of an application service, and an instance of each version of the application service is defined as belonging to one or more Sub-environments (SubEnv). An application provides one or more application services. As mentioned above, an application may correspond to a business function of the system. An application may provide a variety of application services. For example, the application of data collection and processing for medical examination and test can provide different application services for users of the system according to different data types and/or different standards for examination and test. An application service may include different instances, each of which may correspond to a version of an application service. Different versions of the application service can be optimized and updated for business logic, forming different instances accordingly.
In step 102, the identification information of the different instances is added to the registry, and the identification information of the instances comprises the sub-environment information to which the instances belong. The registry comprises, for example, a server.
In one embodiment, the service registration and discovery framework between the registry and the server comprises Eureka, Consul or Zookeeper.
Eureka is a service discovery framework, which is a REST (Representational State Transfer) based service, and is mainly used for positioning middle-layer services to achieve the purposes of load balancing and middle-layer service failover.
When the service registration and discovery framework includes Eureka, sub-context information of different instances is added in metadata (metadata) of a registry side of the framework.
In step 103, the reverse server receives the application service request, and classifies and forwards the application service request according to the sub-environment information obtained from the application service request; forwarding dynamic service requests of the application service requests to the Gateway (Gateway). The gateway may comprise a server. The symbol R in fig. 2 and 3 refers to an application service request.
The reverse proxy is in the opposite direction to the forward proxy, and refers to a server that performs a reverse proxy service, in which an external network user makes requests to an internal server and forwards the requests to a server on the internal network, and then returns a response obtained from the internal server to a client requesting connection.
In step 104, the gateway receives the dynamic service request, and obtains the identification information of the corresponding application service instance from the registry according to the sub-environment information of the application service. The identification information of the instance of the application service may include basic information and sub-environment information to which it belongs. The basic information may include, for example, the location identification of the server on which the instance is running, such as a hostname, an IP address, and a port number. The sub-environment information of the instance can also correspond to different versions of the instance, namely different versions of the application service.
In step 105, the gateway forwards the dynamic service request to a sub-environment corresponding to the server for processing according to the obtained identification information of the application service instance. And forwarding the dynamic service request to a sub-environment corresponding to the server for processing, specifically, running an instance of a corresponding version of the application service to respond to the dynamic service request.
In order to make the discovery and corresponding process of the application service based on the sub-environment information, in some embodiments, after adding the identification information of the different instances to the registry, the identification information of the instances including the sub-environment information to which the instances belong, the method further includes: setting a polling rule for the registry to register and discover the instance of the application service as: and preferably discovering the instance of the application service according to the sub-environment information specified in the application service request. During service polling, the versions of the application services responding to different application service requests are preferentially determined according to the sub-environment information, specifically, the versions of the instances included by the application services.
When the set polling rule preferentially finds the application service instance according to the sub-environment information appointed in the application service request, if the application service instance corresponding to the appointed sub-environment information cannot be found, the application service request is routed (Route) to the application service instance of the default version.
In some embodiments, the system further comprises a static resource server comprising a plurality of static resources, one static resource corresponding to one version of the application service, each static resource defined as belonging to one or more sub-environments. The static resources comprise static page resources, and the static pages comprise pages in html format or js format, and the pages can be displayed in a browser at a Web end for use or interaction. As illustrated in FIG. 2, in an embodiment, static resources may also be deployed on the reverse server.
In an embodiment, the application service request further includes a static service request, and for a static service request in the application service request, the reverse server forwards the static service request to a sub-environment corresponding to the static resource server for processing according to sub-environment information acquired from the application service request.
In some embodiments, the reverse server receiving an application service request and classifying and forwarding the application service request according to the sub-environment information obtained therefrom comprises:
the reverse server receives an application service request sent by a user side, wherein the application service request comprises domain name information;
when the application service request also comprises the required sub-environment information, the reverse server directly classifies and forwards the application service request; the required sub-environment information is configured in advance in a user management module of the data acquisition and processing system;
when the application service request comprises domain name information which is sub domain name information and does not comprise required sub environment information, the sub domain name information is analyzed through a script program to obtain the sub environment information required by the application service request, and the reverse server classifies and forwards the application service request according to the sub environment information required by the application service request.
The user management module comprises, for example, the tenant using the data acquisition and processing system, and more particularly, the medical data acquisition and processing system, and the specific role of the tenant may be an organizer, participant, implementer and/or administrator of a clinical trial or a drug alert, and the like. There may be, for example, multiple different accounts under the same tenant (e.g., enterprise user) to log on and use the system.
The sub-environment information is configured in advance in a user management module of the data acquisition and processing system, for example, a new version of a part of services of the system applicable to data acquisition and processing is developed, and when a small-scale test is performed for testing, the sub-environment information of the application service available to the user can be configured in the user management module according to the user requirement, so that when the reverse server receives the application service request, the application service request can be classified and forwarded according to the sub-environment information in the application service request. The application service request from the user may be transmitted via http protocol to the reverse server, and the sub-context information is for example included in an http header, and the reverse server may forward this information directly to the gateway.
In some embodiments, when the application service request includes domain name information that is sub-domain name information and does not include required sub-environment information, the sub-domain name information is analyzed by a script program to obtain the sub-environment information required by the application service request, and the reverse server classifies and forwards the application service request according to the sub-environment information required by the application service request. This scenario may be the manner in which a developer of the system is developing and testing the system. Different sub-domain name information can be, for example, "real.
In an embodiment, the reverse server may comprise Nginx or Apache. Nginx (engine x) is an HTTP and reverse proxy web server. Apache HTTP Server (Apache for short) is a web Server with open source code, can run in most computer operating systems, and can compile interpreters such as Perl/Python into the Server through simple API extension.
When the reverse server includes Nginx, the script program includes a Lua script program. The Lua script can be called by C/C + + codes and can also call C/C + + functions in reverse, so that the Lua can be widely applied to application programs, and not only can be used as an extension script, but also can be used as a common configuration file.
In some embodiments, different application services of the service end may also call each other, for example, data transfer and function call between different application services are realized. This is also indicated in fig. 2 and 3 by the arrow connection between the application services.
The invention also provides a data acquisition and processing system for running multi-version application, which comprises a reverse server, a gateway, a server and a registration center.
As mentioned above, fig. 2 is a schematic diagram of a data acquisition and processing system for running multi-version applications according to an embodiment of the present invention.
Fig. 3 is a schematic diagram of a data acquisition and processing system running a multi-version application according to another embodiment of the present invention. As illustrated in fig. 3, the system may also include a static resource server.
In some embodiments, the server is configured to include different instances of an application service, each instance corresponding to a version of an application service, the instances of each version of the application service being defined as belonging to one or more sub-environments; wherein an application provides one or more application services. The server side comprises a plurality of servers, and the number of the servers can be configured and expanded according to requirements.
The registry is configured to include identification information of the different instances, the identification information of the instances including sub-context information to which it belongs. The registry comprises, for example, a server.
The reverse server is configured to receive an application service request and classify and forward the application service request according to the sub-environment information acquired from the reverse server; forwarding dynamic service requests in the application service requests to the gateway. The gateway may comprise a server.
The gateway is configured to receive the dynamic service request and obtain identification information of the corresponding application service instance from the registry according to the sub-environment information of the application service.
The gateway is further configured to forward the dynamic service request to a sub-environment corresponding to the server for processing according to the acquired identification information of the application service instance. A more specific implementation of the system functionality is described above.
The data acquisition and processing system and the method for operating the multi-version application thereof enable part of application services in the data acquisition and processing system to still operate under the original system hardware condition when providing new versions, and do not need to reconfigure a whole set of system with new physical resources and comprising various server facilities, thereby saving the development and operation cost of the system and realizing the efficient and convenient operation of the system. Specifically, the sub-environment is developed and set for a reverse server, a gateway, a registration center, a server and a request end sent by a user of the system, and the instance of the application service of the new version is operated in the sub-environment of the system.
Meanwhile, when part of the application services provide a new version for testing or running, other applications without the new version can still run continuously and can be reused as a part of the overall function of the system; and the application services provided with the new version are partially operated in the sub-environment, so that the system with complete functions can be still formed with other applications without the new version for operation, use, test, debugging and the like.
The method for operating the multi-version application by the data acquisition and processing system can be implemented as a computer program, stored in a memory, and transmitted to a processor for execution, so as to implement the method for operating the multi-version application by the data acquisition and processing system in the present application.
The method by which the data acquisition and processing system runs a multi-version application, when implemented as a computer program, may also be stored as an article of manufacture in a computer readable storage medium. For example, computer-readable storage media can include but are not limited to magnetic storage devices (e.g., hard disk, floppy disk, magnetic strips), optical disks (e.g., Compact Disk (CD), Digital Versatile Disk (DVD)), smart cards, and flash memory devices (e.g., electrically Erasable Programmable Read Only Memory (EPROM), card, stick, key drive). In addition, various storage media described herein can represent one or more devices and/or other machine-readable media for storing information. The term "machine-readable medium" can include, without being limited to, wireless channels and various other media (and/or storage media) capable of storing, containing, and/or carrying code and/or instructions and/or data.
It should be understood that the above-described embodiments are illustrative only. The embodiments described herein may be implemented in hardware, software, firmware, middleware, microcode, or any combination thereof. For a hardware implementation, the processing units may be implemented within one or more Application Specific Integrated Circuits (ASICs), Digital Signal Processors (DSPs), Digital Signal Processing Devices (DSPDs), Programmable Logic Devices (PLDs), Field Programmable Gate Arrays (FPGAs), processors, controllers, micro-controllers, microprocessors, and/or other electronic units designed to perform the functions described herein, or a combination thereof.
Having thus described the basic concept, it will be apparent to those skilled in the art that the foregoing disclosure is by way of example only, and is not intended to limit the present application. Various modifications, improvements and adaptations to the present application may occur to those skilled in the art, although not explicitly described herein. Such modifications, improvements and adaptations are proposed in the present application and thus fall within the spirit and scope of the exemplary embodiments of the present application.
Also, this application uses specific language to describe embodiments of the application. Reference throughout this specification to "one embodiment," "an embodiment," and/or "some embodiments" means that a particular feature, structure, or characteristic described in connection with at least one embodiment of the present application is included in at least one embodiment of the present application. Therefore, it is emphasized and should be appreciated that two or more references to "an embodiment" or "one embodiment" or "an alternative embodiment" in various places throughout this specification are not necessarily all referring to the same embodiment. Furthermore, some features, structures, or characteristics of one or more embodiments of the present application may be combined as appropriate.
Aspects of the present application may be embodied entirely in hardware, entirely in software (including firmware, resident software, micro-code, etc.) or in a combination of hardware and software. The above hardware or software may be referred to as "data block," module, "" engine, "" unit, "" component, "or" system. The processor may be one or more Application Specific Integrated Circuits (ASICs), Digital Signal Processors (DSPs), digital signal processing devices (DAPDs), Programmable Logic Devices (PLDs), Field Programmable Gate Arrays (FPGAs), processors, controllers, microcontrollers, microprocessors, or a combination thereof. Furthermore, aspects of the present application may be represented as a computer product, including computer readable program code, embodied in one or more computer readable media. For example, computer-readable media may include, but are not limited to, magnetic storage devices (e.g., hard disk, floppy disk, magnetic strips … …), optical disks (e.g., Compact Disk (CD), Digital Versatile Disk (DVD) … …), smart cards, and flash memory devices (e.g., card, stick, key drive … …).
The computer readable medium may comprise a propagated data signal with the computer program code embodied therein, for example, on a baseband or as part of a carrier wave. The propagated signal may take any of a variety of forms, including electromagnetic, optical, and the like, or any suitable combination. The computer readable medium can be any computer readable medium that can communicate, propagate, or transport the program for use by or in connection with an instruction execution system, apparatus, or device. Program code on a computer readable medium may be propagated over any suitable medium, including radio, electrical cable, fiber optic cable, radio frequency signals, or the like, or any combination of the preceding.
Similarly, it should be noted that in the preceding description of embodiments of the application, various features are sometimes grouped together in a single embodiment, figure, or description thereof for the purpose of streamlining the disclosure aiding in the understanding of one or more of the embodiments. This method of disclosure, however, is not intended to require more features than are expressly recited in the claims. Indeed, the embodiments may be characterized as having less than all of the features of a single embodiment disclosed above.
Having thus described the basic concept, it will be apparent to those skilled in the art that the foregoing disclosure is by way of example only, and is not intended to limit the present application. Various modifications, improvements and adaptations to the present application may occur to those skilled in the art, although not explicitly described herein. Such modifications, improvements and adaptations are proposed in the present application and thus fall within the spirit and scope of the exemplary embodiments of the present application.

Claims (19)

1. A method for operating multi-version application by a data acquisition and processing system, wherein the system comprises a reverse server, a gateway, a server and a registration center, and the method comprises the following steps:
configuring different instances of application services at a server, wherein each instance corresponds to one version of one application service, and defining the instances of each version of the application services as belonging to one or more sub-environments; wherein an application provides one or more application services;
adding the identification information of the different instances to the registry, wherein the identification information of the instances comprises the sub-environment information to which the instances belong;
the reverse server receives an application service request, and classifies and forwards the application service request according to the sub-environment information acquired from the application service request; forwarding a dynamic service request in the application service requests to the gateway;
the gateway receives the dynamic service request and acquires the identification information of the corresponding application service instance from the registration center according to the sub-environment information of the application service;
and the gateway forwards the dynamic service request to a sub-environment corresponding to the server for processing according to the acquired identification information of the application service instance.
2. The data collection and processing system of claim 1, further comprising a static resource server, the static resource server comprising a plurality of static resources, one static resource corresponding to a version of an application service, each static resource defined as belonging to one or more sub-environments.
3. The method for running multi-version applications in a data collection and processing system of claim 2, wherein the application service request further comprises a static service request, and for a static service request in the application service request, the reverse server forwards the static service request to a sub-environment corresponding to the static resource server for processing according to sub-environment information obtained from the application service request.
4. The data collection and processing system of claim 2, wherein the static resources comprise static page resources, and wherein the static pages comprise pages in the html format or js format.
5. The method of claim 1, wherein the reverse server receiving an application service request and classifying and forwarding the application service request according to the sub-environment information obtained therefrom comprises:
the reverse server receives an application service request sent by a user side, wherein the application service request comprises domain name information;
when the application service request also comprises the required sub-environment information, the reverse server directly classifies and forwards the application service request; the required sub-environment information is configured in advance in a user management module of the data acquisition and processing system;
when the application service request comprises domain name information which is sub domain name information and does not comprise required sub environment information, the sub domain name information is analyzed through a script program to obtain the sub environment information required by the application service request, and the reverse server classifies and forwards the application service request according to the sub environment information required by the application service request.
6. The data collection and processing system for running multi-version applications of claim 1, wherein the service registration and discovery framework between the registry and the server comprises Eureka, Consul, or Zookeeper.
7. The method of claim 6, wherein the different instances send their identification information to the registry, the identification information of the instance including its associated sub-environment information comprising:
when the service registration and discovery framework includes Eureka, different instances of sub-context information are added to the metadata at the registry side of the framework.
8. The method for running multi-version applications in a data collection and processing system of claim 1, wherein after adding identification information of the different instances to the registry, the identification information of the instances including sub-environment information to which the instances belong, further comprises:
and setting the polling rule of registering and discovering the application service instance by the registry as the prior discovery of the application service instance according to the sub-environment information specified in the application service request.
9. The method of claim 8, wherein when the set polling rule preferentially finds the instance of the application service according to the sub-environment information specified in the application service request, if the instance of the application service corresponding to the specified sub-environment information cannot be found, the application service request is routed to the application service instance of a default version.
10. The data acquisition and processing system of claim 1, wherein the reverse server comprises Nginx or Apache.
11. The data collection and processing system of claim 5, wherein the script program comprises a Lua script program when the reverse server comprises Nginx.
12. The method of claim 1, wherein said data acquisition and processing system comprises a medical data acquisition and processing system, each of said applications corresponding to a business function of said medical data acquisition and processing system.
13. A data acquisition and processing system for running multi-version applications, the system comprising a reverse server, a gateway, a server and a registry, wherein:
the server is configured to include different instances of application services, each instance corresponding to a version of an application service, the instances of each version of the application service being defined as belonging to one or more sub-environments; wherein an application provides one or more application services;
the registry is configured to include identification information of the different instances, the identification information of the instances including sub-environment information to which the instances belong;
the reverse server is configured to receive an application service request and classify and forward the application service request according to the sub-environment information acquired from the reverse server; forwarding a dynamic service request in the application service requests to the gateway;
the gateway is configured to receive the dynamic service request and acquire identification information of a corresponding application service instance from the registry according to the sub-environment information of the application service;
the gateway is further configured to forward the dynamic service request to a sub-environment corresponding to the server for processing according to the acquired identification information of the application service instance.
14. A data acquisition and processing system for running multi-version applications according to claim 13, further comprising a static resource server comprising a plurality of static resources, one static resource corresponding to one version of an application service, each static resource being defined as belonging to one or more sub-environments.
15. The data collection and processing system according to claim 14, wherein the application service request further includes a static service request, and for a static service request in the application service request, the reverse server forwards the static service request to a sub-environment corresponding to the static resource server for processing according to sub-environment information obtained from the application service request.
16. The data collection and processing system for running multi-version applications of claim 13, wherein the reverse server is configured to receive application service requests and to classify and forward the application service requests according to the sub-environment information obtained therefrom comprises:
the reverse server is configured to receive an application service request sent by a user side, wherein the application service request comprises domain name information;
when the application service request also comprises the required sub-environment information, the reverse server directly classifies and forwards the application service request; the required sub-environment information is configured in advance in a user management module of the data acquisition and processing system;
when the application service request comprises domain name information which is sub domain name information and does not comprise required sub environment information, the sub domain name information is analyzed through a script program to obtain the sub environment information required by the application service request, and the reverse server classifies and forwards the application service request according to the sub environment information required by the application service request.
17. The data collection and processing system for running multiple versions of an application of claim 13, wherein the polling rules for registry registration and discovery of instances of the application services are set to prioritize discovery of instances of the application services based on sub-context information specified in the application service request.
18. The system according to claim 17, wherein when the set polling rule preferentially finds the instance of the application service according to the sub-environment information specified in the application service request, if the instance of the application service corresponding to the specified sub-environment information cannot be found, the application service request is routed to the application service instance of a default version.
19. A computer-readable medium having stored thereon computer program code which, when executed by a processor, implements the method of any of claims 1-12.
CN202110391843.9A 2021-04-13 2021-04-13 Data acquisition and processing system and method for operating multi-version application thereof Active CN112799682B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110391843.9A CN112799682B (en) 2021-04-13 2021-04-13 Data acquisition and processing system and method for operating multi-version application thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110391843.9A CN112799682B (en) 2021-04-13 2021-04-13 Data acquisition and processing system and method for operating multi-version application thereof

Publications (2)

Publication Number Publication Date
CN112799682A true CN112799682A (en) 2021-05-14
CN112799682B CN112799682B (en) 2021-06-29

Family

ID=75816903

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110391843.9A Active CN112799682B (en) 2021-04-13 2021-04-13 Data acquisition and processing system and method for operating multi-version application thereof

Country Status (1)

Country Link
CN (1) CN112799682B (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114461296A (en) * 2021-12-29 2022-05-10 天翼云科技有限公司 OpenResty-based service platform development and access method

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106789250A (en) * 2016-12-22 2017-05-31 焦点科技股份有限公司 A kind of service multi version based on container coexists implementation method
CN107092489A (en) * 2017-04-13 2017-08-25 中国联合网络通信集团有限公司 The processing method and system issued based on application version
CN107172060A (en) * 2017-06-06 2017-09-15 武汉票据交易中心有限公司 A kind of login method of client container
US9921827B1 (en) * 2013-06-25 2018-03-20 Amazon Technologies, Inc. Developing versions of applications based on application fingerprinting
CN110602043A (en) * 2019-08-08 2019-12-20 中腾信金融信息服务(上海)有限公司 API gateway implementation system and method for mobile application
CN111970198A (en) * 2020-08-13 2020-11-20 北京金山云网络技术有限公司 Service routing method, device, electronic equipment and medium
US10853055B2 (en) * 2014-09-24 2020-12-01 Oracle International Corporation System and method for supporting patching in a multitenant application server environment

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9921827B1 (en) * 2013-06-25 2018-03-20 Amazon Technologies, Inc. Developing versions of applications based on application fingerprinting
US10853055B2 (en) * 2014-09-24 2020-12-01 Oracle International Corporation System and method for supporting patching in a multitenant application server environment
CN106789250A (en) * 2016-12-22 2017-05-31 焦点科技股份有限公司 A kind of service multi version based on container coexists implementation method
CN107092489A (en) * 2017-04-13 2017-08-25 中国联合网络通信集团有限公司 The processing method and system issued based on application version
CN107172060A (en) * 2017-06-06 2017-09-15 武汉票据交易中心有限公司 A kind of login method of client container
CN110602043A (en) * 2019-08-08 2019-12-20 中腾信金融信息服务(上海)有限公司 API gateway implementation system and method for mobile application
CN111970198A (en) * 2020-08-13 2020-11-20 北京金山云网络技术有限公司 Service routing method, device, electronic equipment and medium

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
ANDIS ARINS等: "Blockchain based Inter-domain Latency Aware Routing Proposal in Software Defined Network", 《 2018 IEEE 6TH WORKSHOP ON ADVANCES IN INFORMATION, ELECTRONIC AND ELECTRICAL ENGINEERING (AIEEE)》 *
朱玉豆: "万达云服务平台中API网关软件的设计与实现", 《中国优秀硕士学位论文全文数据库》 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114461296A (en) * 2021-12-29 2022-05-10 天翼云科技有限公司 OpenResty-based service platform development and access method
CN114461296B (en) * 2021-12-29 2024-01-02 天翼云科技有限公司 Openresty-based service platform development and access method

Also Published As

Publication number Publication date
CN112799682B (en) 2021-06-29

Similar Documents

Publication Publication Date Title
CN112118565B (en) Multi-tenant service gray level publishing method, device, computer equipment and storage medium
US11159411B2 (en) Distributed testing service
US10452372B2 (en) Method and deployment module for managing a container to be deployed on a software platform
EP3317762B1 (en) Methods and apparatus for software lifecycle management of a virtual computing environment
JP7360395B2 (en) Input and output schema mapping
CN111814177A (en) Multi-tenant data processing method, device, equipment and system based on micro-service
CN110865867A (en) Method, device and system for discovering application topological relation
CN111182089B (en) Container cluster system, method and device for accessing big data assembly and server
CN107210924B (en) Method and apparatus for configuring a communication system
WO2012000999A1 (en) Configuring a computer system for a software package installation
US10721120B2 (en) Infrastructure management device
CN112565443A (en) Internet of things data analysis method, device, equipment and storage medium
CN109831466B (en) Micro-service business processing method and nginx server
US20140089383A1 (en) Method and system for automatic detecting and resolving apis
CN112866017A (en) Method, system, medium and device for configuring BMC IP address of bare metal server
CN110365724A (en) Task processing method, device and electronic equipment
CN109104368B (en) Connection request method, device, server and computer readable storage medium
CN112799682B (en) Data acquisition and processing system and method for operating multi-version application thereof
US11831485B2 (en) Providing selective peer-to-peer monitoring using MBeans
US20200311003A1 (en) Infrastructure management device
CN112596897A (en) Method and system for multi-tenant isolation
WO2017004269A1 (en) Methods and apparatus for software lifecycle management of a virtual computing environment
CN111858079B (en) Distributed lock migration method and device, electronic equipment and storage medium
US20110055816A1 (en) Method to derive software use and software data object use characteristics by analyzing attributes of related files
US10394628B1 (en) In-line event handlers across domains

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