We are planning to use discourse as a webview in a part of our mobile application with more than 1 million users. We will direct users to the forum with notifications. This means 3-4K users instantly rushing to the forum. Considering the resources that Discourse consumes, what features should a server have to handle such traffic? We are using Digitalocean. Before buying a separate server for the forum, I want to get the opinion of you valuable forum users.
Under normal circumstances, a 4GB / 2 vCPU server can easily run a 4 unicorns / 1 Sidekiq configuration using only half of the available memory.
That said, if Discourse is going to be an integral part off your application you should be running it in a high available mode, including multiple servers and data centers for resilience against failures. It also a good idea to have it auto scale accordingly to traffic. Those are all characteristics of our hosting at discourse.org.