Skip to content

Latest commit

History

7 Commits

Folders and files

NameName
Last commit message
Last commit date

Repository files navigation

This project is just to simulate problem with undertow.

Servers necessaries:

  • 1 server nginx
  • 1 server with this project, java and maven installed
  • 1 server with wrk installed

On the server nginx:

Restart nginx each 4 seconds.

while :; do nginx -s stop && nginx ; sleep 4;done

On the server with this project:

mvn clean install

Use the script 'start.sh' to start jvm. Change the script with params if necessaries. Change the param client.backend with the IP of server nginx.

On the server with wrk installed:

wrk --latency --timeout 5 -c 10 -t 10 -d 360000000 http://[HOST_UNDERTOW]:[PORT_UNDERTOW]

TESTING AND CAPTURE THE PROBLEM:

On the server with this project, run tcpdump for watch the packages on the port configured:

tcpdump -i bond0 -n "port [PORT_UNDERTOW]"

After some minutes running, the log of undertow will show in the console:

java.io.IOException: UT001000: Connection closed at io.undertow.client.http.HttpClientConnection$ClientReadListener.handleEvent(HttpClientConnection.java:517) at io.undertow.client.http.HttpClientConnection$ClientReadListener.handleEvent(HttpClientConnection.java:473) at org.xnio.ChannelListeners.invokeChannelListener(ChannelListeners.java:92) at org.xnio.conduits.ReadReadyHandler$ChannelListenerHandler.readReady(ReadReadyHandler.java:66) at org.xnio.nio.NioSocketConduit.handleReady(NioSocketConduit.java:88) at org.xnio.nio.WorkerThread.run(WorkerThread.java:559)

This exception will show some times in the console before stop receive packages in the tcpdump.

Note that just the wrk in execution will stop send request to uproxy, but, if you open new console for new execution of wrk, it will work up until stop again.

About

Simple Undertow reverse proxy

Resources

Stars

0 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages