What do your buffers look like when your journal fills up? Based on what they are doing (or not doing) would help identify what/where you need to troubleshoot.
Here’s a post I wrote a while back on Journal filling up that might help with understanding the message ingestion cycle.
Couple additional thoughts…
- min/max for the java heap size should be the same.
- heap size should not be more than 50% of system memory or 32GB, which ever is smaller.
- at 20GB/day, you might consider raising your journal to something more than 3GB. perhaps 10GB? That will give you at least half a day in case something happens to message processing.
- Always leave at lest 1 core for your system. you have 12, allocate no more than 11. you have 8 which is plenty for the load you have.
- consider the infrastructure, what kind of storage do you have? Single Drive? RAID? SAN? SSD? HDD? this can make a big difference once your ingest starts going up or you start having more people in the system running queries, etc.