-
Notifications
You must be signed in to change notification settings - Fork 4
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
http too many open file #20
Comments
Also from the client part, it seems the maxidle connection (not per host) can also be tuned http://tleyden.github.io/blog/2016/11/21/tuning-the-go-http-client-library-for-load-testing/ // Customize the Transport to have larger connection pool
defaultRoundTripper := http.DefaultTransport
defaultTransportPointer, ok := defaultRoundTripper.(*http.Transport)
if !ok {
panic(fmt.Sprintf("defaultRoundTripper not an *http.Transport"))
}
defaultTransport := *defaultTransportPointer // dereference it to get a copy of the struct that the pointer points to
defaultTransport.MaxIdleConns = 100
defaultTransport.MaxIdleConnsPerHost = 100 |
seems to be deal with ulimit ? my default hard limit is 4096 based on
The file-max can be found on |
- #20, need to run it in docker container to see if the problem is caused by running both the loader and Xephon-K on the host
- didn't see the accept:4 error on server side
- when the limit is changed from 1024 -> 4096, 3000 is the best worker number, after that, the performance decrease a lot - add by putting server in the container, it no longer have the accept error
Close in favor of #60 Adjust ulimit |
When benchmarking in localhost, got the error, could because the loader and the server is in the same machine, need to containerize xephon-k to confirm this.
Seems related to traefik/traefik#157 and traefik/traefik#127 Though I am not sure if the MaxIdleConnection per host applies to server, I know it works for client.
The text was updated successfully, but these errors were encountered: