CN116450189A - System, processing method, medium and equipment for software integration - Google Patents

System, processing method, medium and equipment for software integration Download PDF

Info

Publication number
CN116450189A
CN116450189A CN202310313802.7A CN202310313802A CN116450189A CN 116450189 A CN116450189 A CN 116450189A CN 202310313802 A CN202310313802 A CN 202310313802A CN 116450189 A CN116450189 A CN 116450189A
Authority
CN
China
Prior art keywords
unit
task
request information
open source
node
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202310313802.7A
Other languages
Chinese (zh)
Inventor
杨镇
李林珊
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Chongqing Changan Automobile Co Ltd
Original Assignee
Chongqing Changan Automobile Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Chongqing Changan Automobile Co Ltd filed Critical Chongqing Changan Automobile Co Ltd
Priority to CN202310313802.7A priority Critical patent/CN116450189A/en
Publication of CN116450189A publication Critical patent/CN116450189A/en
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

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

Abstract

The invention relates to the technical field of software development, and provides a system for software integration, which comprises: a gateway service module; the business processing module is used for processing the pipeline task request information, generating script template information and constructing a target pipeline task according to the script template information; the scheduling communication module is used for generating task execution request information and judging whether to recycle the dynamic node in a non-working state or not; the task execution module is used for receiving the task execution request information and running the target pipeline task so as to complete the integrated processing of target software; the scheduling service unit is further configured to determine whether a node of the open source integrated unit is in a working state and whether a non-working time of the open source integrated unit is greater than a preset threshold. The invention can reduce programming cost and improve software delivery efficiency.

Description

