I'm going to write a guide on setting up NodeBB on Elastic Beanstalk. I spent more or less a day installing and researching this setup. The process is fairly straightforward, although lengthy and not well-documented IMO.
My initial thoughts were that Elastic Beanstalk would be total overkill and not worth the price premium. The cost is about 2-4 times the cost of a VPS per thread. Also, the vCPUs of an EC2 instance are not the same kind of performance as a dedicated VPS instance. However, I was pleasantly surprised with the setup overall.
The forums that would benefit the most from this are forums that see modest traffic during a regular schedule, and large traffic spikes at known times. A single NodeBB instance (thread, t2.micro) can handle roughly 100 concurrent requests at peak performance (according to my tests), while a modest VPS with 4 processes might handle 400 concurrent requests. While the EB instances cost more, they can scale up to an almost unlimited number of instances, and scale down to the lowest cost when at low traffic. So, you could use 2 instances during slow times, and 8 instances during peak times, at a much lower cost then an 8 thread VPS.
This can be VERY beneficial if you have known traffic patterns or planned events. You can schedule minimum and maximum instances based on times, cpu load, users, traffic, and various other things. Scaling is very slow however, so scheduling by time is always the best option.
There are many options to the setup as well. Such as using larger instances with more process per instance. Giving a higher cost per instance, but more users per instance and smoother scaling.
@tango said in Installon AWS Beanstalk:
So would one have to perform a ./nodebb build?
This is how I did it. You could add the build setup to the startup command, but it makes more sense to prebuild, as the instance generation will be that much faster.