gpt4 book ai didi

java - 12 因素应用程序 - 依赖泄漏

转载 作者:行者123 更新时间:2023-12-02 09:11:38 25 4
gpt4 key购买 nike

一直在经历12-factor应用程序 list ,在下面的“依赖项”部分下提到。

A twelve-factor app never relies on implicit existence of system-wide packages. It declares all dependencies, completely and exactly, via a dependency declaration manifest. Furthermore, it uses a dependency isolation tool during execution to ensure that no implicit dependencies “leak in” from the surrounding system. The full and explicit dependency specification is applied uniformly to both production and development.

在Spring boot应用的背景下,以下是我的理解。

  1. 使用任何构建工具(例如 maven/gradle)
  2. 在 pom.xml 或 build.gradle 中声明所有依赖项。

这样的理解正确吗?我无法理解周围系统的“Leak In”部分。

这是否意味着 JVM 也应该位于应用程序内?

最佳答案

我不是 SpringBoot 人。

想象一下,SpringBoot 应用程序需要 n 个环境变量,而您的应用程序已设置了 p 个环境变量。 12 因素应用程序不应假设其余的n-p环境变量已在操作系统中设置。事实上,如果它们是在操作系统级别设置的,那么这些环境变量会泄漏到您的应用程序中,这可能会产生意外的结果。例如,在操作系统级别将堆内存设置为对于您的应用程序来说不“正确”的值。因此,您的应用程序不会在操作系统级别假设堆内存的“慷慨”设置,而是明确地进行设置。

恕我直言,这是一个值得考虑的好因素。

关于java - 12 因素应用程序 - 依赖泄漏,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59373468/

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