My replies started bouncing; guess I sent too many pictures ;)

I'd be perfectly happy with that throughput. What other parameters did you run it under?

JAVA_OPTS: "-server -Xms1g -Xmx4g -XX:MetaspaceSize=96M -XX:MaxMetaspaceSize=256m -Djava.net.preferIPv4Stack=true -Djboss.modules.system.pkgs=org.jboss.byteman -Djava.awt.headless=true -XX:+UseParallelGC -XX:ParallelGCThreads=4"

Run command: bin/standalone.sh -c standalone.xml

My standalone.xml:
            <cache-container name="keycloak" jndi-name="infinispan/Keycloak">
                <local-cache name="realms"/>
                <local-cache name="users">
                    <eviction max-entries="10000" strategy="LRU"/>
                </local-cache>
                <local-cache name="sessions"/>
                <local-cache name="offlineSessions"/>
                <local-cache name="loginFailures"/>
                <local-cache name="work"/>
                <local-cache name="realmVersions">
                    <transaction mode="BATCH" locking="PESSIMISTIC"/>
                    <eviction max-entries="10000" strategy="LRU"/>
                </local-cache>
            </cache-container>

You can see memory starting to thrash at a higher rate (up to 1.4 GB). I only created 22k users in this test.