3 ms·
If you control object pools yourself and don’t use GC, as the LMAX disrupted does as far as I remember, Java can be blazingly fast.
by dkersten 6y ago
If you control object pools yourself and don’t use GC, as the LMAX disrupted does as far as I remember, Java can be blazingly fast.
- cma 6y agoYou have to make sure all dependencies don't use GC as well right?
- dkersten 6y agoSure, but I'm assuming that if you're writing such high performance limited scope software like the LMAX disruptor, you have few dependencies (looking at their code, it appears that the disruptor code itself has no external dependencies and uses few of the standard library classes outside of NIO bytebuffers).
- MarkyC4 6y agoin LMAX-disruptor's case, they have no runtime dependencies: https://github.com/LMAX-Exchange/disruptor/blob/master/build.gradle#L55-L57 https://github.com/LMAX-Exchange/disruptor/blob/master/build...
- corysama 6y agoMartin Thompson has basically made a career out of writing Java in the style of embedded C because he found enterprise customers that need the performance of embedded C but, being enterprise, insist on absolutely everything being Java.
- afiori 6y agocalling external code from Java adds latency.