3
当您无法重现环境时,如何进行测试和优化?
过去,我曾在多种环境中工作过。桌面应用程序,游戏,嵌入式内容,Web服务,命令行作业,网站,数据库报告等。所有这些环境都具有相同的特征:无论它们的复杂性如何,无论它们的大小如何,我都可以始终在我的机器上或开发环境中对应用程序的子集或分片进行测试。 今天我没有。今天,我发现自己处于主要关注可伸缩性的环境中。复制环境的成本过高。截取一部分环境,虽然很合理(某些部分需要模拟,或者不能在单实例模式下使用),但由于破坏了并发性和负载真正的系统遇到。即使是小的“测试”系统也有其缺陷。当您有2个节点和64个节点时,事情的表现会有所不同。 我通常的优化方法(度量,尝试某些操作,验证正确性,度量差异,重复)在这里不起作用,因为我无法有效地对问题的各个部分(并发鲁棒性和性能降低)进行第2步和第3步加载)。这种情况似乎并不独特。在这种环境下执行此类任务的常用方法是什么? 有一些相关的问题: 这个问题与硬件(如频谱分析仪)不可用有关,可以(相对)轻松地进行仿真。 这个问题是关于追踪仅存在于生产环境中的错误,这很有帮助-但是是另一种活动。