Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Load distribution for connections in server mode is not equal. #25

Closed
chhil opened this issue Jul 14, 2020 · 3 comments
Closed

Load distribution for connections in server mode is not equal. #25

chhil opened this issue Jul 14, 2020 · 3 comments
Labels
enhancement New feature or request

Comments

@chhil
Copy link

chhil commented Jul 14, 2020

I don't know if this is a Jmeter concern or a plugin concern or i haven't configured it right.

I have the plugin configured to receive connections from 3 physical servers (6 connections each)

The generated ISO8583 traffic is distributing the load but most go to one server (something like 20K to one and 500 each to the other 2). I was looking for an equal distribution.

For now the workaround is to triplicate the configuration and change the listening ports and have inbound servers connect to 3 different ports.

@tilln
Copy link
Owner

tilln commented Jul 14, 2020

Hi @chhil
Thanks for picking this up. I haven't been able to use/test the server mode much.

For now, the plugin does not define the send-request configuration element, the default value of which is LAST.

See also here for Q2 config examples:
<send-request>LAST</send-request><!--default last connected -->

What you would want instead I suppose is a value of
<send-request>RR</send-request><!-- round-robin -->
which should lead to an equal distribution.

I've quickly put together a snapshot release for you that's untested so perhaps you want to give this a try?
This adds a new config item "Send Method" (any ideas for a better name?) that can be set to RR as above.

@chhil
Copy link
Author

chhil commented Jul 14, 2020

Thanks will give this release a try tomorrow.
Yes the round robin one would work for me.

SendMethod<=> Connection algorithm to use for sending.
Choices in jpos are LAST (use last connection), ALL (use all connections to send the message, basically if there are 10 connections it sends the message on all 10 connections) and RR(use round-robin ).

Your plugin has been of great help, thank you.

@chhil
Copy link
Author

chhil commented Jul 14, 2020

I did a quick test.

  1. Put the snapshot jar in and removed the older jar from the lib/ext.
  2. Had a server listening on a port and configured to send 1 transaction per second.
  3. Changed send method to RR.
  4. Had 3 netcat clients running from command prompt. (ncat 127.0.0.1 20000 -x 1.log). Used 2.log and 3.log for the other 2 connections and got a hexdump of messages in these files.
    Expectation was to see the log files of approximately the same size.
    Results as expected.
    image

I did run it with the send method as "last" too and the results were expected, one log file size was growing.

Thank you for the quick fix.

@chhil chhil closed this as completed Jul 14, 2020
@tilln tilln added the enhancement New feature or request label Jul 14, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

2 participants