System, processing method, medium and equipment for software integration
Technical Field
The present application relates to the field of software development technologies, and in particular, to a system, a processing method, a medium, and a device for software integration.
Background
The software integration system is an important tool for guaranteeing software delivery in software development, and can provide convenience for large-scale delivery of software, however, the existing system for software integration often has the problem that the original script template cannot be normally used due to code template change, and the running efficiency of a target pipeline task of the system for software integration is reduced, so that the software delivery efficiency is reduced.
Disclosure of Invention
The invention aims to provide a system for software integration, which solves the problem that the original script template cannot be normally used due to code template change in the prior art; the second purpose is to provide a processing method for software integration; a third object is to provide a medium; a fourth object is to provide an apparatus.
In order to achieve the above purpose, the technical scheme adopted by the invention is as follows:
a system for software integration, the system comprising:
the gateway service module is used for receiving the pipeline task request information and distributing the pipeline task request information;
the business processing module is in communication connection with the gateway service module and is used for processing the pipeline task request information, generating script template information and constructing a target pipeline task according to the script template information;
the scheduling communication module is in bidirectional communication connection with the service processing module and comprises a scheduling service unit, wherein the scheduling service unit is used for generating task execution request information and judging whether to recycle the dynamic node in a non-working state or not;
the task execution module is in communication connection with the scheduling communication module and comprises an open source integration unit, wherein the open source integration unit is used for receiving the task execution request information and running the target pipeline task so as to complete the integration processing of target software;
the scheduling service unit is in communication connection with the open source integrated unit, and is further used for judging whether a node of the open source integrated unit is in a working state or not and whether the non-working time of the open source integrated unit is larger than a preset threshold value or not.
According to the technical means, the business processing module processes the request information of the pipeline task to generate script template information, and constructs the target pipeline task according to the script template information, so that the writing difficulty of software developers to script files can be reduced, compared with the prior art, the script template information is generated, a user can conveniently program the script file directly, programming cost is reduced, programming efficiency is improved, and the scheduling service unit judges whether the node of the open source integrated unit is in a working state and whether the non-working time of the open source integrated unit is greater than a preset threshold value or not so as to judge whether to send a task execution request to the task execution module and recover the dynamic node in the non-working state.
Further, the scheduling service unit determining whether the node of the open source integrated unit is in a working state includes:
when the node is in a non-working state, the scheduling service unit generates task execution request information and sends the task execution request information to a core node;
and when the node is in a working state, judging whether the total node number of the open source integrated unit is smaller than the maximum node number of the open source integrated unit so as to determine whether to send the task execution request information.
According to the technical means, the scheduling service unit is arranged to judge whether the node of the open source integrated unit is in a working state or not, so that whether the target pipeline task needs to be added into the task queue or not is determined, and the utilization efficiency of the node is improved.
Further, the determining whether the total node number of the open source integrated unit is smaller than the maximum node number of the open source integrated unit, to determine whether to send the task execution request information includes:
when the total node number is smaller than the maximum node number, performing node addition processing on the open source integrated unit to generate an added node and sending the task execution request information to the added node;
and when the total node number is greater than or equal to the maximum node number, the scheduling service unit refuses to send the task execution request information.
According to the technical means, the utilization efficiency of the nodes is guaranteed.
Further, the determining whether the non-working time of the open source integrated unit is greater than a preset threshold value includes:
when the non-working time of the open source integrated unit is greater than the preset threshold value, the scheduling service unit carries out recovery processing on the dynamic node in the non-working state;
and when the non-working time of the open source integrated unit is smaller than or equal to the preset threshold value, the scheduling service unit does not recycle the dynamic node in the non-working state.
According to the technical means, the nodes in the non-working state can be recycled, and compared with the existing fixed node quantity, the node recycling method can avoid node waste.
Further, the service processing module includes:
the pipeline management unit is used for generating script template information according to the pipeline task request information, constructing the target pipeline task according to the script template information and synchronously processing the target pipeline task;
the authority authentication unit is in communication connection with the pipeline management unit and is used for receiving the pipeline task request information and authenticating the management of the target pipeline task;
the log recording unit is in bidirectional communication connection with the scheduling communication module and is used for acquiring the pipeline task request information and the log information of the scheduling communication module and processing the log information.
Further, the scheduling communication module further includes:
the basic communication unit is respectively in communication connection with the permission authentication unit and the task execution module, and is used for acquiring a task construction result of the task execution module and sending the task construction result to the service processing module;
and the log management unit is respectively in communication connection with the log recording unit and the task execution module and is used for managing log information.
Further, the task execution module further includes a code integration unit and an information integration unit.
A processing method for software integration, the method comprising:
receiving pipeline task request information, and distributing the pipeline task request information;
processing the pipeline task request information to generate script template information;
processing the script template information to generate a target pipeline task;
judging whether the node of the open source integrated unit is in a working state or not and whether the non-working time of the open source integrated unit is greater than a preset threshold value or not according to the target pipeline task so as to generate task execution request information;
and operating the target pipeline task according to the task execution request information so as to complete the integrated processing of the target software.
An electronic device, the electronic device comprising:
one or more processors;
and storage means for storing one or more programs that, when executed by the one or more processors, cause the electronic device to implement a system for software integration as described above.
A computer readable storage medium, having stored thereon a computer program which, when executed by a processor of a computer, causes the computer to perform a system for software integration as described above.
The invention has the beneficial effects that:
(1) According to the invention, the business processing module is arranged to process the request information of the pipeline task to generate the script template information, and the target pipeline task is constructed according to the script template information, so that the writing difficulty of software developers to script files can be reduced, the programming cost is reduced, and the programming efficiency is improved;
(2) According to the invention, whether the node of the open source integrated unit is in a working state or not and whether the non-working time of the open source integrated unit is larger than the preset threshold value or not are judged by the scheduling service unit, so that whether a task execution request is sent to the task execution module or not and whether the dynamic node in the non-working state is recycled or not is judged, pipeline tasks can be better distributed to each node to work, the utilization efficiency of each node is improved, and the running efficiency of a target pipeline task is improved.
Drawings
The accompanying drawings, which are incorporated in and constitute a part of this specification, illustrate embodiments consistent with the application and together with the description, serve to explain the principles of the application. It is apparent that the drawings in the following description are only some embodiments of the present application, and that other drawings may be obtained from these drawings without inventive effort for a person of ordinary skill in the art. In the drawings:
FIG. 1 is a schematic diagram of an implementation environment of a system for software integration, as shown in an exemplary embodiment of the present application;
FIG. 2 is a schematic diagram of a system for software integration, as shown in an exemplary embodiment of the present application;
FIG. 3 is a flow diagram illustrating a processing method for software integration according to an exemplary embodiment of the present application;
FIG. 4 is a flow chart of step S220 in the embodiment of FIG. 3 in an exemplary embodiment;
FIG. 5 is a flow chart of step S240 in the embodiment of FIG. 3 in an exemplary embodiment;
fig. 6 shows a schematic diagram of a computer system suitable for use in implementing the electronic device of the embodiments of the present application.
Description of element numbers:
110. a client; 120. a proxy service module; 130. a gateway service module;
140. a service processing module; 141. a pipeline management unit; 142. a right authentication unit; 143. a log recording unit;
150. scheduling a communication module; 151. a dispatch service unit; 152. a base communication unit; 153. a log management unit; 154. a Jenkins communication subunit; 155. a Gitlab communications subunit;
160. a task execution module; 161. open source integrated units (Jenkins); 162. a code integration unit (Gitlab); 163. an information integration unit (minion); 200. a server;
700. a computer system; 701. a central processing unit; 702. a read-only memory; 703. a random access memory; 704. a bus; 705. an I/O interface; 706. an input section; 707. an output section; 708. a storage section; 709. a communication section; 710. a driver; 711. removable media.
Detailed Description
Further advantages and effects of the present invention will become readily apparent to those skilled in the art from the disclosure herein, by referring to the accompanying drawings and the preferred embodiments. The invention may be practiced or carried out in other embodiments that depart from the specific details, and the details of the present description may be modified or varied from the spirit and scope of the present invention. It should be understood that the preferred embodiments are presented by way of illustration only and not by way of limitation.
It should be noted that the illustrations provided in the following embodiments merely illustrate the basic concept of the present invention by way of illustration, and only the components related to the present invention are shown in the drawings and are not drawn according to the number, shape and size of the components in actual implementation, and the form, number and proportion of the components in actual implementation may be arbitrarily changed, and the layout of the components may be more complicated.
In the following description, numerous details are set forth in order to provide a more thorough explanation of embodiments of the present invention, it will be apparent, however, to one skilled in the art that embodiments of the present invention may be practiced without these specific details, in other embodiments, well-known structures and devices are shown in block diagram form, rather than in detail, in order to avoid obscuring the embodiments of the present invention.
Firstly, with the development of electronics and intelligence, the software development technology is applied to various fields such as automobile driving, and the system for integrating software is a key tool for ensuring software delivery in the software development technology. The existing system for software integration generally deploys the system by utilizing a containerized deployment method to solve the problem of server resource waste caused by non-containerized deployment of a fixed number of system task nodes. In other application scenarios, the system for software integration for the object may be set according to the actual situation, which is not limited by the embodiments of the present application.
FIG. 1 is a schematic diagram of an implementation environment of a system for software integration, as shown in an exemplary embodiment of the present application. As shown in fig. 1, the client 110 receives the pipeline task request information, and inputs the pipeline task request information into the server 200 for distribution, and after the sequential processing of the proxy service module, the gateway service module, the service processing module, the scheduling communication module and the task execution module in the server 200, the target pipeline task is finally executed by the server 200, so as to complete the integration of the target software. The client 110 shown in fig. 1 may be a smart phone, a smart car, a tablet computer, a notebook computer, or any terminal device supporting software development, but is not limited thereto. The server 200 shown in fig. 1 may be a server, for example, an independent display screen, a server cluster or a distributed system formed by a plurality of physical servers, or a cloud server that provides cloud services, cloud databases, cloud computing, cloud functions, cloud storage, network services, cloud communication, middleware services, domain name services, security services, CDN (Content Delivery Network ), and basic cloud computing services such as big data and an artificial intelligence platform, which are not limited herein. The client 110 may communicate with the server 200 through a wireless network such as 3G (third generation mobile information technology), 4G (fourth generation mobile information technology), 5G (fifth generation mobile information technology), and the like, which is not limited herein. Because the existing system for software integration cannot solve the problem that the original script template cannot be normally used due to code template change, the execution efficiency of the target pipeline task of the system for software integration is reduced, and therefore the delivery efficiency of software is reduced. To solve these problems, embodiments of the present application respectively propose a system for software integration, a processing method for software integration, an electronic device, and a computer-readable storage medium, and these embodiments will be described in detail below.
Referring to fig. 2, fig. 2 is a schematic structural diagram of a system for software integration according to an exemplary embodiment of the present application, and the system for software integration may be a distributed continuous integration, delivery and deployment system (CICD system), but is not limited thereto, and the system for software integration may be other systems. The system may include a proxy service module 120, a gateway service module 130, a traffic processing module 140, a dispatch communication module 150, and a task execution module 160. The proxy service module 120 may be a reverse proxy server (nginix), and is configured to receive the task request information, issue the task request information, and return a response to the client 110. Gateway services module 130 may be configured to receive pipeline task request information and distribute the pipeline task request information. However, the gateway service module 130 may also provide routing, authentication, and hotlinking functions through a protocol converter (spring gateway).
As shown in fig. 2, in an exemplary embodiment, the traffic processing module 140 may be communicatively coupled to the gateway service module 130 for receiving pipeline task request information distributed by the gateway service module 130. The service processing module 140 may include a pipeline management unit 141, a right authentication unit 142, and a log recording unit 143, and the pipeline management unit 141 may generate script template information by processing pipeline task request information, construct a target pipeline task according to the script template information, and perform synchronous processing on the target pipeline task. In addition, pipeline management unit 141 may also manage target pipeline tasks, including construction, modification, deletion, and authorization of pipeline tasks. Specifically, the pipeline management unit 141 may generate script file information for managing the target software according to a structured code template (pipeline stage), and the pipeline management unit 141 may also perform synchronous processing on the target pipeline task and store the target pipeline task into the database in a persistent manner, so that when the pipeline stage template is changed, the pipeline management unit 141 may reassemble the script file information according to the target pipeline task stored in the data in a persistent manner, so as to generate new script file information, and synchronize the new script file information into the task execution module 160 through the scheduling communication module 150. The management of the target software may include pulling, compiling and packing, unit testing, quality checking, deploying, etc. the code of the target software, where when the code of the target software is pulled according to the script file information, the pipeline management unit 141 may determine the code language type and generate script template information. The authority authentication unit 142 may be communicatively connected to the pipeline management unit 141, and is configured to receive pipeline task request information and authenticate management of a target pipeline task. The log recording unit 143 may be respectively communicatively connected to the gateway service module 130 and the scheduling communication module 150, and is configured to receive the pipeline task request information and the log information sent by the scheduling communication module 150, and process the log information. In the log recording unit 143, the log storage function may be implemented by a search server (elastic search), log information may be acquired by a data acquisition unit (beans), and the log information may be collected, analyzed, and filtered by a data processing pipeline (log stack).
As shown in fig. 2, in an exemplary embodiment, the scheduling communication module 150 may be bi-directionally communicatively connected with the service processing module 140, and the scheduling communication module 150 may include a scheduling service unit 151, a base communication unit 152, and a log management unit 153, but not limited thereto, the scheduling communication module 150 may also include other scheduling units. The scheduling service unit 151 may be an open source integrated software (Jenkins) scheduling unit, but not limited thereto, and the scheduling service unit 151 may also be other types of scheduling units. The dispatch service unit 151 may be connected to the pipeline management unit 141 in a bi-directional communication manner, so as to determine whether to send a task execution request and whether to recycle a dynamic node in a non-working state. Specifically, the schedule service unit 151 may determine whether to transmit a task execution request by determining whether a node of the task execution module 160 is in an operating state. When the node is in the non-working state, the scheduling service unit 151 may send a task execution request to the core node, and when the node is in the working state, determine whether the total number of nodes of the task execution module 160 is less than the maximum number of nodes of the task execution module 160, so as to determine whether to send the task execution request. When the total node number of the task execution module 160 is smaller than the maximum node number, the task execution module 160 is subjected to node addition processing to generate an added node and send a task execution request to the added node, and when the total node number of the task execution module 160 is greater than or equal to the maximum node number, the scheduling service unit 151 refuses to send the task execution request. The scheduling service unit 151 may determine whether to recycle the dynamic node in the non-working state by determining whether the non-working time of the task execution module 160 is greater than a preset threshold, when the non-working time of the task execution module 160 is greater than the preset threshold, the scheduling service unit 151 performs recycling processing on the dynamic node in the non-working state, and when the non-working time of the task execution module 160 is less than or equal to the preset threshold, the scheduling service unit 151 does not perform recycling processing on the dynamic node in the non-working state.
As shown in fig. 2, in an exemplary embodiment, the base communication unit 152 may be in bidirectional communication with the rights authentication unit 142 for transmitting authentication information of the rights authentication unit 142 to the task execution module 160. The base communication unit 152 may include a Jenkins communication subunit 154 and a Gitlab communication subunit 155, but is not limited thereto, and the base communication unit 152 may also include other subunits. The task execution module 160 may include an open source integration unit (Jenkins) 161, a code integration unit (Gitlab) 162, and an information integration unit (minion) 163. The Jenkins communication subunit 154 may be communicatively connected to an open source integrated unit (Jenkins) 161, and configured to communicate with the open source integrated unit (Jenkins) 161 of the task execution module 160, obtain a construction result of a pipeline task of the open source integrated unit (Jenkins) 161 by calling a relevant function interface (Jenkins api) of the open source integrated unit 161, and send the task construction result to the service processing module 140. The Gitlab communication subunit 155 may be communicatively coupled to a code integration unit (Gitlab) 162 for communicating with the code integration unit (Gitlab) 162, and for managing code repositories and querying the build results of the code repositories by invoking the relevant function interfaces (Gitlab api) of the code integration unit (Gitlab) 162. The open source integration units (Jenkins) 161 may perform container deployment through an open source application container (Docker) and manage the open source application container (Docker) through an open source system (K8S). The nodes of Jenkins can comprise a main task node, a secondary task node and a dynamic node, wherein the sum of the number of the main task node and the number of the secondary task node is the number of core nodes, and the core nodes of Jenkins always keep an operation state. The number of nodes of the open source integrated unit (Jenkins) 161 may satisfy that the sum of the number of core nodes and the number of dynamic nodes is less than or equal to the total number of nodes. The open source integration unit (Jenkins) 161 is an open source software project, and is a continuous integration tool developed based on java, and is used for monitoring continuous repeated work. The log management unit 153 may be respectively communicatively connected to the log recording unit 143 and the call information integrating unit (minion) 163, so as to manage log information in the log recording unit 143, specifically, the log management unit 153 may be constructed and generated by using the information integrating unit (minion) 163 as an underlying framework, and the log management unit 153 may perform management operations such as uploading, deleting, downloading, etc. on the log information file by calling a relevant function interface (minion api) of the information integrating unit (minion) 163.
Referring to fig. 3, fig. 3 is a flowchart illustrating a processing method for software integration according to an exemplary embodiment of the present application, and it should be understood that the method may be applicable to other exemplary implementation environments and be specifically executed by devices in other implementation environments, and the embodiment is not limited to the implementation environments applicable to the system.
As shown in fig. 3, in an exemplary embodiment, the processing method for software integration may at least include steps S210 to S250, which are described in detail below:
step S210, receiving pipeline task request information and distributing the pipeline task request information.
And step S220, processing the request information of the pipeline task to generate script template information.
And step S230, processing the script template information to generate a target pipeline task.
And step S240, judging whether the node of the open source integrated unit is in a working state or not and whether the non-working time of the open source integrated unit is greater than a preset threshold value or not, and generating task execution request information.
And step S250, running the target pipeline task according to the task execution request information so as to complete the integrated processing of the target software.
As shown in fig. 2 and 3, in an exemplary embodiment, when step S210 is performed, pipeline task request information is received and distribution processing is performed on the pipeline task request information. It should be noted that, the pipeline task information may be acquired based on the gateway service module 130, and the gateway service module 130 may also provide functions such as routing, authentication, and hotlinking through a protocol converter (signaling gateway).
As shown in fig. 4, in an exemplary embodiment, step S220, that is, processing the script template information, generating the target pipeline task may include steps S221 to S222, which are described in detail below:
s221, processing the structured code template according to pipeline task request information to generate script file information;
step S222, code type judgment processing is carried out on the script file information, and script template information is generated.
In an exemplary embodiment, it should be noted that the script template information may be obtained based on the pipeline management unit 141. The structured code template may be a pipeline stage template, but is not limited thereto, and the structured code template may be other types of templates.
As shown in fig. 2 and 3, in an exemplary embodiment, when step S230 is performed, script template information is processed to generate a target pipeline task. Specifically, the target pipeline task may be generated by the pipeline management unit 141, and the pipeline management unit 141 may manage the target pipeline task, including construction, modification, deletion, and authorization of the pipeline task. The target pipeline task may be stored in the database in a persistent manner and synchronized to the open source integration unit (Jenkins) 161, so that when the structured code template is changed, the pipeline management unit 141 may reassemble script file information according to the target pipeline task stored in the data in a persistent manner to generate new script file information, and the authority authentication unit 142 may be communicatively connected to the pipeline management unit 141, and may be configured to receive the pipeline task request information and perform authentication on management of the target pipeline task. The log recording unit 143 may be respectively communicatively connected to the gateway service module 130 and the scheduling communication module 150, and is configured to receive the pipeline task request information and the log information sent by the scheduling communication module 150, and process the log information. In the log recording unit 143, the log storage function may be implemented by a search server (elastic search), log information may be acquired by a data acquisition unit (beans), and the log information may be collected, analyzed, and filtered by a data processing pipeline (log stack).
As shown in fig. 5, in an exemplary embodiment, step S240 is to determine whether the node of the active integrated unit is in an operating state and whether the non-operating time of the active integrated unit is greater than a preset threshold, and generating task execution request information may include steps S241 to S242, which are described in detail below:
step S241, judging whether the node of the open source integrated unit is in a working state, if the node is in a non-working state, generating a task execution request and sending the task execution request to the core node, if the node is in a working state, judging whether the total node number of the open source integrated unit is smaller than the maximum node number of the open source integrated unit, if the total node number is smaller than the maximum node number, performing node addition processing on the open source integrated unit, generating a new node and sending the task execution request to the new node, and if the total node number is greater than or equal to the maximum node number, rejecting sending the task execution request.
Step S242, judging whether the non-working time of the open source integrated unit is greater than a preset threshold, when the non-working time of the open source integrated unit is greater than the preset threshold, the scheduling service unit performs recovery processing on the dynamic node in the non-working state, and when the non-working time of the open source integrated unit is less than or equal to the preset threshold, the scheduling service unit does not perform recovery processing on the dynamic node in the non-working state.
In an exemplary embodiment, it should be noted that, whether the node of the open source integrated unit is in an operating state and whether the non-operating time of the open source integrated unit is greater than a preset threshold is determined, and the task execution request information may be generated based on the scheduling communication module 150. The scheduling communication module 150 may be bi-directionally communicatively connected with the service processing module 140, and the scheduling communication module 150 may include a scheduling service unit 151, a base communication unit 152, and a log management unit 153, but is not limited thereto, and the scheduling communication module 150 may also include other scheduling units. The scheduling service unit 151 may be an open source integrated software (Jenkins) scheduling service unit, but not limited thereto, and the scheduling service unit 151 may be other types of scheduling units. The dispatch service unit 151 may be connected to the pipeline management unit 141 in a bi-directional communication manner, so as to determine whether to send a task execution request and whether to recycle a dynamic node in a non-working state. The base communication unit 152 may be in bidirectional communication with the authority authentication unit 142 for transmitting authentication information of the authority authentication unit 142 to the task execution module 160. The base communication unit 152 may include a Jenkins communication subunit 154 and a Gitlab communication subunit 155, but is not limited thereto, and the base communication unit 152 may also include other subunits. The log management unit 153 may be respectively communicatively connected to the log recording unit 143 and the call information integrating unit (minion) 163, so as to manage log information in the log recording unit 143, specifically, the log management unit 153 may be constructed and generated by using the information integrating unit (minion) 163 as an underlying framework, and the log management unit 153 may perform management operations such as uploading, deleting, downloading, etc. on the log information file by calling a relevant function interface (minion api) of the information integrating unit (minion) 163.
As shown in fig. 2 and 3, in an exemplary embodiment, when step S250 is performed, the target pipeline task is executed according to the task execution request information to complete the integration process of the target software. Specifically, the target pipeline task may run based on the task execution module 160, and the task execution module 160 may include an open source integration unit (Jenkins) 161, a code integration unit (Gitlab) 162, and an information integration unit (minion) 163. The Jenkins communication subunit 154 may be communicatively connected to an open source integrated unit (Jenkins) 161, and configured to communicate with the open source integrated unit (Jenkins) 161 of the task execution module 160, obtain a construction result of a pipeline task of the open source integrated unit (Jenkins) 161 by calling a relevant function interface (Jenkins api) of the open source integrated unit 161, and send the task construction result to the service processing module 140. The Gitlab communication subunit 155 may be communicatively coupled to a code integration unit (Gitlab) 162 for communicating with the code integration unit (Gitlab) 162, and for managing code repositories and querying the build results of the code repositories by invoking the relevant function interfaces (Gitlab api) of the code integration unit (Gitlab) 162. The open source integration units (Jenkins) 161 may perform container deployment through an open source application container (Docker) and manage the open source application container (Docker) through an open source system (K8S). The nodes of Jenkins can comprise a main task node, a secondary task node and a dynamic node, wherein the sum of the number of the main task node and the number of the secondary task node is the number of core nodes, and the core nodes of Jenkins always keep an operation state. The number of nodes of the open source integrated unit (Jenkins) 161 may satisfy that the sum of the number of core nodes and the number of dynamic nodes is less than or equal to the total number of nodes. The open source integration unit (Jenkins) 161 is an open source software project, and is a continuous integration tool developed based on java, and is used for monitoring continuous repeated work.
It should be noted that, the system for software integration provided in the foregoing embodiment and the processing method for software integration provided in the foregoing embodiment belong to the same concept, and the specific manner in which each module and unit perform the operation has been described in detail in the method embodiment, which is not described herein again. In practical applications, the system for software integration provided in the foregoing embodiment may distribute the functions to different functional modules according to needs, that is, the internal structure of the device is divided into different functional modules to complete all or part of the functions described above, which is not limited herein.
As shown in fig. 6, the computer system 700 includes a central processing unit (Central Processing Unit, CPU) 701 that can perform various appropriate actions and processes, such as performing the methods described in the above embodiments, according to a program stored in a Read-Only Memory (ROM) 702 or a program loaded from a storage section 708 into a random access Memory (Random Access Memory, RAM) 703. In the RAM703, various programs and data required for the system operation are also stored. The CPU 701, ROM 702, and RAM703 are connected to each other through a bus 704. An Input/Output (I/O) interface 705 is also connected to bus 704.
The following components are connected to the I/O interface 705: an input section 706 including a keyboard, a mouse, and the like; an output section 707 including a Cathode Ray Tube (CRT), a liquid crystal display (Liquid Crystal Display, LCD), and the like, and a speaker, and a storage section 708 including a hard disk, and the like; and a communication section 709 including a network interface card such as a LAN (Local Area Network ) card, a modem, or the like. The communication section 709 performs communication processing via a network such as the internet. The drive 710 is also connected to the I/O interface 705 as needed. A removable medium 711 such as a magnetic disk, an optical disk, a magneto-optical disk, a semiconductor memory, or the like is installed on the drive 710 as needed, so that a computer program read out therefrom is installed into the storage section 708 as needed.
It should be noted that, the computer readable medium shown in the embodiments of the present application may be a computer readable signal medium or a computer readable storage medium, or any combination of the two. The computer readable storage medium may be, for example, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any combination thereof. More specific examples of the computer-readable storage medium may include, but are not limited to: an electrical connection having one or more wires, a portable computer diskette, a hard disk, a Random Access Memory (RAM), a read-Only Memory (ROM), an erasable programmable read-Only Memory (Erasable Programmable Read Only Memory, EPROM), flash Memory, an optical fiber, a portable compact disc read-Only Memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing. In the present application, a computer-readable signal medium may include a data signal propagated in baseband or as part of a carrier wave, with a computer-readable computer program embodied therein. Such a propagated data signal may take any of a variety of forms, including, but not limited to, electro-magnetic, optical, or any suitable combination of the foregoing. A computer readable signal medium may also be any computer readable medium that is not a computer readable storage medium and that can communicate, propagate, or transport a program for use by or in connection with an instruction execution system, apparatus, or device. A computer program embodied on a computer readable medium may be transmitted using any appropriate medium, including but not limited to: wireless, wired, etc., or any suitable combination of the foregoing.
The flowcharts and block diagrams in the figures illustrate the architecture, functionality, and operation of possible implementations of systems, methods and computer program products according to various embodiments of the present application. Where each block in the flowchart or block diagrams may represent a module, segment, or portion of code, which comprises one or more executable instructions for implementing the specified logical function(s). It should also be noted that, in some alternative implementations, the functions noted in the block may occur out of the order noted in the figures. For example, two blocks shown in succession may, in fact, be executed substantially concurrently, or the blocks may sometimes be executed in the reverse order, depending upon the functionality involved. It will also be noted that each block of the block diagrams or flowchart illustration, and combinations of blocks in the block diagrams or flowchart illustration, can be implemented by special purpose hardware-based systems which perform the specified functions or acts, or combinations of special purpose hardware and computer instructions.
The units involved in the embodiments of the present application may be implemented by means of software, or may be implemented by means of hardware, and the described units may also be provided in a processor. Wherein the names of the units do not constitute a limitation of the units themselves in some cases.
Another aspect of the present application also provides a computer-readable storage medium having stored thereon a computer program which, when executed by a processor of a computer, causes the computer to perform a processing method for software integration as described above. The computer-readable storage medium may be included in the electronic device described in the above embodiment or may exist alone without being incorporated in the electronic device.
The above embodiments are merely illustrative of the principles of the present invention and its effectiveness, and are not intended to limit the invention. Modifications and variations may be made to the above-described embodiments by those skilled in the art without departing from the spirit and scope of the invention. It is therefore intended that all equivalent modifications and changes made by those skilled in the art without departing from the spirit and technical spirit of the present invention shall be covered by the appended claims.

