My code needs many instance of grok, each with a slightly different configuration. But each grok instance keep pattern string in memory, so there is many instance of them. In my case, there is about 200 instances of grok, so each pattern is present 200 times in memory, that's a lot.
My code needs many instance of grok, each with a slightly different configuration. But each grok instance keep pattern string in memory, so there is many instance of them. In my case, there is about 200 instances of grok, so each pattern is present 200 times in memory, that's a lot.
Using String.intern() will help reduce memory footprint: https://dzone.com/articles/string-interning-what-why-and http://java-performance.info/string-intern-in-java-6-7-8/