适用于任务关键型财务应用的 Docker 解决方案



最近,我们的高级管理层开始认为Docker可以成为可以降低应用程序部署成本的灵丹妙药,尤其是对于我们的QA测试周期。

我刚刚开始研究Docker解决方案,我怀疑Docker是否适合我们的系统。我们为Linux上的主要交易应用程序运行匹配引擎。因此,部署过程非常复杂和精确。

显然,我们为在这里和那里可以节省的每一微秒而战。在内核中添加额外的"Docker"访问层是否会增加执行时间的微秒?

但困扰我的主要一点是,他们认为可以在Docker容器中建立我们的 QA 测试实验室,而生产部署仍然可以继续使用旧方式,而无需使用Docker......他们称之为"测试系统的一个功能"。对我来说看起来很不合适,就好像应用程序是在 QA 中为Docker设置并在 QA 中进行测试的 - 因此它们必须以相同的形状和形式部署到生产中,部署到Docker容器中。

在这种情况下,我应该在哪里查找有关正确解决方案的建议?论坛/讨论板?

提前感谢您的任何建议。

一些想法:

  • 通过使用 Dockerfile,您可以精细控制运行应用程序的处理环境的配置。您可以放心,您的应用程序运行时环境将在部署目标计算机上保持一致。
  • 在其他映像之上连续构建 Docker 映像的分层方法可在部署期间提供灵活性和效率。仅重建/重新部署所需的内容。
  • 多个容器可以使用相同的映像在同一台计算机上运行。这胜过处理器密集型使用多个虚拟机。
  • Docker 连接器是 QA、系统测试等的理想选择,正是因为您的应用程序运行环境具有可预测性。现在,您如何知道您执行的 QA 与部署时的运行时环境完全匹配?
  • 启动运行不同风格 Linux 的容器非常容易。这有助于您在不同操作系统上进行测试
  • 测试执行时间!这些不是虚拟机的,容器的好处可能超过几毫秒的损失。或者也许不是。只有一种方法可以真正知道。

我们对使用 Docker 容器感到非常满意 - 我们向客户提供容器,将它们用于持续的集成测试等。它胜过直接处理其他人,用我们的 Linux 机器的组装,然后想知道为什么现在事情正在工作或不起作用。

最新更新