Distributed development environment configuration method and device, equipment and storage medium
Through the distributed development environment configuration method of the cloud application management platform, the target technology stack and database are determined according to the application configuration data, the initial application environment is optimized, and the continuous integration and deployment pipelines are integrated, which solves the problems of complex configuration of existing tools and inconsistent environments and improves development and deployment efficiency.
Patent Information
- Application Number
- CN202510763158.2
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-06-09
- Publication Date
- 2025-09-16
AI Technical Summary
Existing distributed development environment management tools require a lot of configuration and maintenance, are complex to operate, and are difficult to use quickly. In addition, it is difficult to ensure the consistency and isolation of the development environment when teams collaborate in multiple locations, which affects development progress and quality.
Through the cloud application management platform, according to the configuration data of the target application, the target technology stack and database are determined from the candidate technology stacks and databases. Based on the trigger conditions and dependency data of the initial application environment and code repository, the candidate application environment is optimized, and the target development environment is finally determined, integrating the continuous integration pipeline and the continuous deployment pipeline.
It improves the development and deployment efficiency of applications in the development environment, simplifies the configuration process, ensures the consistency and isolation of the development environment, and improves the efficiency of team collaboration.
Smart Images

Figure CN120653296A_ABST
Abstract
Description
Technical Field
[0001] The embodiments of the present application relate to the field of computer technology and can be used in the field of financial technology, especially to the field of distributed technology, and specifically to a distributed development environment configuration method, apparatus, device and storage medium. Background Art
[0002] Existing distributed development environment management and automated integration mainly rely on cloud service platforms: they provide complete development and deployment environment management, but are costly and dependent on cloud service providers; self-hosted CI / CD (Continuous Integration / Continuous Deployment) tools: they can run on internal servers but require a lot of configuration and maintenance work; container orchestration tools: they provide powerful container management capabilities, but require advanced operation and maintenance knowledge and complex management control.
[0003] Although the automated management function of the distributed development environment has been achieved, the self-hosted CI / CD tools and container orchestration tools require a lot of time and technical investment to configure and maintain, and the operation is complex and difficult to get started quickly. In addition, it is difficult to ensure the consistency and isolation of the development environment when teams in multiple locations collaborate, and inconsistent environment configurations are prone to occur, thus affecting development progress and quality. Summary of the Invention
[0004] The present application provides a distributed development environment configuration method, apparatus, device and storage medium to improve the development and deployment efficiency of applications in the development environment.
[0005] According to one aspect of the present application, a distributed development environment configuration method is provided, which is applied to a cloud application management platform; the method includes:
[0006] Determining a target technology stack from candidate technology stacks and a target database from candidate databases based on application configuration data of a target application; wherein the application configuration data includes an application name, an application description, database parameters, a build command, and a run command;
[0007] Determining an initial application environment of the target application based on the target technology stack and the target database and according to the application configuration data;
[0008] Determining a candidate application environment based on the initial application environment, a code pull trigger condition of the target code repository, and application dependency data in the application configuration data;
[0009] A target development environment is determined based on the candidate application environment, the application environment configuration data of the target application, the continuous integration pipeline data, and the continuous deployment pipeline data.
[0010] According to another aspect of the present application, a distributed development environment configuration device is provided, which is configured on a cloud application management platform; the device includes:
[0011] a data screening module, configured to determine a target technology stack from candidate technology stacks and a target database from candidate databases based on application configuration data of a target application, wherein the application configuration data includes an application name, an application description, database parameters, a build command, and a run command;
[0012] an application environment determination module, configured to determine an initial application environment of the target application based on the target technology stack and the target database and according to the application configuration data;
[0013] An application environment optimization module, configured to determine a candidate application environment based on the initial application environment, a code pull trigger condition of a target code repository, and application dependency data in the application configuration data;
[0014] The development environment determination module is used to determine the target development environment based on the candidate application environment, the application environment configuration data of the target application, the continuous integration pipeline data and the continuous deployment pipeline data.
[0015] According to another aspect of the present application, an electronic device is provided, comprising:
[0016] one or more processors;
[0017] a memory for storing one or more programs;
[0018] When the one or more programs are executed by the one or more processors, the one or more processors implement any one of the distributed development environment configuration methods provided in the embodiments of the present application.
[0019] According to another aspect of the present application, a computer-readable storage medium is provided, on which a computer program is stored. When the program is executed by a processor, any one of the distributed development environment configuration methods provided in the embodiments of the present application is implemented.
[0020] According to another aspect of the present application, a computer program product is provided, including a computer program, which, when executed by a processor, implements any one of the distributed development environment configuration methods provided in the embodiments of the present application.
[0021] This application determines the target technology stack from the candidate technology stacks and the target database from the candidate databases based on the application configuration data of the target application; determines the initial application environment of the target application based on the target technology stack and the target database and the application configuration data; determines the candidate application environment based on the initial application environment, the code pull trigger conditions of the target code repository and the application dependency data in the application configuration data; and determines the target development environment based on the candidate application environment, the application environment configuration data of the target application, the continuous integration pipeline data and the continuous deployment pipeline data. The above technical solution helps to improve the development and deployment efficiency of applications in the development environment by integrating distributed development environment management, continuous integration pipeline and continuous deployment pipeline. BRIEF DESCRIPTION OF THE DRAWINGS
[0022] Figure 1 This is a flow chart of a distributed development environment configuration method provided according to the first embodiment of the present application;
[0023] Figure 2 This is a flow chart of a distributed development environment configuration method provided according to the second embodiment of the present application;
[0024] Figure 3 This is a structural diagram of a distributed development environment configuration device provided according to the third embodiment of the present application;
[0025] Figure 4 It is a structural diagram of an electronic device for implementing the distributed development environment configuration method of Example 4 of the present application. DETAILED DESCRIPTION
[0026] In order to enable those skilled in the art to better understand the present invention, the following will clearly and completely describe the technical solutions in the embodiments of the present invention in conjunction with the drawings 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 in the present invention, all other embodiments obtained by ordinary technicians in this field without making creative efforts should fall within the scope of protection of this application.
[0027] It should be noted that the terms "first", "second", etc. in the specification and claims of the present application and the above-mentioned drawings are used to distinguish similar objects and are not necessarily used to describe a specific order or sequential order. It should be understood that the data used in this way can be interchangeable where appropriate, so that the embodiments of the present application described herein can be implemented in a sequence other than those illustrated or described herein. In addition, the terms "including" and "having" and any variations thereof are intended to cover non-exclusive inclusions, for example, a process, method, system, product or device comprising a series of steps or units is not necessarily limited to those steps or units clearly listed, but may include other steps or units that are not clearly listed or inherent to these processes, methods, products or devices.
[0028] In addition, it should be noted that in the technical solution of this application, the collection, storage, use, processing, transmission, provision and disclosure of relevant data such as application configuration data and application environment configuration data are in compliance with the provisions of relevant laws and regulations and do not violate public order and good morals.
[0029] Example 1
[0030] Figure 1 This is a flow chart of a distributed development environment configuration method provided in accordance with the first embodiment of the present application. This embodiment is applicable to the case of building a distributed development environment on a cloud application management platform and can be executed by a distributed development environment configuration device. The distributed development environment configuration device can be implemented in the form of hardware and / or software. The distributed development environment configuration device can be configured in a computer device, such as a cloud application management platform. Figure 1 As shown, the method includes:
[0031] S110. Determine a target technology stack from candidate technology stacks and a target database from candidate databases based on application configuration data of the target application; wherein the application configuration data includes an application name, an application description, database parameters, a build command, and a run command.
[0032] In this embodiment, the cloud application management platform is a centralized platform for deploying, managing, and monitoring cloud applications. It provides a series of tools to manage the application lifecycle, including configuration, deployment, monitoring, and scaling, ensuring smooth application operation in the cloud environment. A target application refers to a new application project created through the cloud application management platform's Web (World Wide Web) interface or API (Application Programming Interface) interface. Application configuration data refers to a data set used to describe the various attributes and parameters of the application; the application name refers to the identifier or name of the target application; the application description refers to a brief description of the target application, including its functions, objectives, and other information; database parameters refer to database configuration-related information, such as database type, connection information, user credentials, and access permissions; build commands refer to commands or scripts used to compile, package, or build applications; and run commands refer to commands or scripts used to start and run applications. A candidate technology stack refers to a set of technical tools, frameworks, and programming languages that can be selected to support application development and operation. The target technology stack refers to the technology combination selected from the candidate technology stacks and ultimately determined to be used to develop and run the target application. Candidate databases refer to different types of databases that can be selected as target application databases, such as relational databases and non-relational databases. The target database refers to the database selected from the candidate databases and ultimately used to store application data.
[0033] Specifically, a target application is created through the Web or API interface of the cloud application management platform; a target technology stack is selected from candidate technology stacks based on the application configuration data of the target application, and a target database is determined from candidate databases.
[0034] In an optional embodiment, before determining the target technology stack from the candidate technology stacks based on the application configuration data of the target application, and determining the target database from the candidate databases, it is also necessary to prepare the target server and ensure that its operating system supports Docker and SSH connections; and install and configure the Docker environment on the target server; install the cloud application management platform on the target server, and access the cloud application management platform for initial configuration, including creation of an administrator account and basic settings.
[0035] S120 : Based on the target technology stack and the target database, and according to the application configuration data, determine an initial application environment of the target application.
[0036] In this embodiment, the initial application environment refers to the initial operating environment of the application created based on the target technology stack and target database, combined with other information in the application configuration data; this includes the operating system, software dependencies, database configuration, network settings, etc.
[0037] Specifically, configure the basic information of the target application on the cloud application management platform, including the name, description, Git repository address, and build and run commands to obtain the initial application environment of the target application; select the target database in the initial application environment, and configure the basic parameters of the target database, such as name, user, password, connection port, etc.
[0038] S130: Determine a candidate application environment based on the initial application environment, the code pull triggering condition of the target code repository, and the application dependency data in the application configuration data.
[0039] In this embodiment, the target code repository refers to the place where the application source code and version control are stored, which is usually managed using a version control system such as Git (Global Information Tracker). The code pull trigger condition means that when a specific condition is met, the code in the code repository will be automatically pulled or synchronized to the specified environment or server, triggering the code integration or deployment process; this condition is manually pre-set based on actual conditions or experience values. Application dependency data refers to information that describes the various dependencies (such as libraries, frameworks, services, etc.) required for the application to run; this includes connection information of external services, third-party libraries, API interfaces, etc. Candidate application environments refer to a series of possible application operating environments generated based on the application configuration data and the trigger conditions of the code repository; these environments can be local development environments, test environments, production environments, etc.
[0040] For example, configure the cloud application management platform to automatically pull the latest code from the Git repository and set trigger conditions (such as code submission and Push events); use Docker image building tools, such as Docker configuration files, to define the development environment and application dependencies, and complete the configuration of the Docker configuration file in the cloud application management platform to ensure that the appropriate Docker image can be automatically built after the code is pulled to optimize the initial application environment and obtain a candidate application environment.
[0041] S140 : Determine a target development environment based on the candidate application environment, the application environment configuration data of the target application, the continuous integration pipeline data, and the continuous deployment pipeline data.
[0042] In this embodiment, application environment configuration data describes all environmental configurations required for application operation, including CPU (Central Processing Unit), memory limits, network and storage volume mounts, etc. The target development environment refers to the application development environment ultimately determined based on information such as candidate application environments, application environment configuration data, and CI / CD pipeline data. This includes configurations for development, testing, deployment, and operations, ensuring smooth application development, integration, and deployment.
[0043] Exemplarily, based on the application environment configuration data of the target application, the deployment parameters of the candidate application environment are configured, including CPU, memory limits, network and storage volume mounting, etc., and the service instance is started and the deployment status is monitored using the web interface or API endpoint of the cloud application management platform; based on the continuous integration pipeline data, CI tasks and pipelines are defined in the cloud application management platform, including code building, dependency installation, unit testing and other steps; based on the continuous deployment pipeline data, CD tasks are configured in the cloud application management platform, and application deployment and update strategies are defined to ensure that after the build is completed, deployment to the specified environment (such as development, test or production environment) is automatically triggered to obtain the final target development environment.
[0044] Optionally, after obtaining the target development environment, you can also configure a real-time monitoring function in the target development environment based on the target monitoring indicators of the target development environment, so as to use the real-time monitoring function to monitor the current running data of each service instance in the target development environment and export the current running data at the preset time.
[0045] In this embodiment, the target monitoring indicator refers to the key indicator used to measure the health, performance, stability, etc. of the service instance or system in the target development environment; for example, CPU usage, memory usage, response time, error rate, etc.; by monitoring these indicators, potential problems can be discovered and resolved in a timely manner. The real-time monitoring function refers to the function of real-time tracking and recording the operating data of each service instance in the target development environment; the monitoring system will regularly collect the performance data of the service instance (such as CPU usage, memory usage, request processing time, etc.) and provide immediate feedback on the current operating status to help the team quickly discover and resolve problems. A service instance refers to an instance of a specific service running in the target development environment; a service instance is usually a copy of an application or service, and may be a specific running instance of a microservice in a microservice architecture. Current operating data refers to the performance and status data of a service instance or system at a certain moment; this data includes but is not limited to CPU and memory usage, disk I / O, network traffic, request processing, etc.; the real-time monitoring system will regularly collect this data and provide immediate feedback.
[0046] For example, the real-time monitoring function is enabled in the cloud application management platform to view the operating status, resource usage (CPU, memory), number of connections and other indicators of each service instance; custom monitoring indicators and charts are configured, and monitoring data is exported regularly for analysis and optimization.
[0047] Furthermore, log management can be configured in the target development environment to centrally collect and store application logs. Specifically, the log analysis tools of the cloud application management platform support log search and filtering to quickly locate problems.
[0048] In another optional implementation, user accounts can also be created and managed in the target development environment of the cloud application management platform, and assigned to different roles (such as administrator, developer, viewer), and fine-grained permission control can be set to ensure that different roles can access and operate specific resources and functions; access control based on SSH keys and VPN (Virtual Private Network) can also be configured to ensure that the development team can securely access servers and databases, and record all user operation history, generate audit logs, and provide audit and backtracking functions.
[0049] The embodiment of the present application determines the target technology stack from the candidate technology stacks and the target database from the candidate databases according to the application configuration data of the target application; determines the initial application environment of the target application according to the application configuration data based on the target technology stack and the target database; determines the candidate application environment according to the initial application environment, the code pull trigger conditions of the target code repository and the application dependency data in the application configuration data; determines the target development environment according to the candidate application environment, the application environment configuration data of the target application, the continuous integration pipeline data and the continuous deployment pipeline data. The above technical solution helps to improve the development and deployment efficiency of applications in the development environment by integrating distributed development environment management, continuous integration pipeline and continuous deployment pipeline.
[0050] Example 2
[0051] Figure 2It is a flow chart of a distributed development environment configuration method provided in accordance with the second embodiment of the present application. Based on the technical solutions of the above embodiments, this embodiment refines "determining the candidate application environment according to the initial application environment, the code pull trigger conditions of the target code repository and the application dependency data in the application configuration data" into "determining the mirror configuration file of the initial application environment and the code pull trigger conditions of the target code repository and the application dependency data in the application configuration data; configuring the code pull mechanism and the mirror configuration file in the initial application environment to obtain the candidate application environment". It should be noted that for the parts not described in detail in the embodiments of the present application, please refer to the relevant statements of other embodiments. Figure 2 As shown, the method includes:
[0052] S210 : Determine a target technology stack from candidate technology stacks and a target database from candidate databases according to application configuration data of the target application.
[0053] S220 : Based on the target technology stack and the target database, and according to the application configuration data, determine the initial application environment of the target application.
[0054] Optionally, based on the target technology stack and application configuration data, configure the target application in the cloud application management platform; based on the target technology stack and database parameters, configure the target database in the cloud application management platform, and establish a progressive fallback strategy connection between the target application and the target database to obtain the initial application environment of the target application.
[0055] In this embodiment, the target database refers to the database system configured in the cloud application management platform, which is associated with the target application and is used to store and manage the application's data; the configuration of the database includes selecting the database type, setting parameters, and configuring the connection. Database parameters refer to the specific parameters and options set during the database configuration process, such as storage space, access permissions, backup strategies, etc.; database parameters help optimize the performance and security of the database. A progressive fallback strategy connection refers to a gradual fallback mechanism established between the application and the database; it can gradually fall back to the previous stable state or backup state when a failure occurs to reduce the impact of service interruptions; progressive fallback means that it will not fall back all at once, but will take a step-by-step recovery approach to ensure the continued stability of the system.
[0056] Furthermore, in the process of establishing a progressive fallback strategy connection between the target application and the target database, you can also set a scheduled backup strategy and define the storage location of the backup file; provide a one-click recovery function to restore the database from the specified backup file to ensure data security.
[0057] S230: Determine the image configuration file of the initial application environment and the code pulling mechanism between the initial application environment and the target code repository according to the initial application environment, the code pulling trigger condition of the target code repository, and the application dependency data in the application configuration data.
[0058] In this embodiment, the image configuration file defines the image configuration required for running the application, including the operating system, dependencies, and runtime environment. The image configuration file is typically a Dockerfile or other similarly formatted file that describes how to build the application's container image. The code pull mechanism refers to how the latest code is pulled from the code repository in the target environment. This typically involves automated tools or scripts that automatically pull code from the target code repository and synchronize it with the application environment based on certain triggers (such as code submissions or scheduled tasks).
[0059] Optionally, based on the code pull trigger conditions of the target code repository, determine the code pull mechanism between the initial application environment and the target code repository; use the image building tool to parse the application dependency data in the application configuration data to obtain the image configuration file of the initial application environment.
[0060] S240: Configure the code pulling mechanism and the image configuration file in the initial application environment to obtain a candidate application environment.
[0061] S250: Determine a target development environment based on the candidate application environment, the application environment configuration data of the target application, the continuous integration pipeline data, and the continuous deployment pipeline data.
[0062] Optionally, based on the application environment configuration data of the target application, a service instance is deployed for the candidate application environment to obtain the target application environment; based on the continuous integration pipeline data and the continuous deployment pipeline data, continuous integration tasks and continuous deployment tasks are configured for the target development environment, and a rollback mechanism is set to obtain the target development environment.
[0063] In this embodiment, continuous integration tasks refer to tasks that are automatically executed in the continuous integration process, such as code compilation, unit testing, integration testing, etc. These tasks are usually triggered automatically to ensure the quality of the code after integration. Continuous deployment tasks refer to deployment operations that are automatically executed in the continuous deployment process, such as deploying applications to development, testing, and production environments to ensure that each submission can be deployed smoothly. A rollback mechanism refers to a mechanism that can automatically or manually restore to a previous stable state when an error occurs in deployment or integration during the continuous integration and continuous deployment process. It helps reduce the impact of failures and ensures that the system returns to normal working state.
[0064] To further understand the technical solution of this application, the following description is made of the process of completing the configuration of the development environment, database management, and CI / CD pipeline on the cloud application management platform:
[0065] 1. Create an application and environment: First, create a new application project on the cloud application management platform and select the appropriate technology stack and framework. This is the first step in development environment management. The purpose is to build a basic application environment for the project and ensure that subsequent construction and operation can proceed smoothly.
[0066] 2. Automated code pull and environment build: Once the application and environment are created, you need to set up automated code pull and environment build. This step involves configuring the Git repository's code pull mechanism and Docker image build tool to ensure that the environment automatically synchronizes and builds the latest application image after each code update.
[0067] 3. Service instance deployment: After completing code pull and environment construction, you can configure the deployment of the service instance. This includes setting resource configurations (such as CPU, memory, etc.) and starting the service instance. During this step, the cloud application management platform will ensure that the running instance of the application can be successfully deployed and monitor its status.
[0068] 4. Database Management: After the application is deployed, the database service needs to be configured. Select the appropriate database service in the cloud application management platform and set the basic database parameters. Next, you need to configure a scheduled backup strategy to ensure data security and provide backup and recovery functions. It should be noted that this step can be performed together with the first step to build a basic application environment for the project.
[0069] 5. Configure the continuous integration pipeline: After the application environment is ready, you need to configure CI tasks (such as code building, dependency installation, unit testing, etc.); by defining pipeline steps, you can automate the build and test work after each code update;
[0070] 6. Configure the continuous deployment pipeline: After CI is completed, the next step is to configure the CD task to ensure that after a successful build, the application can be automatically deployed to the specified environment (such as development, test, or production);
[0071] 7. Rollback mechanism: To ensure the stability of the system, the cloud application management platform provides version control and rollback functions, which can quickly restore to a stable version when problems occur in the new version to avoid affecting the normal operation of the system.
[0072] It is understandable that the above steps, from creating the application environment to database management and then to configuring the CI / CD pipeline, are a continuous process that is closely linked. Creating the application environment provides the foundation for subsequent code pulling and building, and service deployment relies on the built environment. Database management ensures data security, and the CI / CD pipeline automates the application building, testing, and deployment process. Finally, a rollback mechanism is used to ensure system stability and flexibility. This not only solves the high cost and complex configuration problems existing in existing technologies, but also further improves development and deployment efficiency.
[0073] The embodiment of the present application determines the target technology stack from the candidate technology stacks and the target database from the candidate databases according to the application configuration data of the target application; determines the initial application environment of the target application based on the target technology stack and the target database according to the application configuration data; determines the mirror configuration file of the initial application environment and the code pulling mechanism between the initial application environment and the target code repository according to the initial application environment, the code pulling trigger conditions of the target code repository and the application dependency data in the application configuration data; configures the code pulling mechanism and the mirror configuration file in the initial application environment to obtain the candidate application environment; determines the target development environment according to the candidate application environment, the application environment configuration data of the target application, the continuous integration pipeline data and the continuous deployment pipeline data. The above technical solution helps to improve the development and deployment efficiency of applications in the development environment by integrating distributed development environment management, continuous integration pipeline and continuous deployment pipeline.
[0074] Example 3
[0075] Figure 3 This is a structural diagram of a distributed development environment configuration device provided in accordance with the third embodiment of the present application, which is applicable to the case of building a distributed development environment on a cloud application management platform. The distributed development environment configuration device can be implemented in the form of hardware and / or software. The distributed development environment configuration device can be configured in a computer device, such as a cloud application management platform. Figure 3 As shown, the device includes:
[0076] A data screening module 310 is configured to determine a target technology stack from candidate technology stacks and a target database from candidate databases based on application configuration data of a target application, wherein the application configuration data includes an application name, an application description, database parameters, a build command, and a run command;
[0077] An application environment determination module 320 is configured to determine an initial application environment of a target application based on a target technology stack and a target database and according to application configuration data;
[0078] An application environment optimization module 330 is configured to determine a candidate application environment based on the initial application environment, the code pull triggering conditions of the target code repository, and the application dependency data in the application configuration data;
[0079] The development environment determination module 340 is used to determine the target development environment based on the candidate application environments, the application environment configuration data of the target application, the continuous integration pipeline data, and the continuous deployment pipeline data.
[0080] The embodiment of the present application determines the target technology stack from the candidate technology stacks and the target database from the candidate databases according to the application configuration data of the target application; determines the initial application environment of the target application according to the application configuration data based on the target technology stack and the target database; determines the candidate application environment according to the initial application environment, the code pull trigger conditions of the target code repository and the application dependency data in the application configuration data; determines the target development environment according to the candidate application environment, the application environment configuration data of the target application, the continuous integration pipeline data and the continuous deployment pipeline data. The above technical solution helps to improve the development and deployment efficiency of applications in the development environment by integrating distributed development environment management, continuous integration pipeline and continuous deployment pipeline.
[0081] Optionally, the application environment optimization module 330 includes:
[0082] a configuration data determining unit, configured to determine an image configuration file of the initial application environment and a code pulling mechanism between the initial application environment and the target code repository based on the initial application environment, a code pulling trigger condition of the target code repository, and application dependency data in the application configuration data;
[0083] The environment optimization unit is used to configure the code pulling mechanism and image configuration file in the initial application environment to obtain a candidate application environment.
[0084] Optionally, a configuration data determination unit is specifically configured to:
[0085] Determine the code pulling mechanism between the initial application environment and the target code repository based on the code pulling trigger conditions of the target code repository;
[0086] The image building tool is used to parse the application dependency data in the application configuration data to obtain the image configuration file of the initial application environment.
[0087] Optionally, the application environment determination module 320 is specifically configured to:
[0088] Based on the target technology stack and application configuration data, configure the target application in the cloud application management platform;
[0089] Based on the target technology stack and database parameters, the target database is configured in the cloud application management platform, and a progressive fallback strategy connection is established between the target application and the target database to obtain the initial application environment of the target application.
[0090] Optionally, the development environment determination module 340 is specifically configured to:
[0091] Deploy service instances for candidate application environments based on the application environment configuration data of the target application to obtain the target application environment;
[0092] According to the continuous integration pipeline data and the continuous deployment pipeline data, the continuous integration tasks and the continuous deployment tasks are configured for the target development environment, and the rollback mechanism is set to obtain the target development environment.
[0093] Optionally, the device further includes a monitoring function configuration module; the monitoring function configuration module is configured to:
[0094] According to the target monitoring indicators of the target development environment, the real-time monitoring function is configured in the target development environment to use the real-time monitoring function to monitor the current running data of each service instance in the target development environment and export the current running data at the preset time.
[0095] The distributed development environment configuration device provided in the embodiments of the present application can execute the distributed development environment configuration method provided in any embodiment of the present application, and has the corresponding functional modules and beneficial effects for executing each distributed development environment configuration method.
[0096] According to an embodiment of the present application, the present application also provides an electronic device, a readable storage medium and a computer program product.
[0097] Example 4
[0098] Figure 4 4 is a schematic diagram of the structure of an electronic device 410 that implements the distributed development environment configuration method of an embodiment of the present application. The electronic device is intended to represent various forms of digital computers, such as laptop computers, desktop computers, workstations, personal digital assistants, servers, blade servers, mainframe computers, and other suitable computers. The electronic device can also represent various forms of mobile devices, such as personal digital processing, cellular phones, smart phones, wearable devices (such as helmets, glasses, watches, etc.) and other similar computing devices. The components shown herein, their connections and relationships, and their functions are merely examples and are not intended to limit the implementation of the present application described and / or required herein.
[0099] like Figure 4As shown, the electronic device 410 includes at least one processor 411, and a memory connected to the at least one processor 411 in communication, such as a read-only memory (ROM) 412, a random access memory (RAM) 413, etc., wherein the memory stores a computer program that can be executed by at least one processor, and the processor 411 can perform various appropriate actions and processes according to the computer program stored in the read-only memory (ROM) 412 or the computer program loaded from the storage unit 418 to the random access memory (RAM) 413. Various programs and data required for the operation of the electronic device 410 can also be stored in the RAM 413. The processor 411, ROM 412 and RAM 413 are connected to each other via a bus 414. An input / output (I / O) interface 415 is also connected to the bus 414.
[0100] Multiple components in electronic device 410 are connected to I / O interface 415, including an input unit 416, such as a keyboard, mouse, etc.; an output unit 417, such as various types of displays, speakers, etc.; a storage unit 418, such as a magnetic disk, optical disk, etc.; and a communication unit 419, such as a network card, modem, wireless communication transceiver, etc. The communication unit 419 allows electronic device 410 to exchange information / data with other devices via a computer network such as the Internet and / or various telecommunication networks.
[0101] Processor 411 can be various general-purpose and / or specialized processing components with processing and computing capabilities. Some examples of processor 411 include, but are not limited to, a central processing unit (CPU), a graphics processing unit (GPU), various specialized artificial intelligence (AI) computing chips, various processors that run machine learning model algorithms, a digital signal processor (DSP), and any appropriate processor, controller, microcontroller, etc. Processor 411 executes the various methods and processes described above, such as the distributed development environment configuration method.
[0102] In some embodiments, the distributed development environment configuration method can be implemented as a computer program that is tangibly contained in a computer-readable storage medium, such as storage unit 418. In some embodiments, part or all of the computer program can be loaded and / or installed on electronic device 410 via ROM 412 and / or communication unit 419. When the computer program is loaded into RAM 413 and executed by processor 411, one or more steps of the distributed development environment configuration method described above can be performed. Alternatively, in other embodiments, processor 411 can be configured to perform the distributed development environment configuration method in any other appropriate manner (e.g., by means of firmware).
[0103] Various embodiments of the systems and techniques described herein can be implemented in digital electronic circuit systems, integrated circuit systems, field programmable gate arrays (FPGAs), application specific integrated circuits (ASICs), application specific standard products (ASSPs), system-on-chip systems (SOCs), programmable logic devices (CPLDs), computer hardware, firmware, software, and / or combinations thereof. These various embodiments can include being implemented in one or more computer programs that are executable and / or interpreted on a programmable system that includes at least one programmable processor, which can be a special purpose or general purpose programmable processor that can receive data and instructions from a storage system, at least one input device, and at least one output device, and transmit data and instructions to the storage system, the at least one input device, and the at least one output device.
[0104] Computer programs for implementing the methods of the present application can be written in any combination of one or more programming languages. These computer programs can be provided to a processor of a general-purpose computer, a special-purpose computer, or other programmable distributed development environment configuration device, so that when the computer program is executed by the processor, the functions / operations specified in the flowcharts and / or block diagrams are implemented. The computer program can be executed entirely on the machine, partially on the machine, as a stand-alone software package, partially on the machine and partially on a remote machine, or entirely on a remote machine or server.
[0105] In the context of the present application, a computer-readable storage medium can be a tangible medium that can contain or store a computer program for use by an instruction execution system, device or equipment or used in combination with an instruction execution system, device or equipment. A computer-readable storage medium can include, but is not limited to, electronic, magnetic, optical, electromagnetic, infrared or semiconductor systems, devices or equipment, or any suitable combination of the foregoing. Alternatively, a computer-readable storage medium can be a machine-readable signal medium. A more specific example of a machine-readable storage medium can include an electrical connection based on one or more lines, a portable computer disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing.
[0106] To provide interaction with a user, the systems and techniques described herein can be implemented on an electronic device having: a display device (e.g., a CRT (cathode ray tube) or LCD (liquid crystal display) monitor) for displaying information to the user; and a keyboard and pointing device (e.g., a mouse or trackball) through which the user can provide input to the electronic device. Other types of devices can also be used to provide interaction with the user; for example, the feedback provided to the user can be any form of sensory feedback (e.g., visual feedback, auditory feedback, or tactile feedback); and input from the user can be received in any form (including acoustic input, voice input, or tactile input).
[0107] The systems and techniques described herein can be implemented in a computing system that includes back-end components (e.g., as a data server), or a computing system that includes middleware components (e.g., an application server), or a computing system that includes front-end components (e.g., a user computer with a graphical user interface or web browser through which a user can interact with implementations of the systems and techniques described herein), or a computing system that includes any combination of such back-end components, middleware components, or front-end components. The components of the system can be interconnected by any form or medium of digital data communication (e.g., a communication network). Examples of communication networks include: a local area network (LAN), a wide area network (WAN), a blockchain network, and the Internet.
[0108] A computing system may include clients and servers. The clients and servers are typically remote from each other and typically interact via a communication network. This client-server relationship arises through computer programs running on the respective computers, creating a client-server relationship. The server may be a cloud server, also known as a cloud computing server or cloud host. This server is a hosting product within the cloud computing service ecosystem that addresses the management difficulties and limited scalability of traditional physical hosting and VPS services.
[0109] It should be understood that the various forms of the processes shown above can be used to reorder, add, or delete steps. For example, the steps described in this application can be performed in parallel, sequentially, or in a different order, as long as the desired results of the technical solution of this application can be achieved. This is not limited herein.
[0110] The above specific embodiments do not constitute a limitation on the scope of protection of this application. Those skilled in the art will appreciate that various modifications, combinations, sub-combinations, and substitutions may be made based on design requirements and other factors. Any modifications, equivalent substitutions, and improvements made within the spirit and principles of this application shall be included within the scope of protection of this application.
Claims
1. A distributed development environment configuration method, characterized in that: Applied to a cloud application management platform; the method includes: Determining a target technology stack from candidate technology stacks and a target database from candidate databases based on application configuration data of a target application; wherein the application configuration data includes an application name, an application description, database parameters, a build command, and a run command; Determining an initial application environment of the target application based on the target technology stack and the target database and according to the application configuration data; Determining a candidate application environment based on the initial application environment, a code pull trigger condition of the target code repository, and application dependency data in the application configuration data; A target development environment is determined based on the candidate application environment, the application environment configuration data of the target application, the continuous integration pipeline data, and the continuous deployment pipeline data.
2. The method according to claim 1, characterized in that The determining of a candidate application environment according to the initial application environment, a code pull trigger condition of a target code repository, and application dependency data in the application configuration data includes: Determining, based on the initial application environment, a code pull trigger condition of the target code repository, and application dependency data in the application configuration data, an image configuration file of the initial application environment and a code pull mechanism between the initial application environment and the target code repository; The code pulling mechanism and the mirror configuration file are configured in the initial application environment to obtain a candidate application environment.
3. The method according to claim 2, characterized in that The determining, based on the initial application environment, the code pulling trigger condition of the target code repository, and the application dependency data in the application configuration data, of the image configuration file of the initial application environment and the code pulling mechanism between the initial application environment and the target code repository includes: Determining a code pulling mechanism between the initial application environment and the target code repository according to a code pulling trigger condition of the target code repository; The application dependency data in the application configuration data is parsed by an image building tool to obtain an image configuration file of the initial application environment.
4. The method according to claim 1, wherein The determining, based on the target technology stack and the target database and according to the application configuration data, an initial application environment of the target application includes: Based on the target technology stack and according to the application configuration data, configuring the target application in the cloud application management platform; Based on the target technology stack and in accordance with the database parameters, the target database is configured in the cloud application management platform, and a progressive fallback strategy connection is established between the target application and the target database to obtain an initial application environment of the target application.
5. The method according to claim 1, wherein Determining a target development environment based on the candidate application environment, the application environment configuration data of the target application, the continuous integration pipeline data, and the continuous deployment pipeline data includes: Deploying a service instance for the candidate application environment according to the application environment configuration data of the target application to obtain a target application environment; According to the continuous integration pipeline data and the continuous deployment pipeline data, continuous integration tasks and continuous deployment tasks are configured for the target development environment, and a rollback mechanism is set to obtain the target development environment.
6. The method according to claim 1, wherein After obtaining the target development environment, the method further includes: According to the target monitoring indicators of the target development environment, a real-time monitoring function is configured in the target development environment, so as to use the real-time monitoring function to monitor the current operation data of each service instance in the target development environment and export the current operation data at a preset time.
7. A distributed development environment configuration device, characterized in that: Configured on a cloud application management platform; the device includes: a data screening module, configured to determine a target technology stack from candidate technology stacks and a target database from candidate databases based on application configuration data of a target application, wherein the application configuration data includes an application name, an application description, database parameters, a build command, and a run command; an application environment determination module, configured to determine an initial application environment of the target application based on the target technology stack and the target database and according to the application configuration data; An application environment optimization module, configured to determine a candidate application environment based on the initial application environment, a code pull trigger condition of a target code repository, and application dependency data in the application configuration data; The development environment determination module is used to determine the target development environment based on the candidate application environment, the application environment configuration data of the target application, the continuous integration pipeline data and the continuous deployment pipeline data.
8. An electronic device, characterized in that: include: one or more processors; a memory for storing one or more programs; When the one or more programs are executed by the one or more processors, the one or more processors implement the distributed development environment configuration method according to any one of claims 1 to 6.
9. A computer-readable storage medium having a computer program stored thereon, characterized in that: When the program is executed by a processor, the distributed development environment configuration method according to any one of claims 1 to 6 is implemented.
10. A computer program product, comprising a computer program, wherein when the computer program is executed by a processor, the computer program implements the distributed development environment configuration method according to any one of claims 1 to 6.