A script online method and development platform

Through the script management backend, remote script warehouse and interface container of the development platform, the automatic online launch of project scripts and centralized application of resources are achieved, solving the problems of cumbersome and low efficiency of project launch process in the existing technology, and improving the online efficiency.

CN114047931BActive Publication Date: 2025-03-18HUNAN HAPPLY SUNSHINE INTERACTIVE ENTERTAINMENT MEDIA CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202111347010.9
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2021-11-15
Publication Date
2025-03-18
Estimated Expiration
2041-11-15

AI Technical Summary

Technical Problem

The existing technology requires the development of scripts from scratch when a new project is launched, and separate resources are applied for, resulting in cumbersome and inefficient processes.

Method used

Provides a development platform, including script management backend, remote script warehouse and interface container. It stores project scripts through remote script warehouses, script management backend configuration and push scripts, and interface containers regularly poll and compile and load scripts to achieve automatic online.

Benefits of technology

The project launch process is simplified, manual operations are reduced, and the online efficiency is improved, and the complexity of resource application is reduced by pre-concentrating the application.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN114047931B_ABST
    Figure CN114047931B_ABST
Patent Text Reader

Abstract

The present application discloses a script online method and development platform, wherein the development platform includes: a script management background, a remote script warehouse, and an interface container; the remote script warehouse is used to store uploaded project scripts developed based on the interface container; the script management background is used to respond to user configuration operations, configure basic information of the project and the remote script warehouse address corresponding to the project, and push the project script stored under the remote script warehouse address corresponding to the project to a target online server; the interface container is used to periodically poll the project script newly received by the corresponding target online server, and compile and load the project script through a pre-defined script compiler corresponding to the project to which the project script belongs, and is used to respond to user resource application requests and create resources corresponding to the project in the resource cluster applied for by the development platform.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the technical field of project development, and in particular to an online method and development platform for a script. Background Art

[0002] As the scale of the enterprise and the business continue to expand, new online projects will be added accordingly. Therefore, developers are required to continuously develop and launch new projects.

[0003] When a new project is launched, it is necessary to redevelop the project script and apply for separate resources for deployment according to the needs of the project, such as applications, databases, etc. Finally, the project script is manually launched on the designated online service.

[0004] However, the existing method requires that every time a new project is launched, all processes must be executed from scratch. Not only scripts need to be developed, but also separate resources need to be applied for, and after approval, resources need to be deployed, and finally the project needs to be launched manually. Therefore, the existing method is not only costly, but also too cumbersome, making the launch efficiency of new projects too low. Summary of the invention

[0005] Based on the above-mentioned deficiencies in the prior art, the present application provides a script online method and development platform to solve the problem of low efficiency of the existing project development online method.

[0006] In order to achieve the above objectives, this application provides the following technical solutions:

[0007] The first aspect of the present application provides a development platform, including:

[0008] Script management background, remote script warehouse, interface container;

[0009] The remote script repository is used to store uploaded project scripts developed based on the interface container;

[0010] The script management backend is used to respond to the user's configuration operation, configure the basic information of the project and the remote script warehouse address corresponding to the project, and push the project script stored in the remote script warehouse address corresponding to the project to the target online server;

[0011] The interface container is used to periodically poll the corresponding target online server for the latest received project script, and compile and load the project script through a pre-defined script compiler corresponding to the project to which the project script belongs, and to respond to the user's resource application request and create resources corresponding to the project in the resource cluster applied for by the development platform.

[0012] Optionally, in the above development platform, the interface container includes:

[0013] Interface access component, script compilation loader component, resource tenant access component;

[0014] The interface access component is used to respond to the user's writing operation and generate a project script for the project according to the project input and output;

[0015] The script compiler loader component is used to respond to the compiler definition operation of the user, define the script compiler corresponding to the project, and periodically poll the online server that deploys the interface container for the latest received project script, and compile and dynamically load the project script through the script compiler corresponding to the project to which the project script belongs;

[0016] The resource tenant access component is used to respond to the user's resource application request and create resources corresponding to the project in the resource cluster applied for by the development platform.

[0017] Optionally, in the above development platform, the interface container further includes:

[0018] The resource access protection component is used to allocate fixed thread pool resources to each project, and to allocate fixed thread pool resources to each third-party service that each project depends on.

[0019] Optionally, in the above development platform, the interface access component is further used to:

[0020] The interceptor is used to intercept the data entering the interface access component that does not meet the requirements.

[0021] A second aspect of the present application provides a script launch method, which is applied to a development platform, wherein the development platform includes a script management background, a remote script warehouse, and an interface container. The script launch method includes:

[0022] The remote script warehouse stores uploaded project scripts developed based on the interface container;

[0023] The script management backend responds to the user's configuration operation, configures the basic information of the project and the remote script warehouse address corresponding to the project;

[0024] The script management backend pushes the project script stored in the remote script repository address corresponding to the project to the target online server;

[0025] The interface container periodically polls the target online server for the project script most recently received, and compiles and loads the project script through a predefined script compiler corresponding to the project to which the project script belongs.

[0026] Optionally, in the above-mentioned script online method, before the script management background pushes the project script stored in the remote script repository address corresponding to the project to the target online server, it also includes:

[0027] The script management backend determines whether there is an online server corresponding to the specified project;

[0028] If it is determined that there is an online server corresponding to the specified project, the online server corresponding to the specified project is determined as the target online server;

[0029] If it is determined that the online server corresponding to the specified project does not exist, all online servers are determined as target online servers.

[0030] Optionally, in the above-mentioned script online method, the script management backend pushes the project script stored in the remote script repository address corresponding to the project to a designated online server, including:

[0031] The script management backend pushes the project script stored in the remote script repository address corresponding to the project to the designated directory of the local repository of the target online server.

[0032] Optionally, in the above-mentioned script online method, the interface container is used to periodically poll the project script that is newly received by the corresponding target online server, and compile and load the project script through a predefined script compiler corresponding to the project to which the project script belongs, including:

[0033] The interface container is used to periodically poll each project folder under a specified directory of the local warehouse of the target online server;

[0034] If the latest received project script is polled, the project script is compiled and loaded through the script compiler corresponding to the project to which the project script belongs.

[0035] Optionally, in the above script online method, it also includes:

[0036] The interface container responds to the user's resource application request and creates resources corresponding to the project in the resource cluster applied for by the development platform.

[0037] Optionally, in the above script online method, it also includes:

[0038] The interface container allocates fixed thread pool resources to each project, and allocates fixed thread pool resources to each third-party service that each project depends on.

[0039] The embodiment of the present application provides a development platform, including a script management background, a remote script warehouse, and an interface container. Among them, the remote script warehouse is used to store uploaded project scripts developed based on the interface container, the script management background is used to respond to the user's configuration operation, configure the basic information of the project and the remote script warehouse address corresponding to the project, and push the project script stored under the remote script warehouse address corresponding to the project to the target online server, the interface container is used to periodically poll the corresponding target online server for the latest received project script, and compile and load the project script through the pre-defined script compiler corresponding to the project to which the project script belongs, so that only the project script needs to be written and the corresponding information configured to achieve the automatic launch of the project, without the need for manual operation, thereby improving the efficiency of the launch. In addition, the interface container is also used to respond to the user's resource application request, and create the resources corresponding to the project in the resource cluster applied for by the development platform, so that by pre-centrally applying for resources, it can be directly allocated when there is a new project, and it is no longer necessary to apply for separate resources every time, thereby also improving the efficiency of the launch. BRIEF DESCRIPTION OF THE DRAWINGS

[0040] In order to more clearly illustrate the embodiments of the present application or the technical solutions in the prior art, the drawings required for use in the embodiments or the description of the prior art will be briefly introduced below. Obviously, the drawings described below are only embodiments of the present application. For ordinary technicians in this field, other drawings can be obtained based on the provided drawings without paying any creative work.

[0041] Figure 1 A schematic diagram of the architecture of a development platform provided in an embodiment of the present application;

