I have set up an AWS EC2 instance to run SWI-Prolog. It will be running as a PEngines server on Ubuntu 18.04 LTS using SWI-Prolog 8.0.3. I chose to install the version available via apt-get instead of compiling it myself. Here are the specs on the instance (i.e. - virtual machine):
Memory: 1GB (890MB free with the SWI-Prolog console loaded)
SSD drive: 30GB
My server code does not load any large tables or data sets. It’s is several thousands of lines of codes. I don’t anticipate storing more than 1 to 2 thousand facts in the dynamic database at any point in time.
Will this unit have enough horsepower to run SWI-Prolog in PEngines mode along with my code?
Also, if any of you have run SWI-Prolog on an AWS EC2 instance and have any tips for me, please share. I’m especially interested in tips that involve avoiding unnecessary performance or throughput bottlenecks.
Also, were there any custom alerts you found useful that helped you learn about the the CPU being close to an overload condition, due to a surge in server traffic? Did you set up something like Monit to request utilization statistics periodically on the instance?