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

Crono memory footprint #38

Open
usui1 opened this issue Jan 25, 2016 · 1 comment
Open

Crono memory footprint #38

usui1 opened this issue Jan 25, 2016 · 1 comment
Labels

Comments

@usui1
Copy link

usui1 commented Jan 25, 2016

Crono consumes about 100 MB of RAM at startup. Over time it consumes much more of it. I have a process that read about 4MB XML file, parse it and store some data from it to the database. I run it every 5 minutes. After the first script run, crono consumes about 320MB RAM, second run an crono consumes about 700 MB RAM. After couple more runs I got to over 1 GB of RAM consumed by crono and about 50 MB RAM free. My server got a bit slow because of this. Also tried to run this on heroku and got a lot of memory warnings.

I've managed to work-out a partial solution:, I fork the process at the beginning of the job 'process' method so Ruby creates a new process with my task. This new process also takes up about 320 MB RAM while running but when it finishes, the RAM is free again. This is ok for me but still the Crono process takes up about 100 MB on startup and this amount slowly rizes (couple of MB each job run). After 24h Crono consumes about 500 MB RAM now.

I've tried to read about the memory management in Ruby but no luck to fix this. Any ideas to make this memory footprint stable?

@DannyBen
Copy link

DannyBen commented Apr 15, 2016

I am also suffering from this issue. My crono process on Heroku gets to a point where it triggers an error Error R14 (Memory quota exceeded) after a while, even though my rails application is completely idle.

Would love to hear something from the authors/contributors, to understand if there is a chance for a fix or a workaround.

crono

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

3 participants