[0042] Figure 2 A schematic diagram of the architecture of a parent delegation model provided in an embodiment of the present application;

[0043] Figure 3 A flowchart of a script online method provided in an embodiment of the present application;

[0044] Figure 4 A flowchart of a method for compiling and loading a project script provided in an embodiment of the present application. DETAILED DESCRIPTION

[0045] The following will be combined with the drawings in the embodiments of the present application to clearly and completely describe the technical solutions in the embodiments of the present application. Obviously, the described embodiments are only part of the embodiments of the present application, not all of the embodiments. Based on the embodiments in the present application, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of this application.

[0046] The term "including" and its variations used herein are open inclusions, i.e., "including but not limited to". The term "based on" means "based at least in part on". The term "one embodiment" means "at least one embodiment"; the term "another embodiment" means "at least one additional embodiment"; the term "some embodiments" means "at least some embodiments". The relevant definitions of other terms will be given in the following description.

[0047] It should be noted that the concepts such as "first" and "second" mentioned in the present disclosure are only used to distinguish different devices, modules or units, and are not used to limit the order or interdependence of the functions performed by these devices, modules or units.

[0048] It should be noted that the modifications of "one" and "plurality" mentioned in the present disclosure are illustrative rather than restrictive, and those skilled in the art should understand that unless otherwise clearly indicated in the context, it should be understood as "one or more".

[0049] The present application embodiment provides a development platform, such as Figure 1 As shown, including:

[0050] Script management background, remote script warehouse, interface container.

[0051] Among them, the remote script repository (Script Repo) is used to store uploaded project scripts developed based on the interface container.

[0052] Specifically, developers develop project scripts on their own development machines based on the interface container of the deployed development platform, then store the developed project scripts in the local warehouse of the development machine, and then upload the project scripts in the local warehouse to the remote script warehouse.

[0053] Optionally, the remote script repository may use Git or other code remote repository tools.

[0054] The script management backend (CMDB) is used to respond to user configuration operations, configure the basic information of the project and the remote script warehouse address corresponding to the project, and push the project scripts stored in the remote script warehouse address corresponding to the project to the target online server.

[0055] The API Container is used to periodically poll the latest project script received by the corresponding target online server, compile and load the project script through the pre-defined script compiler corresponding to the project to which the project script belongs, and respond to the user's resource application request to create the corresponding resources of the project in the resource cluster applied for by the development platform.

[0056] The target online server is the designated online server where the current project script needs to be deployed. The script compiler corresponding to the project is the designated script compiler corresponding to the project. It should be noted that one script compiler can correspond to multiple projects.

[0057] It should be noted that the development platform provided by the embodiment of the present application is deployed on each online server. In addition, the interface container in the development platform deployed on each online server periodically polls the latest project scripts pushed and stored locally on the online server, and compiles and loads them, thereby enabling the project scripts to be launched on the online server.

[0058] Optionally, in order to achieve rapid development of the project, in another embodiment of the present application, the interface container includes:

[0059] Interface access component, script compilation loader component, and resource tenant access component.

[0060] The interface access component is used to respond to the user's writing operation and generate a project script of the project according to the project input and output.

[0061] Specifically, the main function of the interface access component is to define the relevant data of the project, and then write some input and output related functions to quickly implement business logic.

[0062] Optionally, the development platform provided by the embodiment of the present application is mainly for pure background projects. Taking the http interface project as an example, the input objects defined in the interface access component are two: the request encapsulation type HttpServletRequest and the response encapsulation type HttpServletResponse of the http protocol, and the output object is defined as HttpResult, which contains the error code code, the prompt message msg and the specific business data returned data.

[0063] After writing the above input and output function scripts in the developed project, you can access the data obtained after executing the script of this function through the request path of the http protocol: "http: / / ip:port / project name / script name".

[0064] Optionally, the interface access component is also used to intercept data that does not meet the requirements among the data entering the interface access component through an interceptor, thereby solving security problems in a unified manner.

[0065] Security issues are issues that all projects need to face and solve, and all project solutions are basically the same, so the interface access component, which is the only entrance and exit of the development platform, implements security policies through interceptors and performs all security defense processing.

