Visual studio 2010 Visual Studio负载测试虚拟用户模拟

Visual studio 2010 Visual Studio负载测试虚拟用户模拟,visual-studio-2010,load-testing,Visual Studio 2010,Load Testing,我目前正在编写一个负载测试应用程序,它利用VisualStudio2010的负载测试功能。负载测试将在同一台机器上模拟20个用户,我需要在所有模拟用户之间的内存中共享一些数据 我很惊讶,我找不到回答以下问题的文档: 是什么将每个虚拟用户的运行上下文与另一个分开的?每个虚拟用户是否在自己的进程中运行测试?也许在它自己的应用程序域中?还是仅仅依靠自己的思路?我需要知道,因为如果每个用户都在自己的进程中运行测试,那么所有内存缓存都不是共享的,而是为每个用户创建的,而不是为所有用户创建一次,这对我来说是

我目前正在编写一个负载测试应用程序,它利用VisualStudio2010的负载测试功能。负载测试将在同一台机器上模拟20个用户,我需要在所有模拟用户之间的内存中共享一些数据

我很惊讶,我找不到回答以下问题的文档:


是什么将每个虚拟用户的运行上下文与另一个分开的?每个虚拟用户是否在自己的进程中运行测试?也许在它自己的应用程序域中?还是仅仅依靠自己的思路?我需要知道,因为如果每个用户都在自己的进程中运行测试,那么所有内存缓存都不是共享的,而是为每个用户创建的,而不是为所有用户创建一次,这对我来说是不好的。

您可以使用process Explorer(它是任务管理器的高级版本)来获得答案

运行Visual Studio负载测试并打开Process Explorer。检查是否正在创建新进程。然后找到VisualStudio进程并双击。然后选择.NET性能选项卡,它将显示进程中所有AppDomain的列表


顺便说一下,今天我们发布了一个用于负载测试的Fiddler扩展,名为StresStimulus-。我们将所有虚拟用户保持在同一进程中的不同线程上。

这是迄今为止我找到的最接近的答案

答案是每台机器有一个进程进行负载测试,使用多个线程,但是虚拟用户被“优化”为每个线程工作多个线程


关于您想要做的事情,使用静态构造函数创建静态类将在所有虚拟用户之间获得共享内存块。需要注意的是,这是一个多线程环境,在编写代码时应特别小心。

这可能非常明显,但请记住,任何依赖静态类/变量在虚拟用户之间共享数据的解决方案都不适合多代理设置。