The requirements can vary to a large extent depending on the number of users, connections in Kadeck and usage (e.g., how many users use it in parallel).
- Single Core CPU
- 4GB Memory
- 2 GB disk space
- 2+ Core CPU
- 8+ GB Memory
- 3 GB disk space
The following operating systems are supported:
- Microsoft Windows (Server) with support for Java 11+
- Linux distribution with support for Java 11+
- Mac OS with support for Java 11+
At this point in time, Apple Silicon is not fully supported, specifically the Quick Processor does not run.
The number of server connections and their topics has influence on the amount of memory required by the server. Also, the more people work with the data browser simultaneously the more memory is required to process that data.
To pass in any configuration to the JVM use the KA_DECK_OPTS environmental variable. To add the environment variable when running Kadeck as a Docker container:
- -e KA_DECK_OPTS="-Xms8g -Xmx12g"
At the moment, the JVM requires a (user) thread per user that is consuming data in addition to about 40 (user) threads to manage the server.
If the ratio between running threads and available cores is too high (too many running threads for too few CPU (or virtual CPU) cores available), there could be very visible performance degradation.
To resolve this issue, Kadeck can be horizontally (via a load balancer with sticky sessions) or vertically scaled up.