[0066] The script compiler loader component is used to respond to the user's compiler definition operation, define the script compiler corresponding to the project, and periodically poll the online server that deploys the interface container for the latest project script received, and compile and dynamically load the project script through the script compiler corresponding to the project to which the project script belongs.

[0067] In the embodiment of the present application, the script compiler loader supports customization of the script compiler, that is, supports a variety of JVM-based script type languages, such as Groovy, Scala, and Clojure, etc. It also supports dynamic loading, and manages the projects by tenant.

[0068] Specifically, the script compiler loader associates all project scripts of the local scene stored in the online server. Specifically, the timing poller scans all project scripts in the local warehouse to determine whether there are any project scripts added, modified or deleted, that is, whether there are any new project scripts pushed, and dynamically loads the new project scripts.

[0069] It should be noted that each directory under the root directory of the local warehouse corresponds to a project, and each project directory can be configured with the basic configuration file of the project, which may include information describing the project's unique identifier, project name, dependent packages, compilation type, etc.

[0070] Specifically, when a script compiler is needed, the ScriptArchiveCompiler interface needs to be implemented, and a series of resources that provide the script language runtime need to be added in plugin mode ScriptCompilerPlugin. Each project in the platform can specify a compiler that it develops and uses a script language. The compiler specified when the project starts will compile the project script into a class file and then load it.

[0071] Optionally, in the embodiment of the present application, based on Figure 2 The parent delegation model of the class loader (ClassLoader) shown realizes the dynamic loading of the compiled project script.

[0072] Specifically, when the timed poller scans the scripts in the local repository and sends new, modified, and deleted messages, the latest project script is loaded using a custom class loader at the project level. After loading is completed, subsequent request processing is transferred to the script in the new custom class loader for processing, and then the old custom class loader is uninstalled to release application server resources, thereby achieving dynamic hot loading.

[0073] The resource tenant access component is used to respond to the user's resource application request and create the resources corresponding to the project in the resource cluster applied for by the development platform.

[0074] In the embodiment of the present application, instead of applying for individual resources every time a new project is launched, a batch of resources are applied for in advance, and then the resources are tenanted and allocated to new projects.

[0075] The resources currently involved in centralized applications are mainly databases, such as MySQL databases, and centralized caches, such as Redis.

[0076] For MySQL database, you can apply for a batch of database servers to form a MySQL cluster. If each project needs to use MySQL database, you can create a new MySQL database from this centralized MySQL cluster. This not only meets the project's demand for resources, but also isolates the MySQL data of each project.

[0077] In addition, the development platform also provides multi-data source encapsulation of MySQL database. The scripts of each project do not need to worry about how to establish a connection with the MySQL database. They only need to give the unique identifier of the project to the development platform, and then they can get the database connection of the MySQL library corresponding to the project to perform operations such as adding, deleting, modifying and checking the database.

[0078] Similarly, for Redis, you can also apply for a batch of servers to form a Redis cluster. The key of the data stored in Redis for each project is uniformly prefixed with a project unique identifier, so that the Redis data of each project is isolated.

[0079] Similarly, the development platform also provides encapsulation of basic Redis operations. The scripts of each project do not need to worry about how Redis establishes a connection. They only need to give the project's unique identifier to the platform to implement the key of basic Redis data operations by uniformly adding the project's unique identifier prefix.

[0080] Optionally, in another embodiment of the present application, the interface container further includes:

[0081] The resource access protection component is used to allocate fixed thread pool resources to each project and to allocate fixed thread pool resources to each third-party service that each project depends on.

[0082] It should be noted that since the development platform is deployed in a process on the online server, the server resources occupied by all project scripts of all development platforms are shared. In order to ensure that when a project has a problem, all resources of the online server are not exhausted, causing other projects to be unable to provide services normally, a resource access protection component is required to isolate project resources.

[0083] Optionally, the component can be implemented using Hystrix, and of course other methods such as Sentinel can also be considered for implementation, and the implementation method is not limited. Specifically, the resource access protection component allocates fixed thread pool resources to each project to ensure that the server resources are not consumed indefinitely, and at the same time provides a circuit breaker and degradation function.

