A flight simulation training equipment database integration and deployment method and medium
By converting monolithic applications into microservice clusters and utilizing container mirroring technology, the problem of poor flexibility in the existing technology is solved, and the flexibility and reliability of the flight simulation training equipment database is improved, and the deployment process is simplified.
Patent Information
- Application Number
- CN202411471983.7
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2024-10-22
- Publication Date
- 2025-01-03
- Estimated Expiration
- 2044-10-22
AI Technical Summary
The integration and deployment methods of existing flight simulation training equipment databases are poorly flexible, difficult to quickly adapt to new needs, and complex deployment, increasing deployment time and risk.
Convert single-unit applications into microservice clusters, adopt microservice architecture and container mirroring technology, and use cloud platform for deployment, so as to realize independent development, deployment and expansion of microservices through service registration and discovery mechanisms and secure configuration information.
It improves the flexibility and reliability of the flight simulation training equipment database, simplifies the deployment process, reduces deployment risks, and can quickly adapt to new scenario needs.
Smart Images

Figure CN119002949B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the technical field of database integration, and in particular to a method and medium for integrating and deploying a flight simulation training equipment database. Background Art
[0002] With the rapid development of the aviation industry and technological progress, flight simulation training equipment has become an indispensable part of pilot training. Flight simulation training equipment simulates the real flight environment to help pilots conduct operational training under safe conditions, thereby improving their ability to cope with various complex flight conditions. In order to ensure the effectiveness of simulation training, it is necessary to integrate the flight simulation training equipment database to support various data involved in the flight simulation training equipment, such as Geographic Information System (GIS) data, meteorological data, terrain data, flight simulation training equipment performance data, and dynamic model parameters corresponding to the flight simulation training equipment. These data are crucial to improving the authenticity and reliability of simulation training.
[0003] The existing flight simulation training equipment database integration and deployment methods usually adopt the combination of offline database and real-time data stream. Among them, the data in the offline database is usually prepared and stored in the database before the simulation training begins. These data are relatively stable and do not change frequently. For example, GIS data, terrain data and flight simulation training equipment performance data are stored in the offline database, while the real-time data stream is the data that needs to be continuously updated during the simulation training process. This type of data can provide more accurate and dynamic information, making the simulation training closer to the real world, such as: meteorological data, air traffic control instructions, etc.
[0004] Although this method can meet basic needs, there is still room for improvement in terms of flexibility, and it is difficult to quickly adapt to new needs. That is, the database management system used to implement the above-mentioned integration and deployment method, as a single application, includes a data acquisition module, a data processing module, a data storage module (i.e., a flight simulation training equipment database), etc. Although the prior art has divided the functional modules, these functional modules usually run in one application with close dependencies, and modifying a functional module may affect the entire system. For example, when a new data source is added, it is necessary to add new acquisition logic to the data acquisition module, and it may be necessary to modify the data processing module to adapt to the new data format. Therefore, even if only a small part of the function is modified, it is necessary to rebuild the entire single application and deploy it to the production environment, which increases the deployment time and risk, so the prior art has the problems of complex deployment and poor flexibility. Summary of the invention
[0005] The embodiment of the present invention provides a method and medium for integrating and deploying a flight simulation training equipment database, so as to solve the problem of poor flexibility in the prior art.
[0006] In a first aspect, an embodiment of the present invention provides a method for integrating and deploying a flight simulation training device database, comprising:
[0007] Acquire a single application of a flight simulation training device, and convert the single application into a microservice cluster, wherein the microservice cluster adopts a microservice architecture and includes a plurality of microservices of different priorities;
[0008] Generate a container image file corresponding to each microservice using a container image template corresponding to each microservice;
[0009] The security configuration information corresponding to each of the microservices is obtained, and based on the security configuration information corresponding to each of the microservices, the container image files corresponding to each of the microservices are deployed to the production environment provided by the cloud platform to realize the containerized operation of each of the microservices on the cloud platform. During the deployment process, microservices of different priorities correspond to different deployment orders.
[0010] Optionally, converting the monolithic application into a microservice cluster includes:
[0011] Obtain code data of a single application, and perform business analysis based on the code data to obtain multiple business items;
[0012] Mapping each of the business items to a corresponding microservice, and generating a microservice architecture diagram based on all the microservices; wherein the microservice architecture diagram is used to show the association relationship between the microservices; the priority of each microservice is determined according to the mapping order;
[0013] Based on the microservice architecture diagram, a service registration and discovery mechanism is used to obtain registered microservices, and a microservice cluster is built based on the registered microservices.
[0014] Optionally, the acquiring of code data of a single application and performing business analysis according to the code data to obtain multiple business items include:
[0015] Scanning the code base of the monolithic application using a preset code scanning tool to obtain code data, the code data including code structure and dependencies, and analyzing the monolithic application using a preset static code analysis tool to obtain a code quality estimate; the code structure including source code;
[0016] When the code quality estimation value is greater than or equal to a preset threshold, based on the code structure and dependency relationship, a domain-driven design method is used to perform business function decomposition to obtain a decomposition result;
[0017] Business items are extracted from the decomposition result to obtain multiple business items.
[0018] Optionally, mapping each of the business items to a corresponding microservice includes:
[0019] Prioritize the extracted multiple business items according to their business importance and urgency to obtain a sorting order;
[0020] The sorting order is used as the mapping order, and each of the business items is mapped to a corresponding microservice according to the mapping order.
[0021] Optionally, after mapping each of the business items to a corresponding microservice, the method further includes:
[0022] Use the preset security scanning tool to perform security scans on microservices and obtain the scan results;
[0023] If the scanning result shows that a security vulnerability exists, the security vulnerability is repaired.
[0024] Optionally, generating a microservice architecture diagram based on all microservices includes:
[0025] Determine the number of microservices and the degree of dependency between microservices;
[0026] When the number of microservices is less than or equal to a preset number threshold and the degree of dependency between microservices is less than or equal to a preset degree of dependency threshold, a two-dimensional microservice architecture diagram is constructed;
[0027] Alternatively, when the number of microservices is greater than a preset number threshold and the degree of dependency correlation between microservices is greater than a preset correlation degree threshold, a three-dimensional microservice architecture diagram is constructed.
[0028] Optionally, a service registration and discovery mechanism is used to obtain registered microservices, and a microservice cluster is built based on the registered microservices, including:
[0029] Configure the service registry;
[0030] When the microservice is started, register with the service registration center to obtain the registered microservices, and use metadata to manage the microservice registration information;
[0031] A preset service discovery mechanism is used to establish communication connections between registered microservices to obtain a microservice cluster.
[0032] Optionally, the generating a container image file corresponding to each microservice by using a container image template corresponding to each microservice includes:
[0033] Compile a container image template corresponding to each of the microservices, wherein the container image template includes steps for building the container image, the building steps adopt a multi-stage building technology, and the starting point of the building steps is a preset lightweight basic image;
[0034] Building a container image corresponding to each of the microservices based on the container image template corresponding to each of the microservices;
[0035] For each container image, optimize and compress the container image to obtain the processed container image;
[0036] Perform image testing on each processed container image, and when all test results meet the corresponding test requirements, generate a container image file corresponding to each of the microservices, so as to publish the container image based on the container image file.
[0037] Optionally, the deploying the container image file corresponding to each of the microservices to a production environment provided by a cloud platform based on the security configuration information corresponding to each of the microservices includes:
[0038] Obtain resource availability information for the production environment;
[0039] Based on the resource availability information of the production environment, determine the corresponding test environment from the test environment library, and virtually deploy the container image file corresponding to each of the microservices in the test environment based on the security configuration information corresponding to each of the microservices;
[0040] When the virtual deployment effect meets the preset effect requirements, the container image files corresponding to each of the microservices are actually deployed in the production environment provided by the cloud platform based on the security configuration information corresponding to each of the microservices; the preset effect requirements include at least one of the following: performance indicators, resource utilization or service availability.
[0041] In a second aspect, an embodiment of the present invention provides a computer storage medium storing a computer program, which, when executed by a computer, implements a method for integrating and deploying a flight simulation training equipment database as described in any one of the first aspects.
[0042] In an embodiment of the present invention, the integration and deployment method of the flight simulation training equipment database includes: obtaining a single application of the flight simulation training equipment, and converting the single application into a microservice cluster, the microservice cluster adopts a microservice architecture, and includes a plurality of microservices of different priorities; using the container image template corresponding to each microservice to generate a container image file corresponding to each microservice; obtaining the security configuration information corresponding to each microservice, and deploying the container image file corresponding to each microservice to the production environment provided by the cloud platform based on the security configuration information corresponding to each microservice, so as to realize the containerized operation of each microservice on the cloud platform, and microservices of different priorities correspond to different deployment orders during the deployment process. In a microservice cluster adopting a microservice architecture, each microservice is responsible for a specific business function and can be independently developed, deployed and expanded. This loosely coupled design enables the embodiment of the present invention to quickly adapt to new scenario requirements, and through the generation and deployment of container image files, simplifies the deployment process, and preferentially deploys high-priority microservices, thereby improving the flexibility of integration and deployment of the flight simulation training equipment database.
[0043] These and other aspects of the present invention will become more apparent from the following description of the embodiments. BRIEF DESCRIPTION OF THE DRAWINGS
[0044] In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, the following briefly introduces the drawings required for use in the embodiments or the description of the prior art. Obviously, the drawings described below are some embodiments of the present invention. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying creative work.
[0045] Figure 1 A flowchart of a method for integrating and deploying a flight simulation training equipment database provided by an embodiment of the present invention;
[0046] Figure 2 A schematic diagram of the structure of a flight simulation training equipment database integration and deployment device provided by an embodiment of the present invention;
[0047] Figure 3 A schematic diagram of the structure of a computing device provided by an embodiment of the present invention. DETAILED DESCRIPTION
[0048] In order to enable those skilled in the art to better understand the solutions of the present invention, the technical solutions in the embodiments of the present invention will be clearly and completely described below in conjunction with the accompanying drawings in the embodiments of the present invention.
[0049] In some of the processes described in the specification and claims of the present invention and the above-mentioned figures, multiple operations that appear in a specific order are included, but it should be clearly understood that these operations may not be executed in the order in which they appear in this article or executed in parallel. The serial numbers of the operations, such as 11, 12, etc., are only used to distinguish between different operations, and the serial numbers themselves do not represent any execution order. In addition, these processes may include more or fewer operations, and these operations may be executed in sequence or in parallel. It should be noted that the descriptions of "first", "second", etc. in this article are used to distinguish different messages, devices, modules, etc., do not represent the order of precedence, and do not limit the "first" and "second" to different types.
[0050] The existing flight simulation training equipment database integration and deployment methods usually adopt a combination of offline database and real-time data stream. Although this method can meet basic needs, there is still room for improvement in flexibility, scalability and reliability. Specifically:
[0051] (1) Poor flexibility: Existing flight simulation training equipment uses a combination of offline database and real-time data stream, which makes the flight simulation training equipment inflexible and difficult to quickly adapt to new needs.
[0052] Specifically, the existing flight simulation training equipment database integration and deployment method adopts a combination of offline database and real-time data stream. The database management system used to implement the above integration and deployment method is a single application, including a data acquisition module, a data processing module, a data storage module (i.e., a flight simulation training equipment database), etc. Although the prior art has divided the functional modules, these functional modules usually run in one application with close dependencies, and modifying one functional module may affect the entire system. For example, when a new data source is added, it is necessary to add new acquisition logic to the data acquisition module, and it may be necessary to modify the data processing module to adapt to the new data format. Therefore, even if only a small part of the function is modified, it is necessary to rebuild the entire single application and deploy it to the production environment, which increases the deployment time and risk. Therefore, the prior art has the problems of complex deployment and poor flexibility.
[0053] (2) Poor scalability: Flight simulation training equipment requires manual intervention when expanding, making it difficult to cope with sudden high load situations.
[0054] (3) Low reliability: Flight simulation training equipment does not have adequate fault tolerance mechanisms. Once a component fails, the entire system may crash.
[0055] In order to solve the above-mentioned technical problem of poor flexibility, an embodiment of the present invention provides a method and medium for integrating and deploying a flight simulation training equipment database. By introducing a loosely coupled microservice architecture, the database management system can quickly adapt to new requirements and improve the flexibility of integration and deployment of the flight simulation training equipment database.
[0056] The following will be combined with the drawings in the embodiments of the present invention to clearly and completely describe the technical solutions in the embodiments of the present invention. Obviously, the described embodiments are only part of the embodiments of the present invention, not all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative work are within the scope of protection of the present invention.
[0057] Figure 1 A flowchart of a method for integrating and deploying a flight simulation training equipment database provided by an embodiment of the present invention is shown in FIG. Figure 1 As shown, the method includes:
[0058] S11. Obtain a single application of a flight simulation training device, and convert the single application into a microservice cluster. The microservice cluster adopts a microservice architecture and includes multiple microservices of different priorities.
[0059] It should be understood that a flight simulation training device is a device used for pilot training that simulates a real flight environment and provides training for flight operations and emergency handling. A monolithic application refers to a traditional software architecture model in which all functions are deployed in a single process. This application is usually a large, tightly coupled application in which all functional modules are implemented in the same code base and deployed as a whole. For example, in a database management system for a flight simulation training device, a monolithic application may include multiple functional modules such as data acquisition, data processing, and data storage, all of which are implemented in the same application.
[0060] As the scale of applications increases, it becomes difficult to maintain and expand monolithic applications. Microservice architecture is a design approach that splits an application into multiple microservices (i.e., small, independent services), each of which is responsible for a single business function and can be independently developed, tested, deployed, and expanded. A microservice cluster is a group of microservices that work together to form a complete application. Each microservice has its specific role and function in a microservice cluster. A microservice cluster using a microservice architecture can improve the maintainability and scalability of a database management system, and each microservice can be updated and expanded independently without affecting other microservices.
[0061] Exemplarily, in this embodiment, a single application of a flight simulation training device includes multiple functional modules such as flight data processing, user management, and task scheduling. In order to improve the maintainability and scalability of the database management system, this embodiment can convert the single application into a microservice architecture. Specifically, analyze the functional modules of the single application to determine which modules can be independently transformed into microservices; design an independent code base and deployment unit for each microservice; use a microservice framework to develop each microservice; and configure the communication mechanism between microservices. Split the single application into multiple independent microservices, each of which is responsible for a single business function. In this way, the maintainability and scalability of the database management system can be improved.
[0062] S12. Generate container image files corresponding to each microservice using the container image template corresponding to each microservice.
[0063] A container image template contains a series of instructions that define how to build a container image file. The container image template standardizes the process of building container image files, ensuring that each container image file built is predictable and consistent. A container image file is a lightweight, independent executable software package that contains all the dependencies, configuration files, code libraries, etc. required to run a microservice. During the container image file generation process, you can write a container image template for each microservice; call the container image build command to build the container image file; and push the built container image file to the container image repository. The container image file can ensure that microservices can run consistently in any application environment.
[0064] S13. Obtain the security configuration information corresponding to each microservice, and deploy the container image file corresponding to each microservice to the production environment provided by the cloud platform based on the security configuration information corresponding to each microservice, so as to realize the containerized operation of each microservice on the cloud platform. During the deployment process, microservices of different priorities correspond to different deployment orders.
[0065] It should be understood that security configuration information includes configuration information such as network isolation, roles, security groups, encryption, etc. It is used to ensure the security of microservices in the production environment, limit unnecessary access, and protect the integrity of data. Cloud platform refers to the infrastructure that provides cloud computing services. This embodiment does not specifically limit the specific name and type of the cloud platform. The cloud platform provides elastic computing, storage, network and other resources to support rapid deployment and expansion of applications. The production environment refers to the environment in which microservices are actually running, which usually has high availability and security requirements. Since microservices of different priorities correspond to different deployment orders during the deployment process, this embodiment prioritizes the deployment of high-priority microservices. High-priority microservices can obtain the required computing resources and network bandwidth first, ensuring the high performance of key services. This resource optimization enables the database management system to operate efficiently even when resources are limited, and improves the flexibility of integration and deployment.
[0066] This embodiment can deploy the container image file to the production environment provided by the cloud platform based on the security configuration information of the microservice, and use the container orchestration tool for automatic deployment and management.
[0067] As the scale of applications increases, the maintenance and expansion of monolithic applications becomes difficult, the code coupling is high, and modifying one function may affect other functions. However, this embodiment adopts a microservice architecture, and each microservice is independently developed and deployed, which reduces the code coupling and makes maintenance and expansion easier. This embodiment can independently expand each microservice as needed to improve resource utilization and system performance. The embodiment of the present invention can ensure the security of each microservice through security configuration information. This embodiment provides automated deployment, which can ensure the consistency and reliability of deployment.
[0068] In other words, this embodiment can significantly improve the maintainability, scalability, security and deployment efficiency of the system by converting the monolithic application into a microservice architecture and deploying it using container images and cloud platforms. This design not only improves the flexibility and reliability of the integration and deployment of the flight simulation training equipment database, but also can better cope with future business needs.
[0069] It should be noted that this embodiment may also introduce a self-healing mechanism to improve the high availability and stability of the database management system.
[0070] In some possible embodiments, in S11, converting a monolithic application into a microservice cluster includes:
[0071] Step 111: Obtain code data of the single application, and perform business analysis based on the code data to obtain multiple business items.
[0072] Among them, step 111 extracts business logic from the code data of the monolithic application and performs business analysis to obtain specific business items. Business analysis includes but is not limited to: (1) Business function decomposition: decompose the business functions of the monolithic application and identify different business domains. (2) Domain-driven design: use domain-driven design methods to map business functions to different business domains. (3) Business item extraction: extract specific business items, such as data collection, data processing, data storage, etc.
[0073] To achieve the acquisition of code data, this embodiment can perform two steps: code scanning and code analysis. Code scanning: use a code scanning tool to scan the code base of the monolithic application to obtain the code structure and dependencies. Code analysis: use a static code analysis tool to analyze code quality and potential problems. As a possible implementation method, S111, obtain the code data of the monolithic application, and perform business analysis based on the code data to obtain multiple business items, including:
[0074] Step a1: Use a preset code scanning tool to scan the code base of the monolithic application to obtain code data, and use a preset static code analysis tool to analyze the monolithic application to obtain a code quality estimate; the code data includes code structure and dependencies, and the code data may also include code-related configuration files, etc. The code structure includes source code.
[0075] This embodiment does not specifically limit the type of code scanning tool. Optionally, in order to obtain the code data of the monolithic application, this embodiment can also use the version control system to clone the code base of the monolithic application to obtain the code data. Static code analysis tools are used to evaluate the quality of the code, including code specifications, potential defects, complexity, etc.
[0076] Step a2: When the code quality estimate is greater than or equal to a preset threshold, the domain-driven design method is used to perform business function decomposition based on the code structure and dependencies to obtain a decomposition result.
[0077] It should be understood that the preset threshold may be 80 points, 85 points, 90 points, etc., and the embodiment of the present invention does not specifically limit the value of the preset threshold. By setting the preset threshold of code quality, it is ensured that only high-quality code can be further decomposed into business functions. This helps to reduce the risk of reconstruction caused by low-quality code and ensure that the reconstruction process proceeds smoothly.
[0078] The domain-driven design approach is a software development approach that emphasizes the importance of business domain and business logic, and decomposes complex business problems into smaller, more manageable parts by identifying and modeling the core concepts of the business domain.
[0079] Step a3: extract business items from the decomposition result to obtain multiple business items.
[0080] Extract multiple business items from the decomposition results, such as flight data processing, user management, task scheduling, etc. Flight data processing refers to processing flight data and generating flight reports. User management refers to managing user information, including registration, login, and authority management. Task scheduling refers to managing the scheduling and execution of flight tasks.
[0081] The embodiments of the present invention can discover potential problems in the code in advance, such as inconsistent code specifications, potential defects, and excessive complexity, through static code analysis tools. This helps to ensure code quality before code refactoring and reduce the difficulty of subsequent maintenance. The domain-driven design method can help designers better understand and model the business domain, ensuring that each microservice has clear responsibilities and boundaries, thereby improving the maintainability and scalability of the code. Through business function decomposition, a single application can be gradually split into multiple microservices instead of completing all the reconstructions at once. This approach reduces the risk of a single reconstruction and makes the entire process more controllable.
[0082] Step 112: Map each business item to a corresponding microservice, and generate a microservice architecture diagram based on all microservices; wherein the microservice architecture diagram is used to display the association relationship between each microservice; and the priority of each microservice is determined according to the mapping order.
[0083] Exemplarily, this embodiment may provide flight data processing microservices, user management microservices, task scheduling microservices, etc. Among them, microservices are independent code bases and deployment units, and can be developed by the same or different development software or tools. This embodiment may also configure the communication mechanism between microservices after designing the microservice architecture, including communication between microservices and asynchronous communication using message queues.
[0084] Optionally, after the business analysis is completed, the present embodiment can also classify the business items, for example: Business item classification: classify the extracted business items according to their functions to form a business item list. And / or, business item priority sorting: prioritize the business items according to business importance and urgency. After the business item classification is completed, the business items are documented: a document generation tool is used to generate detailed business item documents. A version control system is used to manage the business item documents to ensure the traceability and version control of the business item documents.
[0085] As a possible implementation method, S112, mapping each business item to a corresponding microservice, includes: step b1, prioritizing the extracted multiple business items according to the degree of business importance and urgency to obtain a sorting order; step b2, using the sorting order as a mapping order, and mapping each business item to a corresponding microservice according to the mapping order.
[0086] The degree of business importance refers to evaluating the impact of each business item on the overall business objectives, determining its importance in the database management system, ensuring that key business functions are implemented first, and ensuring that the core functions of the system are not affected. The degree of business importance refers to evaluating the impact of each business item on the overall business objectives, determining its importance in the database management system, ensuring that urgently needed functions are implemented first, and meeting the timeliness of business needs. This embodiment can map high-priority business items to microservices first, and gradually promote the development and deployment of microservices.
[0087] It should be noted that the embodiments of the present invention can also concentrate limited development resources on high-priority business items to improve resource utilization efficiency. Avoid investing a large amount of resources at one time for large-scale reconstruction, reduce project risks, and ensure the sustainable development of the project. High-priority business items can be preferentially allocated to different development teams for parallel development to improve overall development efficiency. Prioritizing high-priority business items can obtain user feedback more quickly, and make timely adjustments and optimizations. By gradually implementing high-priority business items, verification and testing can be performed at each stage to promptly discover and solve problems. During the project advancement process, priorities can be flexibly adjusted according to actual conditions to ensure that project goals are achieved. Prioritize the deployment of high-priority microservices, gradually replace key functions in monolithic applications, and ensure a smooth transition of the database management system. The gradual replacement approach can reduce the impact on the existing system and reduce the risk of instability in the database management system.
[0088] Among them, in the process of generating the microservice architecture diagram of this embodiment, a visualization tool can be used to design the microservice architecture diagram; the dependency relationship between each microservice is displayed to ensure that the communication path between services is clear; and the microservice architecture diagram is managed using a version control system to ensure the traceability and version control of the microservice architecture diagram. As a possible implementation method, a microservice architecture diagram is generated based on all microservices, including: step c1, determining the number of microservices and the degree of dependency correlation between microservices; step c2, when the number of microservices is less than or equal to a preset number threshold and the degree of dependency correlation between microservices is less than or equal to a preset correlation threshold, construct a two-dimensional microservice architecture diagram; or step c3, when the number of microservices is greater than a preset number threshold and the degree of dependency correlation between microservices is greater than a preset correlation threshold, construct a three-dimensional microservice architecture diagram.
[0089] It should be understood that the number of microservices refers to the total number of microservices, and the degree of dependency association is used to evaluate the dependencies between microservices and calculate the degree of association. By evaluating the dependencies between microservices, potential coupling problems can be discovered, the database management system design can be optimized, unnecessary dependencies can be reduced, and the maintainability and scalability of the database management system can be improved. The degree of association can be indicators such as the number and complexity of dependencies. The two-dimensional architecture diagram is suitable for scenarios with a small number of microservices and simple dependencies. It can clearly show the relationship between microservices and is easy to understand. The three-dimensional architecture diagram is suitable for scenarios with a large number of microservices and complex dependencies. It can more intuitively show the multidimensional relationship between microservices, helping developers and operation and maintenance personnel to better understand and manage complex systems. This embodiment can reasonably allocate development and operation and maintenance resources according to the number and dependencies of microservices to ensure the efficient operation of the database management system.
[0090] Exemplarily, if the number of microservices is less than or equal to a preset number threshold (for example, 10) and the degree of correlation between the dependencies between microservices is less than or equal to a preset correlation degree threshold (for example, 50%), then a two-dimensional microservice architecture diagram is constructed, otherwise a three-dimensional microservice architecture diagram is constructed.
[0091] As another example, this embodiment provides a database management system for a flight simulation training device, which includes microservice clusters such as data acquisition services, data processing services, and data storage services. The two-dimensional microservice architecture diagram displays the following information: (1.1) Dependencies between services: Displays the dependencies between microservices. (1.2) Service names: Lists the names of each microservice and its functions. (1.3) Interfaces: Displays the interfaces and communication paths between microservices. A three-dimensional microservice architecture diagram can provide more visual information. For example: (2.1) Depth axis: Displays the degree / depth of dependencies between services. (2.2) Resource consumption: Displays the resource consumption of each microservice. (2.3) Geographic location: Displays the geographical location distribution of each microservice. (2.4) Timeline: Displays changes in services over time.
[0092] In this embodiment, the overall structure of the system and the relationship between each microservice can be intuitively seen through the microservice architecture diagram, providing decision support for system optimization and expansion. When a problem occurs in the database management system, the microservice and its dependencies can be quickly located through the microservice architecture diagram to speed up the problem resolution.
[0093] Step 113: Based on the microservice architecture diagram, a service registration and discovery mechanism is used to obtain registered microservices, and a microservice cluster is built based on the registered microservices.
[0094] The service registration and discovery mechanism includes service registration and service discovery. Using the service registration and discovery mechanism can ensure dynamic communication between microservices.
[0095] As a possible implementation method, in step 113, a service registration and discovery mechanism is used to obtain registered microservices, and a microservice cluster is built based on the registered microservices, including: step d1, configuring a service registration center; step d2, registering with the service registration center when the microservice is started to obtain the registered microservices, and using metadata to manage the microservice registration information; step d3, using a preset service discovery mechanism to establish a communication connection between the registered microservices to obtain a microservice cluster.
[0096] It should be understood that this embodiment configures a service registration center as an intermediary for communication between microservices to ensure its high availability and stability. The service registration center can provide multi-tenant support functions to ensure that microservices in different environments can be independently registered and discovered. The service registration center is responsible for managing and maintaining the registration information of all microservices, including the name, address, port, health status, etc. of the microservices. Through the service registration center, distributed transaction management can be more easily implemented to ensure transaction consistency between multiple microservices. When the microservice is started, each microservice will register with the service registration center and provide its own metadata information. The metadata includes the name, version number, address, port, health check path, etc. of the microservice, which is used for other microservices to discover and call. The service registration center can provide a consistent service discovery mechanism to ensure that all microservices can obtain the latest registration information and avoid problems caused by inconsistent information. Using the preset service discovery mechanism, microservices can obtain information about other registered microservices from the service registration center, establish communication connections, and form a microservice cluster. Microservices obtain each other's addresses and ports through the service discovery mechanism and make remote calls.
[0097] Optionally, this embodiment can dynamically adjust the load of microservices based on a machine learning load balancing algorithm.
[0098] The embodiments of the present invention can realize automatic registration and discovery, and can dynamically add or remove microservice instances as needed. The service registration center will update the microservice registration information in real time to ensure the high availability and scalability of the database management system. The service registration center usually performs health checks on registered microservices regularly to ensure that only healthy microservice instances participate in service calls, thereby improving the reliability of the database management system. When a microservice instance is unavailable, the service discovery mechanism can automatically switch to other healthy instances to achieve failover and improve the fault tolerance of the database management system. Microservices only need to configure the address of the service registration center, without having to worry about the specific addresses and ports of other microservices, which simplifies the development and deployment process. The registration information of all microservices is centrally managed, which is convenient for monitoring and maintenance, and improves the manageability of the database management system.
[0099] From the description of step 111 to step 113, it can be seen that this embodiment ensures code quality and maintainability through static code analysis and domain-driven design. Through business function decomposition and microservice architecture diagram, the database management system design is optimized to improve the modularity and clarity of the database management system.
[0100] In some possible embodiments, after step 112, mapping each business item to a corresponding microservice, the method further includes: step 114, using a preset security scanning tool to perform a security scan on the microservice to obtain a scan result; step 115, if the scan result shows that a security vulnerability exists, repairing the security vulnerability.
[0101] This embodiment does not specifically limit the specific type of security scanning tools. The tool can detect various security vulnerabilities in microservices, such as Structured Query Language (SQL) injection, Cross-Site Scripting (XSS) attacks, unauthorized access, etc. The scan results may include a detailed report generated by the scanning tool, which can list the security vulnerabilities found and their severity. Based on the scan results, this embodiment can analyze the cause of each security vulnerability and take corresponding measures to repair it, such as updating the code, configuring security policies, using security libraries, etc. After the repair is completed, this embodiment can re-perform a security scan to ensure that the security vulnerability has been completely repaired.
[0102] This embodiment uses a security scanning tool to discover potential security vulnerabilities in the early stages of microservice development and deployment, preventing these vulnerabilities from being exploited in the production environment. Once a security vulnerability is discovered, it can be repaired immediately, reducing the time the database management system is exposed to risks, improving the overall security of the database management system, and thus improving the user experience. By discovering and repairing security vulnerabilities early, the occurrence of security incidents can be effectively prevented and the losses caused by security incidents can be reduced. Even if a security incident occurs, since regular security scanning and repair have been carried out, it can be responded to and handled more quickly, reducing the scope and duration of the incident. Through regular security scanning and repair, the security of the database management system can be continuously optimized.
[0103] After splitting the single application of the flight simulation training equipment into multiple microservices, it is necessary to generate a container image file for each microservice. In order to improve the construction efficiency of the container image, reduce the image size, and ensure the quality of the image, the embodiment of the present invention adopts a multi-stage construction technology, optimization and compression processing, and an image testing process. In some possible embodiments, S12, using the container image template corresponding to each microservice to generate the container image file corresponding to each microservice, includes:
[0104] Step 121: Write a container image template corresponding to each microservice. The container image template includes steps for building the container image. The building steps use a multi-stage building technology, and the starting point of the building steps is a preset lightweight basic image.
[0105] It should be understood that, among them, the container image template is a file that defines the container image building process, usually a Docker file or a similar configuration file, which describes how to build a container image. In addition, different microservices can correspond to different container image files. For example, the flight data processing microservice corresponds to container image file 1, the user management microservice corresponds to container image file 2, and the task scheduling microservice corresponds to container image file 3. Multi-stage construction technology is a technology that optimizes the container image building process, and reduces the size of the final container image through multiple stages. Exemplarily, the multiple stages are divided into two stages: the construction stage and the running stage. In the construction stage, the present embodiment uses a base image containing all construction tools and dependencies, compiles the application source code, and generates an executable file or middleware file. In the running stage, the present embodiment uses a smaller base image, only copies the executable file or middleware file generated in the construction stage, and ensures the minimization of the final image. Another exemplary, the multiple stages are divided into three stages: the pre-construction stage, the running stage, and the inspection and reconstruction stage. In the pre-construction stage, the present embodiment can prepare the environment or download large dependencies to reduce the construction time of subsequent stages. In the inspection and reconstruction stage, the present embodiment can verify the construction results to ensure that the generated files meet expectations.
[0106] Step 122: Build container images corresponding to each microservice based on the container image template corresponding to each microservice. Optionally, this embodiment can call a container image building command to build a container image corresponding to each microservice.
[0107] Step 123: For each container image, optimize and compress the container image to obtain a processed container image.
[0108] It should be understood that optimization and compression processing includes but is not limited to: layer optimization, file compression, streamlining base images, cleaning caches, etc. Among them, layer optimization is used to delete unnecessary layers and reduce the number of image layers. File compression is used to compress executable files using compression tools. Streamlining base images means using smaller base images. Cleaning caches means deleting temporary files and caches generated during the build process.
[0109] Step 124: Perform image testing on each processed container image. If all test results meet the corresponding test requirements, generate a container image file corresponding to each microservice, and publish the container image based on the container image file. If all test results meet the corresponding test requirements, the test is passed.
[0110] In an embodiment of the present invention, the multi-stage construction technology reduces the construction time and improves the construction efficiency. The pre-construction stage and the inspection and reconstruction stage further optimize the construction process to ensure the correctness of the construction results. Through multi-stage construction and optimization and compression processing, the size of the final image is significantly reduced, saving storage space and transmission bandwidth. The use of a smaller base image further reduces the image size. Image testing ensures the functionality, performance and security of the image and improves the quality of the image. Security testing discovers potential security vulnerabilities and improves the security of the database management system. Standardized construction and testing processes simplify image management and maintenance. Automated construction and testing processes reduce manual operations and improve development efficiency. Fast build and test feedback loops accelerate the development iteration cycle.
[0111] In some other possible embodiments, S12 generates a container image file using a container image template corresponding to the microservice, which can ensure the security, optimization, and automated construction of the container image, and mainly includes the following steps:
[0112] Step e1: Prepare container image template:
[0113] (1) Dockerfile template: Write a Dockerfile file as the basic template for the microservice container image.
[0114] Base image selection: Choose a suitable lightweight base image (such as Alpine Linux).
[0115] Multi-stage build: Use multi-stage build technology to optimize the build process and ensure that the final image size is small.
[0116] Environment variable configuration: Configure necessary environment variables in Dockerfile.
[0117] (2) Helm template: Use Helm template to manage Kubernetes deployment and ensure consistency of image version and configuration.
[0118] Chart file: Write a Helm Chart file to define the deployment configuration of microservices.
[0119] Values file: Use the values.yaml file to manage configuration parameters.
[0120] Step e2, container image construction:
[0121] (1) Continuous Integration / Continuous Deployment (CI / CD): Use CI / CD tools to automatically trigger builds.
[0122] (2) Automatic build: Automatic build is triggered after the code is submitted to the repository.
[0123] Webhook trigger: Configure a webhook to automatically trigger a build after code is submitted.
[0124] Scheduled builds: Configure scheduled tasks (such as daily builds) to ensure that the image is always up to date.
[0125] (3) Tag management: Add tags to the built images to facilitate version management and rollback.
[0126] Semantic versioning: Use the SemVer standard for version management.
[0127] Multi-branch support: supports mirror building of multiple branches (such as development, testing, and production).
[0128] Step e3: Image optimization and compression:
[0129] Useless layer cleaning: Clean up unnecessary layers in Dockerfile. Build cache utilization: Use Docker build cache properly to speed up the build process. Cache invalidation strategy: Configure cache invalidation strategy to ensure rebuilding when key dependencies are updated. Image compression: Use tools or technologies to reduce image size. Squoosh: Use tools such as Squoosh to reduce image size. Multi-stage build: Use multi-stage build technology to delete temporary files and unnecessary build tools. Image optimization tools: Use image optimization tools (such as Docker Slim) to further reduce the image size.
[0130] Step e4: Security Scan and Compliance:
[0131] Vulnerability scanning: Use tools such as Clair and Trivy to scan images for known vulnerabilities. Automated vulnerability scanning: Integrate security scanning tools into the CI / CD pipeline to automatically perform security scans during each build. Scan report: Generate and save scan reports for subsequent review. License compliance: Check whether the third-party libraries used comply with license requirements. License management tools: Use tools such as WhiteSource to manage license issues for third-party libraries. License compliance report: Generate a license compliance report to ensure that all dependencies comply with license requirements. Static code analysis: Perform static code analysis tools such as SonarQube to discover potential security issues. Code quality report: Generate a code quality report to ensure that the code meets security standards.
[0132] Step e5: Mirror test includes at least one of the following:
[0133] Unit testing: Perform unit testing on applications within the container. JUnit / Mocha: Use JUnit, Mocha and other testing frameworks for unit testing. Test coverage report: Generate a test coverage report to ensure that code coverage meets certain standards. Integration testing: Perform integration testing in a container environment. Docker Compose: Use Docker Compose to create a test environment to ensure that the integration between services is correct. Test environment configuration: Configure the test environment to ensure that it is consistent with the production environment. Performance testing: Test the performance of containerized applications. LoadRunner / JMeter: Use tools such as LoadRunner and JMeter for performance testing. Performance test report: Generate a performance test report to ensure that the application remains stable under high load.
[0134] Step e6: Image publishing and distribution, including:
[0135] Private warehouse: Use private warehouses (such as Harbor, Nexus) to store images. Image signature: Use image signature technology to increase security. Distribution strategy: Develop an image distribution strategy to ensure that images can be quickly distributed to each node.
[0136] In some possible embodiments, in S13, based on the security configuration information corresponding to each microservice, the container image file corresponding to each microservice is deployed to the production environment provided by the cloud platform, including:
[0137] Step 131: Obtain resource availability information of the production environment.
[0138] The production environment is the production environment provided by the cloud platform. A cloud platform refers to an Internet platform that provides computing resources and services, usually including Infrastructure as a Service (IaaS), Platform as a Service (PaaS) and Software as a Service (SaaS). Optionally, in the database management system of the flight simulation training equipment, the cloud platform may be a public cloud platform or a private cloud platform.
[0139] Security configuration information refers to configuration information related to application security, including but not limited to: network configuration, authentication, permission management, encryption settings, etc. Different microservices can correspond to different security configuration information, for example: data collection services correspond to network configuration, data processing services correspond to authentication and encryption settings, and data storage services correspond to permission management. Resource availability information: including the availability of resources such as the central processing unit (CPU), memory, storage, and network bandwidth.
[0140] Step 132: Based on the available resource information of the production environment, determine the corresponding test environment from the test environment library, and virtually deploy the container image file corresponding to each microservice in the test environment based on the security configuration information corresponding to each microservice;
[0141] Step 133: When the virtual deployment effect meets the preset effect requirements, the container image file corresponding to each microservice is actually deployed in the production environment provided by the cloud platform based on the security configuration information corresponding to each microservice.
[0142] The production environment refers to the environment in which the application is actually running, which is usually the final environment for users and requires high stability and availability. There are test environments with different resource availability information in the test environment library. Step 132 can determine a test environment with the same or similar resource availability information from the test environment library based on the resource availability information of the production environment.
[0143] The corresponding test environment is determined based on the available resource information, and the container image files corresponding to each microservice are virtually deployed in the test environment based on the security configuration information corresponding to each microservice. Virtual deployment is used to simulate the actual deployment process and evaluate resource allocation, performance, service availability, etc. The preset effect requirements include performance indicators, resource utilization, service availability, etc. Virtual deployment can avoid interference with the production environment and ensure that various tests and verifications during the virtual deployment process will not affect the normal operation of existing services.
[0144] This embodiment can ensure that each microservice is deployed in accordance with the security configuration information in the production environment, thereby improving the security of the database management system. Resource allocation can reasonably allocate resources based on resource availability information, thereby ensuring high performance and high availability of the database management system.
[0145] Through virtual deployment, the embodiments of the present invention can verify resource allocation, performance, and service availability before actual deployment, thereby reducing the risk of actual deployment failure. It ensures that the virtual deployment effect meets the preset effect requirements and improves the success rate and reliability of deployment. Based on the available resource information of the production environment, resources are reasonably allocated to avoid resource waste and improve resource utilization.
[0146] Evaluate performance indicators through virtual deployment, optimize resource allocation, and improve the performance of the database management system. Deploy based on security configuration information to ensure that each microservice is configured according to the security policy in the production environment to improve the security of the system. Prevent mutual interference between different microservices through network isolation to reduce security risks. Set access control policies to ensure that only authorized users and microservices can access specific resources. Evaluate service availability through virtual deployment to ensure that the system can run stably after actual deployment. Simulate failure scenarios in virtual deployment to verify the effectiveness of the failure recovery mechanism and improve the high availability of the system. Simplify deployment operations, reduce manual intervention, and improve deployment efficiency through automated processes for virtual and actual deployment. Use standardized security configuration information and resource availability information to ensure that the deployment process of each microservice is consistent and improve the standardization of deployment.
[0147] In some other possible embodiments, in S13, based on the security configuration information corresponding to each microservice, the container image file corresponding to each microservice is deployed to the production environment provided by the cloud platform, including:
[0148] Step f1: Obtain security configuration information, including:
[0149] Security configuration: Obtain security configuration information corresponding to microservices from the cloud platform, including but not limited to network isolation, identity and access management (IAM) roles, security groups, transport layer security encryption (TLS) encryption, etc. Configuration file: Save the security configuration information as a configuration file for automated deployment.
[0150] Step f2: Container orchestration and deployment:
[0151] Kubernetes YAML file: Write Kubernetes YAML file to define Deployment, Service and other necessary Kubernetes resources. Automated deployment: Use CI / CD tools (such as Jenkins, GitLab CI / CD) to automate deployment.
[0152] Step f3, secure configuration application:
[0153] Network isolation: Configure Kubernetes Network Policies or the cloud platform's Virtual Private Cloud (VPC) network isolation policy. IAM roles: Configure Kubernetes' role-based access control (RBAC) roles to limit the scope of service permissions. Security groups: Configure the cloud platform's security groups to limit inbound and outbound traffic.
[0154] TLS encryption: Configure TLS encryption to ensure secure communication between services.
[0155] Step f4: Dynamic configuration and environmental awareness:
[0156] Dynamic configuration: Use ConfigMaps and Secrets to manage dynamic configuration information. Environment awareness: Use environment variable injection or ConfigMaps / Secrets to make the service aware of the current environment.
[0157] Step f5, high availability and fault tolerance mechanism:
[0158] Multi-AZ deployment: Deploy microservices in multiple AZs to improve the high availability of the system. Automatic recovery: Configure Kubernetes' self-healing mechanisms (such as liveness and readiness probes). Failover: Configure the failover mechanism to ensure automatic migration of services when some nodes fail.
[0159] Step f6, monitoring and log management:
[0160] System monitoring: Use monitoring tools provided by the cloud platform (such as AWS CloudWatch, Azure Monitor) to monitor system health. Centralized log management: Use centralized log management systems (such as ELK Stack, Loki) for log collection and analysis. Alarm mechanism: Configure alarm rules to detect and solve problems in a timely manner.
[0161] From the description of S11 to S13, we can see that by converting a monolithic application into a microservice cluster and deploying it using container images and cloud platforms, the deployment convenience and flexibility of the database management system can be significantly improved.
[0162] Accordingly, this embodiment has the following advantages:
[0163] 1. Simplified deployment: By converting a monolithic application into a microservice cluster and using containerization technology, the deployment process is simplified. Each microservice can be developed, deployed, and expanded independently without rebuilding the entire application.
[0164] 2. Improve flexibility: Through the microservice architecture, each microservice is responsible for a specific business function and can be independently developed, deployed and expanded. This loosely coupled design enables the system to quickly adapt to new requirements.
[0165] 3. Enhanced scalability: Through containerization and the cloud platform's automated deployment mechanism, microservices can be deployed in multiple availability zones to improve the system's high availability. At the same time, tools such as Kubernetes can automatically scale service instances to cope with sudden high loads.
[0166] 4. Improve reliability: The reliability of the system is improved through containerization and cloud platform fault tolerance mechanisms, such as self-healing mechanisms (liveness and readiness probes), failover mechanisms, etc. Once a service instance fails, the system can automatically restore or migrate the service.
[0167] Figure 2 A schematic diagram of a structure of a flight simulation training equipment database integration and deployment device provided by an embodiment of the present invention, such as Figure 2 As shown, the device comprises:
[0168] The acquisition conversion module 21 is used to acquire the single application of the flight simulation training equipment and convert the single application into a microservice cluster. The microservice cluster adopts a microservice architecture and includes multiple microservices with different priorities.
[0169] The generation module 22 is used to generate a container image file corresponding to each microservice by using the container image template corresponding to each microservice.
[0170] The deployment module 23 is obtained to obtain the security configuration information corresponding to each microservice, and based on the security configuration information corresponding to each microservice, the container image file corresponding to each microservice is deployed to the production environment provided by the cloud platform to realize the containerized operation of each microservice on the cloud platform. During the deployment process, microservices of different priorities correspond to different deployment orders.
[0171] Figure 2 The flight simulation training equipment database integration and deployment device can perform Figure 1 The implementation principle and technical effect of the flight simulation training equipment database integration and deployment method described in the illustrated embodiment will not be described in detail. The specific manner in which each module performs operations in the flight simulation training equipment database integration and deployment device in the above embodiment has been described in detail in the embodiment of the method, and will not be described in detail here.
[0172] In one possible design, Figure 2 The flight simulation training equipment database integration and deployment device of the illustrated embodiment may be implemented as a computing device, such as Figure 3 As shown, the computing device may include a storage component 31 and a processing component 32 .
[0173] The storage component 31 stores one or more computer instructions, wherein the one or more computer instructions are called and executed by the processing component 32 .
[0174] The processing component 32 is used to: obtain the monomer application of the flight simulation training equipment, and convert the monomer application into a microservice cluster, the microservice cluster adopts a microservice architecture, and includes multiple microservices of different priorities; use the container image template corresponding to each microservice to generate a container image file corresponding to each microservice; obtain the security configuration information corresponding to each microservice, and deploy the container image file corresponding to each microservice to the production environment provided by the cloud platform based on the security configuration information corresponding to each microservice, so as to realize the containerized operation of each microservice on the cloud platform. During the deployment process, microservices of different priorities correspond to different deployment orders.
[0175] The processing component 32 may include one or more processors to execute computer instructions to complete all or part of the steps in the above method. Of course, the processing component may also be implemented by one or more application-specific integrated circuits (ASIC), digital signal processors (DSP), digital signal processing devices (DSPD), programmable logic devices (PLD), field programmable gate arrays (FPGA), controllers, microcontrollers, microprocessors or other electronic components to perform the above method.
[0176] The storage component 31 is configured to store various types of data to support operations at the terminal. The storage component can be implemented by any type of volatile or non-volatile storage device or a combination thereof, such as random access memory (RAM), static random access memory (SRAM), electrically erasable programmable read-only memory (EEPROM), erasable programmable read-only memory (EPROM), programmable read-only memory (PROM), read-only memory (ROM), magnetic memory, flash memory, magnetic disk or optical disk.
[0177] Of course, the computing device may also include other components, such as input / output interfaces, display components, communication components, etc.
[0178] The input / output interface provides an interface between the processing component and the peripheral interface module, which may be an output device, an input device, etc.
[0179] The communication component is configured to facilitate, among other things, wired or wireless communications between the computing device and other devices.
[0180] Among them, the computing device can be a physical device or an elastic computing host provided by a cloud computing platform, etc. In this case, the computing device can refer to a cloud server, and the above-mentioned processing components, storage components, etc. can be basic server resources rented or purchased from the cloud computing platform.
[0181] The embodiment of the present invention further provides a computer storage medium storing a computer program, which can achieve the above-mentioned Figure 1 The flight simulation training equipment database integration and deployment method of the illustrated embodiment.
[0182] Those skilled in the art can clearly understand that, for the convenience and brevity of description, the specific working processes of the above-described devices and modules can refer to the corresponding processes in the aforementioned method embodiments and will not be repeated here.
[0183] The device embodiments described above are merely illustrative, wherein the units described as separate components may or may not be physically separated, and the components displayed as units may or may not be physical units, that is, they may be located in one place, or they may be distributed on multiple network units. Some or all of the modules may be selected according to actual needs to achieve the purpose of the scheme of this embodiment. Ordinary technicians in this field can understand and implement it without paying creative labor.
[0184] Through the description of the above implementation methods, those skilled in the art can clearly understand that each implementation method can be implemented by means of software plus a necessary general hardware platform, and of course, can also be implemented by hardware. Based on this understanding, the above technical solution is essentially or the part that contributes to the prior art can be embodied in the form of a software product, and the computer software product can be stored in a computer-readable storage medium, such as ROM / RAM, a disk, an optical disk, etc., including a number of instructions for a computer device (which can be a personal computer, a server, or a network device, etc.) to execute the methods described in each embodiment or some parts of the embodiments.
[0185] Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of the present invention, rather than to limit it. Although the present invention has been described in detail with reference to the aforementioned embodiments, those skilled in the art should understand that they can still modify the technical solutions described in the aforementioned embodiments, or make equivalent replacements for some of the technical features therein. However, these modifications or replacements do not deviate the essence of the corresponding technical solutions from the spirit and scope of the technical solutions of the embodiments of the present invention.
Claims
1. A method for integrating and deploying a flight simulation training equipment database, characterized in that: include: Acquire a single application of a flight simulation training device, and convert the single application into a microservice cluster, wherein the microservice cluster adopts a microservice architecture and includes a plurality of microservices of different priorities; Generate a container image file corresponding to each microservice using a container image template corresponding to each microservice; Obtain security configuration information corresponding to each of the microservices, and deploy the container image files corresponding to each of the microservices to the production environment provided by the cloud platform based on the security configuration information corresponding to each of the microservices, so as to realize the containerized operation of each of the microservices on the cloud platform. During the deployment process, microservices of different priorities correspond to different deployment orders; The converting the monolithic application into a microservice cluster comprises: Obtain code data of a single application, and perform business analysis based on the code data to obtain multiple business items; Mapping each of the business items to a corresponding microservice, and generating a microservice architecture diagram based on all the microservices; wherein the microservice architecture diagram is used to show the association relationship between the microservices; the priority of each microservice is determined according to the mapping order; Based on the microservice architecture diagram, a service registration and discovery mechanism is used to obtain registered microservices, and a microservice cluster is built based on the registered microservices; The code data of the single application is obtained, and business analysis is performed according to the code data to obtain multiple business items, including: Scanning the code base of the monolithic application using a preset code scanning tool to obtain code data, the code data including code structure and dependencies, and analyzing the monolithic application using a preset static code analysis tool to obtain a code quality estimate; the code structure including source code; When the code quality estimation value is greater than or equal to a preset threshold, based on the code structure and dependency relationship, a domain-driven design method is used to perform business function decomposition to obtain a decomposition result; Business items are extracted from the decomposition result to obtain multiple business items.
2. The method for integrating and deploying a flight simulation training device database according to claim 1, characterized in that: Mapping each of the business items to a corresponding microservice includes: Prioritize the extracted multiple business items according to their business importance and urgency to obtain a sorting order; The sorting order is used as the mapping order, and each of the business items is mapped to a corresponding microservice according to the mapping order.
3. The method for integrating and deploying a flight simulation training device database according to claim 1, characterized in that: After mapping each of the business items to a corresponding microservice, the method further includes: Use the preset security scanning tool to perform security scans on microservices and obtain the scan results; If the scanning result shows that a security vulnerability exists, the security vulnerability is repaired.
4. The method for integrating and deploying a flight simulation training device database according to claim 1, characterized in that: The microservice architecture diagram is generated based on all microservices, including: Determine the number of microservices and the degree of dependency between microservices; When the number of microservices is less than or equal to a preset number threshold and the degree of dependency between microservices is less than or equal to a preset degree of dependency threshold, a two-dimensional microservice architecture diagram is constructed; Alternatively, when the number of microservices is greater than a preset number threshold and the degree of dependency correlation between microservices is greater than a preset correlation degree threshold, a three-dimensional microservice architecture diagram is constructed.
5. The method for integrating and deploying a flight simulation training device database according to claim 1, characterized in that: The microservice architecture diagram is generated based on all microservices, including: Determine the number of microservices and the degree of dependency between microservices; When the number of microservices is less than or equal to a preset number threshold and the degree of dependency between microservices is less than or equal to a preset degree of dependency threshold, a two-dimensional microservice architecture diagram is constructed; Alternatively, when the number of microservices is greater than a preset number threshold and the degree of dependency correlation between microservices is greater than a preset correlation degree threshold, a three-dimensional microservice architecture diagram is constructed.
6. The method for integrating and deploying a flight simulation training device database according to claim 1, characterized in that: The generating of the container image files corresponding to the microservices by using the container image templates corresponding to the microservices includes: Compile a container image template corresponding to each of the microservices, wherein the container image template includes steps for building the container image, the building steps adopt a multi-stage building technology, and the starting point of the building steps is a preset lightweight basic image; Building a container image corresponding to each of the microservices based on the container image template corresponding to each of the microservices; For each container image, optimize and compress the container image to obtain the processed container image; Perform image testing on each processed container image, and when all test results meet the corresponding test requirements, generate a container image file corresponding to each of the microservices, so as to publish the container image based on the container image file.
7. The method for integrating and deploying a flight simulation training device database according to claim 1, characterized in that: The deploying the container image file corresponding to each microservice to the production environment provided by the cloud platform based on the security configuration information corresponding to each microservice includes: Obtain resource availability information for the production environment; Based on the resource availability information of the production environment, determine the corresponding test environment from the test environment library, and virtually deploy the container image file corresponding to each of the microservices in the test environment based on the security configuration information corresponding to each of the microservices; When the virtual deployment effect meets the preset effect requirements, the container image files corresponding to each of the microservices are actually deployed in the production environment provided by the cloud platform based on the security configuration information corresponding to each of the microservices; the preset effect requirements include at least one of the following: performance indicators, resource utilization or service availability.
8. A computer storage medium, characterized in that: A computer program is stored, and when the computer program is executed by a computer, a method for integrating and deploying a flight simulation training equipment database as described in any one of claims 1 to 7 is implemented.