依赖隔离的含义

问题描述

我正在阅读12-factor-app manifesto,现在在依赖项部分。 但是,依赖隔离是我无法解决的问题。

不幸的是,没有给出任何实际定义,除了12因子应用程序“应在执行过程中使用依赖项隔离工具以 确保没有隐式依赖项从“泄漏”到 ”。

在寻找答案时,我仅发现有关如何在特定语言/框架中实现依赖隔离的问题。

也许这只是我对英语的理解的限制,但是有人可以启发我吗?

解决方法

应用程序依赖项应由应用程序构建本身来管理,而不是从外部或单独进行管理。可以使用maven pom.xml或gradle.build或package.json或Gemfile等工具

,

让我们假设您正在使用Python构建应用程序。您决定使用Django网络框架。 在开始时,您使用function deleteRows() { var sheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName('RAW - Roll Call'); var values = sheet.getDataRange().getValues(); var today = new Date(); var today = Date.now()/86400000 + 25569; var inactivityDate = today-31; for (var i = values.length - 1; i >= 0; i--) { var diffInDays = (today - values[i][0])/(1000*60*60*24); if (diffInDays < 31) { sheet.deleteRow(i+1); } } } 安装Django。 Django 3.1已安装在您的本地系统上。

两个月后,您决定在服务器上托管Django项目。您通过pip install django安装django。这次安装了Django 3.3。由于版本升级,您的代码可能会中断。

为避免此类情况,建议注意Django和Python的版本。您可以在require.txt或piplock文件中添加Django版本。