HiveMQ

Performance mode help

Morning all, now that things have made it past step 1, I have a single server in production to see how it performs. It’s doing great compared to others, now as the topic subject states, I have 3 issues, so will post 3 topics as there is little overlap and will keep it clean. The first is simply performance mode. For this application if clients lose connections, it’s fine, they will just pickup and re-connect, and there will be multiple servers in an Amazon ELB load balancer, so I updated the config via the doc (Configuration :: HiveMQ Documentation) and think I have everything setup to be in memory (config below).

I did clean the /data folder so it was empty, I restarted and put that into play for some metrics. The data drive is up to 500M of data and I and seeing errors such as;

2021-11-20 02:02:10,258 ERROR - Unable to handle client connection for id HB-00035542.
jetbrains.exodus.ExodusException: Can’t read file /opt/hivemq-ce-2021.2/data/persistence/client_session_subscriptions/040000/client_session_subscriptions_7/00000000000.xd

I have 10 servers in the ELB, one hive in file mode and this one in performance mode, I don’t think that is relevan at all, but is the config here below correct and if so, why would so much be wring to that folder?

<hivemq>

    <listeners>
        <tcp-listener>
            <port>1883</port>
            <bind-address>0.0.0.0</bind-address>
        </tcp-listener>
    </listeners>

    <anonymous-usage-statistics>
        <enabled>false</enabled>
    </anonymous-usage-statistics>

    <persistence>
        <client-session>
            <general>
                <mode>in-memory</mode>
            </general>
            <queued-messages>
                <mode>in-memory</mode>
            </queued-messages>
            <subscriptions>
                <mode>in-memory</mode>
            </subscriptions>
        </client-session>
        <message-flow>
            <incoming>
                <mode>in-memory</mode>
            </incoming>
            <outgoing>
                <mode>in-memory</mode>
            </outgoing>
        </message-flow>
        <retained-messages>
            <mode>in-memory</mode>
        </retained-messages>
        <publish-payloads>
            <mode>in-memory</mode>
        </publish-payloads>
        <attribute>
            <mode>in-memory</mode>
        </attribute>
        <client-group>
            <mode>in-memory</mode>
        </client-group>
    </persistence>
</hivemq>

Thanks so much so far.

Hi @lance.raymond,

It seems like you are using HiveMQ Enterprise 3.4 configuration using HiveMQ Community Edition.
See our Wiki on Github to see configuration options for Community Edition.

Regards,
Florian

Ah … didn’t notice the doc’s were actually different, however I guess that makes sense if options are not there, so from that document, it appears there is only 1 setting;

in-memory

Thats it.