{"action":"created","issue":{"url":"https://api.github.com/repos/bennidi/eventbus-performance/issues/1","labels_url":"https://api.github.com/repos/bennidi/eventbus-performance/issues/1/labels{/name}","comments_url":"https://api.github.com/repos/bennidi/eventbus-performance/issues/1/comments","events_url":"https://api.github.com/repos/bennidi/eventbus-performance/issues/1/events","html_url":"https://github.com/bennidi/eventbus-performance/issues/1","id":57326422,"number":1,"title":"Large amount of ram used by MBassador","user":{"login":"dorkbox","id":5301521,"avatar_url":"https://avatars.githubusercontent.com/u/5301521?v=3","gravatar_id":"","url":"https://api.github.com/users/dorkbox","html_url":"https://github.com/dorkbox","followers_url":"https://api.github.com/users/dorkbox/followers","following_url":"https://api.github.com/users/dorkbox/following{/other_user}","gists_url":"https://api.github.com/users/dorkbox/gists{/gist_id}","starred_url":"https://api.github.com/users/dorkbox/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/dorkbox/subscriptions","organizations_url":"https://api.github.com/users/dorkbox/orgs","repos_url":"https://api.github.com/users/dorkbox/repos","events_url":"https://api.github.com/users/dorkbox/events{/privacy}","received_events_url":"https://api.github.com/users/dorkbox/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":61,"created_at":"2015-02-11T15:00:18Z","updated_at":"2015-10-03T20:50:50Z","closed_at":null,"body":"Here's some initial tests. I also included JVM memory usage, to help understand the data. I don't think I have the disruptor completely worked out, as it seems really, really slow. One thing I did notice is that the default LBQ setting on MBassador used up to 1 GB of ram. Changing it to have an LBQ of size 16 dropped it to about 512 MB without affecting too much. The disruptor with a ring buffer of size 16 uses ~62 MB. I suspect pooling objects would help.\r\n\r\n\r\n**Linked Blocking Queue (size:Integer.MAX_VALUE)**\r\n![LBQ-intmax-chart](https://cloud.githubusercontent.com/assets/5301521/6149125/d20f15ec-b206-11e4-9526-5b8460f9e72e.jpg)\r\n\r\n**Linked Blocking Queue (size:16)**\r\n![LBQ-16-chart](https://cloud.githubusercontent.com/assets/5301521/6149128/d750f3b8-b206-11e4-8ea1-09d9e4365c80.jpg)\r\n\r\n**Disruptor (2 worker) + ReflectASM**\r\n![Disruptor-2-worker-pool-reflectasm-chart](https://cloud.githubusercontent.com/assets/5301521/6149140/e7c2cc76-b206-11e4-9716-9f1b10095a24.jpg)\r\n"},"comment":{"url":"https://api.github.com/repos/bennidi/eventbus-performance/issues/comments/145288084","html_url":"https://github.com/bennidi/eventbus-performance/issues/1#issuecomment-145288084","issue_url":"https://api.github.com/repos/bennidi/eventbus-performance/issues/1","id":145288084,"user":{"login":"dorkbox","id":5301521,"avatar_url":"https://avatars.githubusercontent.com/u/5301521?v=3","gravatar_id":"","url":"https://api.github.com/users/dorkbox","html_url":"https://github.com/dorkbox","followers_url":"https://api.github.com/users/dorkbox/followers","following_url":"https://api.github.com/users/dorkbox/following{/other_user}","gists_url":"https://api.github.com/users/dorkbox/gists{/gist_id}","starred_url":"https://api.github.com/users/dorkbox/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/dorkbox/subscriptions","organizations_url":"https://api.github.com/users/dorkbox/orgs","repos_url":"https://api.github.com/users/dorkbox/repos","events_url":"https://api.github.com/users/dorkbox/events{/privacy}","received_events_url":"https://api.github.com/users/dorkbox/received_events","type":"User","site_admin":false},"created_at":"2015-10-03T20:50:50Z","updated_at":"2015-10-03T20:50:50Z","body":"I'm busy finishing a fork/fix/rewrite of the Universal TweenEngine (https://github.com/dorkbox/TweenEngine) - as it had some nasty bugs coupled with a really complicated state machine, and I don't want to context switch until it's done (which hopefully is soon. It's tricky, especially concerning things like GC, reducing memory usage and trimming unnecessary calculations."}}