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
Memory is not cleaned up while doing some stress testing #1192
Comments
Hello @vunhatminh241191 , can you verify and prove the issue you are describing? We serve 1million requests every day with a lot fewer memory, and it is cleaned up correctly, in fact this is not Iris "magic", it is just Go + net/tcp and net/http that does the memory cleanup and etc. Iris has nothing to do with "cleanup" memory on a simple app, so it is hard to believe that it has something to do with Iris, can you please post the progress you followed along with the code snippet you used? Thanks! |
if that is a concurrent process, i think we need to take a deep look of it. |
yeap, i think it is due to connection without epolling that cause residual leaks. |
@vunhatminh241191 by-default Iris will make use of a tcp keep alive connection in ln, err := net.Listen("tcp", ":8080")
if err != nil {
// [handle error.]
}
// [...]
app.Run(iris.Listener(ln)) |
@jjhesk it is not that, not everything is releated with the epolling and things like that you all gophers reading the last days from an article that posted some days ago. People that are working with |
thanks for the updates |
@kataras I think you are right. I found some documents which is related to Go's memory leak such as this and this. However, here is my code snippet, please let me know if I do sth wrong:
} func saveUploadedFile(fh *multipart.FileHeader, destDirectory string) (int64, error) {
} I am very appreciated you guys input. Thanks |
I am a newbie with IRIS, so I am appreciated anyone input to my problem
Let's talk about my setup:
First: I have a simple IRIS server, which is only accepting a HTTP POST request to upload and store file (10MB).
Second: I uses vegeta to do some stress testing, where I create 1000 connections per second and post a same file to my server.
My problem is: IRIS server uses all of the memory that I have (16GB). We guess these connections do not release these memory after they finished their thread.
So I don't know if it is a bug or a new feature should be add on? Can anyone help me out please?
Thanks
The text was updated successfully, but these errors were encountered: