分布式系统的暂存环境



我正在开发一个分布式系统,该系统由几个核心组件组成,这些组件有助于构建用于在大量文件上运行数据处理作业的数据管道。为了管理这些工作,使用了数百名工人。

目前,我正在为项目构建一个阶段/测试环境,这样我们就可以在将更改推向生产之前测试它们的行为。我目前的方法是对核心组件进行1:1的克隆,并且只需要很少的工作人员,然而,这似乎不是一个测试系统所有功能的好环境,比如大规模的调度器行为等等

有什么地方可以让我找到为这样的系统构建登台环境的最佳实践吗?同样的问题也适用于发展环境。

性能测试和功能测试之间有一个重要的区别。

一般来说,在开发环境中,您可以在开发阶段进行测试,以确保配置正常,等等。

在后台环境中,您可以在非常接近生产版本的应用程序版本上进行功能测试。通常,stage-env应该在主分支中对其进行审查和合并后具有应用程序版本。

现在您提到的限制是指性能测试,它的成本更高,因为您需要复制生产环境的规模(理想情况下(。因此,如果这种测试对您的项目至关重要,那么您只需要使用模拟数据(文件(克隆生产环境。

通常,stage-env用于从功能角度测试应用程序(对于给定的输入,它生成预期的输出(。因此,您可以在这里有2到3个工作人员和一些文件来激活您需要的用例。

最新更新