[0084] Similarly, since the development platform deploys many projects, it is inevitable to rely on third-party services, such as requesting other services through http to implement business logic. In order to ensure that the failure of a third-party service that a project relies on in the tenant-based rapid development platform will not cause the time consumption to increase and occupy too many connection resources, causing the failure of the third-party service requests of other projects, the resource access protection component allocates fixed thread pool resources to each third-party service access, and provides a fuse degradation function.

[0085] The embodiment of the present application provides a development platform, including a script management background, a remote script warehouse, and an interface container. Among them, the remote script warehouse is used to store uploaded project scripts developed based on the interface container, the script management background is used to respond to the user's configuration operation, configure the basic information of the project and the remote script warehouse address corresponding to the project, and push the project script stored under the remote script warehouse address corresponding to the project to the target online server, the interface container is used to periodically poll the corresponding target online server for the latest received project script, and compile and load the project script through the pre-defined script compiler corresponding to the project to which the project script belongs, so that only the project script needs to be written and the corresponding information configured to achieve the automatic launch of the project, without the need for manual operation, thereby improving the efficiency of the launch. In addition, the interface container is also used to respond to the user's resource application request, and create the resources corresponding to the project in the resource cluster applied for by the development platform, so that by pre-centrally applying for resources, it can be directly allocated when there is a new project, and it is no longer necessary to apply for separate resources every time, thereby also improving the efficiency of the launch.

[0086] Based on the development platform provided above, the embodiment of the present application provides a script online method, which is applied to the development platform provided above. As mentioned above, the development platform includes a script management background, a remote script warehouse, and an interface container. Figure 3 As shown, a script online method provided in an embodiment of the present application includes the following steps:

[0087] S301. The remote script repository stores uploaded project scripts developed based on the interface container.

[0088] Specifically, developers develop project scripts on their own development machines based on the interface container of the deployed development platform, then store the developed project scripts in the local warehouse of the development machine, and then upload the project scripts in the local warehouse to the remote script warehouse.

[0089] Since the launch of a project often requires the support of corresponding resources, optionally, in another embodiment of the present application, the following may be further included:

[0090] The interface container responds to the user's resource application request and creates resources corresponding to the project in the resource cluster applied for by the development platform.

[0091] That is, in the embodiment of the present application, a large number of resource clusters are applied for in advance, and when a new project is developed, corresponding resources are created for the new project in the resource cluster according to demand.

[0092] Specifically, after the developer defines the data according to the project requirements, he can allocate resources accordingly and further develop the project on the development machine.

[0093] For example, you need to develop an interface project for a user management system, and the project name is: user_manager_api. First, you can define the table structure of the database according to the project requirements, for example, as shown in Table 1. Then apply for MySQL database resources, so as to create a database with the same name as the project name in the MySQL database cluster, and then create the corresponding data table in the database according to Table 1.

[0094] Table 1

[0095]

[0096]

[0097] Then the developer can create a folder corresponding to the project name in the local repository of the development platform deployed on the development machine, and configure the basic configuration information of the project in the folder, for example:

[0098] Among them, this file mainly defines the unique identifier of the project as: user_manager_api, the type of script compiler corresponding to the project is: groovy2, and the additional dependency packages are "javax / servlet" and "javax / servlet / http".

[0099] Assuming that the project has an interface for querying the user's basic information based on the user's name, when developing the corresponding project script, you only need to define a script file named "user_info.groovy" in the project folder, define the corresponding input and output, and then push it to the remote script repository.

[0100] S302: The script management backend responds to the user's configuration operation, configures the basic information of the project and the remote script repository address corresponding to the project.

[0101] The basic information of the project includes information such as the project name and project description, so that the project can be launched online based on the basic information using pre-defined information corresponding to the project and a script compiler.

[0102] The remote script repository address corresponding to a project refers to the address where the project script for the project is stored in the remote script repository.

[0103] S303: The script management backend pushes the project script stored in the remote script repository address corresponding to the project to the target online server.

[0104] The target online server is the online server where the script of the project needs to be launched, which can be one or more specified online servers, or all online servers.

[0105] Optionally, in another embodiment of the present application, before executing step S303, the following steps are further performed:

[0106] The script management backend determines whether there is an online server corresponding to the specified project.

[0107] If it is determined that there is an online server corresponding to the specified project, the online server corresponding to the specified project is determined as the target online server.

[0108] If it is determined that the online server corresponding to the specified project does not exist, all online servers are determined as target online servers.

[0109] Optionally, a specific implementation of step S303 includes:

[0110] The script management backend pushes the project scripts stored in the remote script repository address corresponding to the project to the specified directory of the local repository of the target online server.

[0111] In an embodiment of the present application, in the local warehouse of the online server, one project corresponds to one directory to realize tenant management of the project, so the project script stored in the remote script warehouse address corresponding to the project needs to be pushed to the specified directory of the local warehouse of the target online server.

[0112] S304: The interface container periodically polls the target online server for the latest received project script, and compiles and loads the project script through a predefined script compiler corresponding to the project to which the project script belongs.

[0113] Specifically, the interface container deployed online periodically polls the latest scripts pushed and stored locally, compiles the project scripts through the script compiler, and then loads them through the custom class loader. After the loading is completed, the project scripts are put online.

[0114] Optionally, in another embodiment of the present application, a specific implementation of step S304 is as follows: Figure 4 As shown, including:

[0115] S401. The interface container is used to periodically poll each project folder under a specified directory of a local warehouse of a target online server.

[0116] S402: Determine whether to poll the latest received project script.

[0117] Specifically, each project folder is used to store a project script of a project, so if a new project folder is polled, the script included in the project folder is the latest received project script.

[0118] If the latest received project script is polled, step S403 is executed.

[0119] S403: Compile and load the project script using the script compiler corresponding to the project to which the project script belongs.

[0120] It should be noted that the interface container supports customization of script compilers and class loaders.

[0121] Optionally, in another embodiment of the present application, after executing step S304, the following may be further included:

[0122] The interface container allocates fixed thread pool resources to each project, and allocates fixed thread pool resources to each third-party service that each project depends on.

[0123] Since the development platform is deployed in a process on the online server, all server resources occupied by all project scripts of the development platform are shared. In order to ensure that when a project has a problem, all online server resources will not be exhausted, causing other projects to be unable to provide services normally, fixed thread pool resources are allocated to each project through the interface container, thereby achieving project resource isolation. At the same time, the project can also be fuse-broken and downgraded.

[0124] Similarly, since the development platform deploys many projects, it is inevitable to rely on third-party services, such as requesting other services through http to implement business logic. In order to ensure that the failure of a third-party service that a project relies on in the tenant-based rapid development platform will not cause the time consumption to increase and occupy too many connection resources, causing the failure of the third-party service requests of other projects, it is necessary to allocate fixed thread pool resources to each third-party service that each project relies on, so as to achieve isolation of downstream resource access. Similarly, the relationship between the project and the third-party service can also be fused and downgraded.

[0125] It should be noted that each block in each block diagram and / or flow chart in the embodiment of the present application, and the combination of blocks in the block diagram and / or flow chart, can be implemented by a dedicated hardware-based system that performs a specified function or operation, or can be implemented by a combination of dedicated hardware and computer instructions. In addition, although each operation is depicted in a specific order, this should not be understood as requiring these operations to be performed in the specific order shown or in a sequential order. Under certain circumstances, multitasking and parallel processing may be advantageous.

[0126] Professionals may further appreciate that the units and algorithm steps of each example described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, computer software, or a combination of the two. In order to clearly illustrate the interchangeability of hardware and software, the composition and steps of each example have been generally described in the above description according to function. Whether these functions are performed in hardware or software depends on the specific application and design constraints of the technical solution. Professionals and technicians may use different methods to implement the described functions for each specific application, but such implementation should not be considered to be beyond the scope of this application.

