opencrx / opencrx-documentation

openCRX Documentation
9 stars 10 forks source link

Which options do I have if I want to run OpenCrx on my VPS? #10

Closed javac9 closed 4 years ago

javac9 commented 4 years ago

I'd like to run OpenCrx on my VPS. I guess installing Docker and then running OpenCrx container on the VPS would be the preferred way.

If I can't go with Docker for any reason, I guess the next thing would be to manually deploy all the archives (EAR, etc.) on the server? Is there any specific version of TomEE that I should go with?

Also, are there recommended values of server RAM, cores, etc. for running OpenCrx?

christoph-mueller-crixp commented 4 years ago

Docker is probably easiest, if available. Next best option is to use the openCRX Server Installer (which btw includes the recommended version of TomEE) by following the respective installation guide.

Memory- and CPU-requirements depend on the load (e.g. number of concurrent users, level of activity, etc.) and on the amount of data you're dealing with (assuming the DBMS will be running on the same system, you definitely want all the important indexes to be held in memory). For a single-concurrent-user system with small/moderate data requirements you might get away with as little as 2 cores and 4GB of RAM (on Linux and with PostgreSQL as DMBS, on Windows and with MS SQL you might want to add a few cores). A typical multi-user system for a small company (20 employees) would probably require a box with 8 cores and 16GB to 32GB of memory (OS and JVM 6GB to 8GB, the rest for the DBMS). Since you're talking deployment to VPS, don't overspend and rather start with something moderate; adding CPUs and memory is quite easy in a VPS-environment, isn't it? If supported, you might even be able to add/remove CPU/memory dynamically depending on the load your users are creating (e.g. 2 cores / 4GB at night, 8 cores / 32GB during working hours)