I’m running an eventmachine process on heroku, and it seems to be hitting their memory limit of 512MB after an hour or so. I start seeing messages like this:
Error R14 (Memory quota exceeded)
Process running mem=531M(103.8%)
I’m running a lot of events through the reactor, so I’m thinking maybe the reactor is getting backed up (I’m imagining it as a big queue)? But there could be some other reason, I’m still fairly new to eventmachine.
Are there any good ways to profile eventmachine and and get some stats on it. As a simple example, I was hoping to see how many events were scheduled in the queue to see if it was getting backed up and keeping those all in memory. But if anyone has other suggestions I’d really appreciate it.
Thanks!
The leak turned out to be in Mongoid’s
identity_map(nothing to do with EventMachine). SettingMongoid.identity_map_enabled = falseat the beginning of the event machine process resolved it.