Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/306.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/performance/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/sockets/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 我们是否需要以及如何为性能负载模拟真实用户的模式?_Java_Performance_Tomcat_Jmeter - Fatal编程技术网

Java 我们是否需要以及如何为性能负载模拟真实用户的模式?

Java 我们是否需要以及如何为性能负载模拟真实用户的模式?,java,performance,tomcat,jmeter,Java,Performance,Tomcat,Jmeter,我看到很多人都在谈论根据真实的生产站点模拟真实的用户负载,以便更好地分析或处理他们的性能状态/问题。这真的很酷,因为我们可以很容易地发现性能问题,并在我们完成新功能或更新的时候解决它们 以下是往返行程的基本工作流程: 在访问日志中获取用户的实际负载,并从生产中找到相应的详细信息请求 存储这些真实的负载信息并将它们映射到一些快速存储中我的第一个想法是mongodb或类似的东西 启动多线程,将记录的负载推送到本地performance env。 让我们看看接下来会发生什么。。。。。 所以我的第一个问

我看到很多人都在谈论根据真实的生产站点模拟真实的用户负载,以便更好地分析或处理他们的性能状态/问题。这真的很酷,因为我们可以很容易地发现性能问题,并在我们完成新功能或更新的时候解决它们

以下是往返行程的基本工作流程:

在访问日志中获取用户的实际负载,并从生产中找到相应的详细信息请求 存储这些真实的负载信息并将它们映射到一些快速存储中我的第一个想法是mongodb或类似的东西 启动多线程,将记录的负载推送到本地performance env。 让我们看看接下来会发生什么。。。。。 所以我的第一个问题是,你们对模拟真实用户的模式有什么想法,它们真的很有价值还是只是浪费时间

我知道Jmeter有一个AccessLogSampler来模拟http请求,但我的是对Web服务的soapRequest。看来我必须用java做很多实现,但还有其他的巧克力吗

你的想法真的很受欢迎


Vance

如果不模拟实际负载,就不会发现真正的性能问题


真实故事:我曾经在一个以数据库为中心的应用程序中开发了一个新功能。我根据我认为该功能的使用方式编写了性能测试,并进行了相应的优化。然后它被发布,并以我想象不到的方式使用——我的大多数优化都毫无价值。我最好只是实现未优化的功能,并等待真实数据。

Web服务测试有两种主要类型:基于命中的和基于场景的。 基于Hit的方法非常简单,主要关注分发/请求速率。 基于场景的重点是顺序和逻辑/事务速率/并发虚拟用户

基于Hit的负载测试要简单得多,这种方法是真正高负载系统的首选方法。web应用程序中的场景依赖于序列

一切都取决于您的服务或部分服务


我的AccessLogSampler替代品是HTTP原始请求

谢谢。所以,我有两个选择:1。对来自tomcat的每个api使用相同的用户对应的soap请求,并将它们加载到本地环境中。2.对每个api使用一些常见的用户示例,例如平均用户搜索10个项目?并将这些常见的用户示例用于性能负载测试脚本。我很好奇这两个选项将如何影响性能结果,或者哪种方法是正确的。请阅读有关开放式工作负载和封闭式工作负载方法的文章。。。选择你的方式。