Claims (10)

1. A system for software integration, the system comprising:
the gateway service module is used for receiving the pipeline task request information and distributing the pipeline task request information;
the business processing module is in communication connection with the gateway service module and is used for processing the pipeline task request information, generating script template information and constructing a target pipeline task according to the script template information;
the scheduling communication module is in bidirectional communication connection with the service processing module and comprises a scheduling service unit, wherein the scheduling service unit is used for generating task execution request information and judging whether to recycle the dynamic node in a non-working state or not;
the task execution module is in communication connection with the scheduling communication module and comprises an open source integration unit, wherein the open source integration unit is used for receiving the task execution request information and running the target pipeline task so as to complete the integration processing of target software;
the scheduling service unit is in communication connection with the open source integrated unit, and is further used for judging whether a node of the open source integrated unit is in a working state or not and whether the non-working time of the open source integrated unit is larger than a preset threshold value or not.
2. The system for software integration according to claim 1, wherein the dispatch service unit determining whether the node of the open source integration unit is in an operational state comprises:
when the node is in a non-working state, the scheduling service unit generates task execution request information and sends the task execution request information to a core node;
and when the node is in a working state, judging whether the total node number of the open source integrated unit is smaller than the maximum node number of the open source integrated unit so as to determine whether to send the task execution request information.
3. The system for software integration according to claim 1, wherein the determining whether the total node number of the open source integrated unit is less than the maximum node number of the open source integrated unit to determine whether to send the task execution request information comprises:
when the total node number is smaller than the maximum node number, performing node addition processing on the open source integrated unit to generate an added node and sending the task execution request information to the added node; and
and when the total node number is greater than or equal to the maximum node number, the scheduling service unit refuses to send the task execution request information.
4. The system for software integration according to claim 1, wherein said determining whether the dead time of the open source integrated unit is greater than a preset threshold comprises:
when the non-working time of the open source integrated unit is greater than the preset threshold value, the scheduling service unit carries out recovery processing on the dynamic node in the non-working state;
and when the non-working time of the open source integrated unit is smaller than or equal to the preset threshold value, the scheduling service unit does not recycle the dynamic node in the non-working state.
5. The system for software integration according to claim 1, wherein the business processing module comprises:
the pipeline management unit is used for generating script template information according to the pipeline task request information, constructing the target pipeline task according to the script template information and synchronously processing the target pipeline task;
the authority authentication unit is in communication connection with the pipeline management unit and is used for receiving the pipeline task request information and authenticating the management of the target pipeline task;
the log recording unit is in bidirectional communication connection with the scheduling communication module and is used for acquiring the pipeline task request information and the log information of the scheduling communication module and processing the log information.
6. The system for software integration of claim 1, wherein the dispatch communication module further comprises:
the basic communication unit is respectively in communication connection with the permission authentication unit and the task execution module, and is used for acquiring a task construction result of the task execution module and sending the task construction result to the service processing module;
and the log management unit is respectively in communication connection with the log recording unit and the task execution module and is used for managing log information.
7. The system for software integration according to claim 1, wherein the task execution module further comprises a code integration unit and an information integration unit.
8. A processing method for software integration, the method comprising:
receiving pipeline task request information, and distributing the pipeline task request information;
processing the pipeline task request information to generate script template information;
processing the script template information to generate a target pipeline task;
judging whether the node of the open source integrated unit is in a working state or not and whether the non-working time of the open source integrated unit is greater than a preset threshold value or not according to the target pipeline task so as to generate task execution request information;
and operating the target pipeline task according to the task execution request information so as to complete the integrated processing of the target software.
9. An electronic device, the electronic device comprising:
one or more processors;
storage means for storing one or more programs that, when executed by the one or more processors, cause the electronic device to implement the system for software integration of any of claims 1-7.
10. A computer readable storage medium, having stored thereon a computer program which, when executed by a processor of a computer, causes the computer to perform the system for software integration of any one of claims 1 to 7.
CN202310313802.7A 2023-03-28 2023-03-28 System, processing method, medium and equipment for software integration Pending CN116450189A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310313802.7A CN116450189A (en) 2023-03-28 2023-03-28 System, processing method, medium and equipment for software integration

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310313802.7A CN116450189A (en) 2023-03-28 2023-03-28 System, processing method, medium and equipment for software integration

