gpt4 book ai didi

java - Spring Boot热部署jar并取消部署

转载 作者:行者123 更新时间:2023-12-02 10:18:31 27 4
gpt4 key购买 nike

很抱歉,这不是典型的 stackoverflow 问题,我不想修复我的某些代码,但我正在尝试为我的应用程序找到解决方案。

上下文:我正在构建一个 Spring Boot 应用程序,它可以公开/使用自定义 API(这些 API 可以是 REST 或其他)。API 连接器可以按照模板在应用程序外部构建和编译。

问题:我需要一种方法来以编程方式加载在应用程序外部编译的代码,并在我的应用程序内部以 0 停机时间运行它,我还需要能够取消部署不再使用的 jar。

最佳答案

我用过OSGi实现something像这样,尽管它只涉及使打包在 jar 中的前端应用程序可用,而不是后端 API。

首先,我创建了一个带有嵌入式 OSGi 运行时(特别是 Apache Felix)的应用程序。这些运行时通常会监视本地目录以查找可以自动加载的 jar 文件;我使用自定义代码来监视 AWS S3 存储桶,并在新文件上传到存储桶时显式加载它们。

我在应用程序中设置了运行时加载或卸载插件时的监听器 services它实现了我的特殊标记接口(interface),并在这些事件发生时注册/取消注册它们。

当请求传入时,我将通过请求路径确定请求针对哪个插件,并从插件存档中加载所需的文件。

关于java - Spring Boot热部署jar并取消部署,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54508638/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com