[0127] The above description of the disclosed embodiments enables those skilled in the art to implement or use the present application. Various modifications to these embodiments will be apparent to those skilled in the art, and the general principles defined herein may be implemented in other embodiments without departing from the spirit or scope of the present application. Therefore, the present application will not be limited to the embodiments shown herein, but will conform to the widest scope consistent with the principles and novel features disclosed herein.

Claims

1. A development platform, characterized in that: include: Script management background, remote script warehouse, interface container; The remote script repository is used to store uploaded project scripts developed based on the interface container; The script management backend is used to respond to the user's configuration operation, configure the basic information of the project and the remote script warehouse address corresponding to the project, and push the project script stored in the remote script warehouse address corresponding to the project to the target online server; The interface container is used to periodically poll the corresponding target online server for the latest received project script, and compile and load the project script through a pre-defined script compiler corresponding to the project to which the project script belongs, and to respond to the user's resource application request and create resources corresponding to the project in the resource cluster applied for by the development platform.

2. The development platform according to claim 1, characterized in that: The interface container comprises: Interface access component, script compilation loader component, resource tenant access component; The interface access component is used to respond to the user's writing operation and generate a project script for the project according to the project input and output; The script compiler loader component is used to respond to the compiler definition operation of the user, define the script compiler corresponding to the project, and periodically poll the online server that deploys the interface container for the latest received project script, and compile and dynamically load the project script through the script compiler corresponding to the project to which the project script belongs; The resource tenant access component is used to respond to the user's resource application request and create resources corresponding to the project in the resource cluster applied for by the development platform.

3. The development platform according to claim 2, characterized in that: The interface container further includes: The resource access protection component is used to allocate fixed thread pool resources to each project, and to allocate fixed thread pool resources to each third-party service that each project depends on.

4. The development platform according to claim 2, characterized in that: The interface access component is also used for: The interceptor is used to intercept the data entering the interface access component that does not meet the requirements.

5. A script online method, characterized in that: Applied to a development platform, the development platform includes a script management background, a remote script warehouse, and an interface container. The script launch method includes: The remote script warehouse stores uploaded project scripts developed based on the interface container; The script management backend responds to the user's configuration operation, configures the basic information of the project and the remote script warehouse address corresponding to the project; The script management backend pushes the project script stored in the remote script repository address corresponding to the project to the target online server; The interface container periodically polls the target online server for the project script most recently received, and compiles and loads the project script through a predefined script compiler corresponding to the project to which the project script belongs.

6. The method according to claim 5, characterized in that Before the script management backend pushes the project script stored in the remote script repository address corresponding to the project to the target online server, it also includes: The script management backend determines whether there is an online server corresponding to the specified project; If it is determined that there is an online server corresponding to the specified project, the online server corresponding to the specified project is determined as the target online server; If it is determined that the online server corresponding to the specified project does not exist, all online servers are determined as target online servers.

7. The method according to claim 5, characterized in that The script management backend pushes the project script stored in the remote script repository address corresponding to the project to the designated online server, including: The script management backend pushes the project script stored in the remote script repository address corresponding to the project to the designated directory of the local repository of the target online server.

8. The method according to claim 5, characterized in that The interface container is used to periodically poll the project script that is most recently received by the corresponding target online server, and compile and load the project script through a predefined script compiler corresponding to the project to which the project script belongs, including: The interface container is used to periodically poll each project folder under a specified directory of the local warehouse of the target online server; If the latest received project script is polled, the project script is compiled and loaded through the script compiler corresponding to the project to which the project script belongs.

9. The method according to claim 5, characterized in that Also includes: The interface container responds to the user's resource application request and creates resources corresponding to the project in the resource cluster applied for by the development platform.

10. The method according to claim 5, characterized in that Also includes: The interface container allocates fixed thread pool resources to each project, and allocates fixed thread pool resources to each third-party service that each project depends on.

Citation Information

Patent Citations

  • Multilingual cloud compiling method and system for achieving dynamic interception and extension of system functions

    CN106293808A

  • Method and device for realizing application hot deployment

    CN110716720A