Publications (1)

Publication Number Publication Date
CN116450189A true CN116450189A (en) 2023-07-18

Family

ID=87121263

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310313802.7A Pending CN116450189A (en) 2023-03-28 2023-03-28 System, processing method, medium and equipment for software integration

Country Status (1)

Country Link
CN (1) CN116450189A (en)

Similar Documents

Publication Publication Date Title
RU2586866C2 (en) Differentiation of set of features of participant of leased medium and user
CN109117252B (en) Method and system for task processing based on container and container cluster management system
CN112306719B (en) Task scheduling method and device
CN110895534A (en) Data splicing method, device, medium and electronic equipment
CN114358921A (en) System switching method, apparatus, device, medium, and program product
CN113722114A (en) Data service processing method and device, computing equipment and storage medium
CN111343220B (en) Repeater, distributed file transmission method, distributed file transmission system, medium and electronic equipment
CN106452815A (en) Informatization management method, device and system
CN112910835B (en) Block chain-based configuration management method, apparatus, system, device, and medium
CN111045928B (en) Interface data testing method, device, terminal and storage medium
CN115686813A (en) Resource scheduling method and device, electronic equipment and storage medium
CN112416980A (en) Data service processing method, device and equipment
CN113010238A (en) Permission determination method, device and system for micro application call interface
CN105592130A (en) Service deployment method and device, and service management method
CN116450189A (en) System, processing method, medium and equipment for software integration
CN112187916B (en) Cross-system data synchronization method and device
CN113472638A (en) Edge gateway control method, system, device, electronic equipment and storage medium
CN111343172A (en) Network access authority dynamic processing method and device
CN111414232A (en) Method and device for processing template data of virtual machine
CN113641966B (en) Application integration method, system, equipment and medium
CN111428107B (en) Multi-center comprehensive web crawler system
CN118585295A (en) Simulation task scheduling method, system, computer equipment and readable storage medium
CN115147963B (en) Vehicle digital key data change analysis method, system, equipment and storage medium
CN111641692B (en) Session data processing method and device and electronic equipment
CN110262756B (en) Method and device for caching data

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination