https://www.reddit.com/r/Mastodon/comments/yzp1qz/mastodon_server_hardware_requirements/
This is a discussion on Reddit about what it takes to host a Mastodon instance (Mastodon uses the ActivityPub protocol). The requirements are quite high. One large instance with 29,000 users is hosted on this hardware:
2 AMD 5950 16c/32thread 128GB ram with nvme ssds running sidekiq jobs
1 AMD 5950 16c/32thread 128GB ram with nvme ssds running elasticsearch and redis
1 AMD 5950 16c/32thread 128GB ram with nvme ssds running Postgres DB
2 AMD 5950 16c/32thread 128GB ram with nvme ssds running PUMA (mastodon web app) and nginx (only one is currently powered on - other is being reworked
1 AMD Epyc 32c/64th 400GB ram with 10TB of nvme ssd acting as a s3 storage provider and another nginx/PUMA web front end
This is a total of 96 CPU cores! Another person with 500 users says,
"For those interested in a data point, I am running an instance with nearly 500 users. Currently running on an AWS Lightsail instance with 4GB Ram, 2 vCPU, for $20/month, and an S3 instance for media storage (1TB - nearly full) for $3/month. I am constantly monitoring resources - as the system is running well but nearly topped out.
I will likely be moving to 8GB RAM, 4 vCPU instance, and 2TB S3 in the coming weeks."
These requirements are quite high. I also recently learned that bandwidth is a continuous 1-2 Gbits/s. No wonder Mastodon is having trouble keeping up with the influx of Twitter users!