Spring(Boot):达到 EOL 和不再支持 OSS 有啥区别?

Posted

技术标签:

【中文标题】Spring(Boot):达到 EOL 和不再支持 OSS 有啥区别?【英文标题】:Spring (Boot): what's the difference between reaching EOL and no more OSS support?Spring(Boot):达到 EOL 和不再支持 OSS 有什么区别? 【发布时间】:2021-06-18 15:20:26 【问题描述】:

Spring Framework 区分积极支持的版本、“不再积极支持”的版本以及达到生命周期终止 (EOL) 的版本。事实上,对于 5.0 和 5.1 产品线,在 2020 年 12 月宣布的“不再支持”日期之后没有更多版本。 那么“无主动支持”和 EOL 有什么区别?将例如如果有 CVE,库会更新吗?

同样,Spring Boot 区分 EOL 和 OSS 支持结束。虽然它声称例如2.2.x 系列在 2020 年 10 月之前提供 OSS 支持,并在 2021 年 7 月达到 EOL,直到 2021 年 1 月才发布版本,但之后没有发布。 那么在 OSS 支持结束并达到 EOL 之后,究竟会发生什么?在这里可以期待什么?

【问题讨论】:

【参考方案1】:

两者都使用相同的概念。 EOL 意味着您将不会获得这些版本的任何补丁、帮助或任何形式的任何东西。

OSS 支持结束和“不再支持”意味着您将获得安全补丁以及“严重”错误直到 EOL 日期。

根据我的经验,“支持终止”和 EOL 之间的版本有一些安全更新,但我不记得任何补丁程序的错误。

因此,这意味着,生产中的 EOL 版本应该最终升级,但您可以等待支持终止。但是,我总是建议以比这更快的速度升级。如果我不需要/想要更新的功能,我通常会等待 x.x.1 但此时升级 - 如果您的依赖项需要一些时间才能兼容,Spring Boot 可能会更长一些。即,Tanzu 应用程序服务仍未针对 Spring Boot 2.5 进行更新 - 最简单的检查方法是通过 start.spring.io

【讨论】:

感谢您的回答!您对此有任何来源或评估的基础是什么? 基本上,您提供的链接是我知道的唯一来源,但在一次会议上进行了解释。【参考方案2】:

据我了解,主要区别是。

OSS = 开源支持 - 例如。在该日期之前,您可以通过 github 问题获得支持。

EOL = 生命周期结束 - 即使您通过 VMware(spring 背后的公司)购买了 spring 的商业支持订阅,在该日期之后您将不再获得此版本的任何支持。因此不会再提供任何安全修复程序或补丁。

因此,EOL 对于购买商业支持以更长时间使用该特定版本的企业来说更为关键甚至重要,而 OSS 端则与大多数用户相关。

您已经链接了相关部分 - Spring Boot Support Policy

VMware 还提供商业支持,提供更长的支持期。

对比

当不再支持或以任何形式发布时,Spring Boot 版本将被标记为“生命周期结束”。

回答您在 OSS 结束后可以期待什么的问题。当您遇到问题时,您很可能仍然会修复安全问题,但没有支持(商业支持除外)。

【讨论】:

以上是关于Spring(Boot):达到 EOL 和不再支持 OSS 有啥区别?的主要内容,如果未能解决你的问题,请参考以下文章

Spring Boot缓存注解@Cacheable@CacheEvict@CachePut使用

Spring Boot 属性配置和使用

Spring Boot 属性配置和使用

Spring Cloud Alibaba Spring Boot 微服务集成开发配置

Spring Boot Actuator 的“httptrace”端点在 Spring Boot 2.2.0 中不再存在

Spring Boot (24) 使用Spring Cache集成Redis