问题
Modern browsers use different amount of connections per server like described here. It's quite usual that there is well over 100 recources to download in modern web pages. Especially when the servers are located far away from end user, this can cause big performance problems.
I've had bad experiences with load testing tools (LoadRunner and JMeter) because those tools doesn't seem to simulate modern web browsers correctly. I know there is "Use concurrent pool" setting in JMeter and you can simulate different browsers in LR, but what is your experience, are those really working like they should? According to this blog post at least JMeter has some problems.
I know that the main purpose of these load testing tools (LR, JMeter) is to test server side but I think this is still a quite big issue.
回答1:
I cannot say about JMeter but in LoadRunner we simulate the number of concurrent connection as closely as possible to the selected browser. You can see the maximum number of cocurrent connections that were used in the replay log of your run, for example:
Maximum number of concurrent connections per server: 6 [MsgId: MMSG-26000]
We have some presets which are affected by the user agent you selected but this number of cuncurrent connections is updated during recording (i.e. recording will analyze the number of actual concurrent connection you used and change the preset value).
If this is not enough for you, you can manually change the number of concurrent allowed connections by using the following steps:
web_set_sockets_option(“MAX_CONNECTIONS_PER_HOST”,”10”);
web_set_sockets_option(“MAX_TOTAL_CONNECTIONS “,”60”);
Hope this helps.
回答2:
JMeter works the way that it's authors think it should. Over the years, we've encountered serious problems with the accuracy of JMeter when we've tried to compare it to our own load testing tool. Most recently, we tried to compare page load times from JMeter and were frustrated with the difficulty of getting accurate or consistent results. We are a competitor, so take that for what its worth.
回答3:
Perhaps How to make JMeter behave more like a real browser guide can give you some clue.
I would also suggest using HTTP Request Defaults config element and especially Embedded URLs must match
input to filter out any external embedded resources.
来源:https://stackoverflow.com/questions/22012262/load-testing-tools-and-concurrent-connections-per-server-browser-simulation