我最近开始使用k6,并且非常喜欢这种编写测试的方法。当我开始我的第一个严肃的测试时,我发现每个VU的内存消耗相当高,尽管我的测试不是很大。据我所知,如果脚本很小,每个VU的here内存消耗应该在1-2MB左右。在我的例子中,每个VU的内存消耗大约是5MB。
为了验证一个非常简单的脚本需要多少内存,我创建了一个什么也不做的脚本:
export default function() {
}当我使用2000个用户运行此脚本时
docker run --rm -v /tmp:/tmp loadimpact/k6 run -u 2000 --paused --no-teardown --no-setup /tmp/MemTest.js
我最终的内存使用量为10 GB (每个VU大约5MB )
因此,即使JS是空的,内存使用率也相当高。这是意料之中的吗?
发布于 2019-05-31 21:15:34
不幸的是,你是对的,看起来要么内存使用量增加了,要么我们之前的测量是不正确的。一个简短的调查显示,当前内存使用的主要原因是我们对core.js库的使用。我已经创建了一个新的github问题,以进一步调查我们如何改进或改善这种情况:https://github.com/loadimpact/k6/issues/1036
@user1171006,尝试使用loadimpact/k6:master docker镜像,在我们合并https://github.com/loadimpact/k6/pull/1038之后,VU内存使用量应该几乎减半。你尝试的2000VU测试现在在我的机器上占用了不到5 5GB的RAM。
https://stackoverflow.com/questions/56389653
复制相似问题