fedimeteo.com is a Fediverse instance that uses the ActivityPub protocol. In other words, users at this host can communicate with people that use software like Mastodon, Pleroma, Friendica, etc. all around the world.
This server runs the snac software and there is no automatic sign-up process.
Here is the CPU usage graph for the last 24 hours of the FediMeteo VM. A full 24 hours, during which a huge number of people are connecting, helped by the traction gained from being among the top stories on Hacker News and Lobsters, as well as the many shares across the Fediverse.
RAM usage? Active, around 450 MB. Then there is cache, ARC, and so on. But in practice, zero swap in use after days of uptime.
39 jails running, 39 snac instances, nginx serving the homepage, and HAProxy. HAProxy caching enabled. ZFS snapshots every 15 minutes, backups via zfs send and receive every hour. The same hourly schedule applies to the recalculation of cities, countries, and followers for the homepage.
All of this on a 4 euro per month FreeBSD VM.
If anyone has doubts about the quality and efficiency of FreeBSD, this is the data to show.
I’ve finally retired the old cron + sh setup for the weather bots. It served us well, but it had a major flaw: if I rebooted the server while it was posting, the job just died halfway. If the server was down during a scheduled slot, the forecast was lost forever.
So, I wrote a custom Python daemon to run inside the FreeBSD Jails.