Which is the recommended Amazon EC2 instance size for creating a large (100k+ users) Ejabberd cluster?
I mean, is it more efficient/less costly to use a larger number of small instances, or a smaller number of large instances?
And are HVM images, for cluster computing, of any use for an Ejabberd cluster, or standard images will be enough for the purpose?
eJabberd can use lots of memory but doesn’t use a lot of CPU so memory is the biggest consideration. It really depends how many connections you’re talking about. 100k+ connections you will need a large instance at least.
From MetaJacks blog (The creater of Strophe, the Javascript XMPP library)
“For Chesspark, we use over a gig of RAM for a few hundred connections. Jabber.org uses about 2.7GB of RAM for its 10k+ connections.”
A large instance has 7.5GB of RAM, which isn’t enough for 100k+ connections. I’d say you’re looking at a 2-3 server cluster of Large instances or a High Memory Instance.
HVM is only really needed when you need hardware support that is not provided by the software virtual machine (e.g. Graphics card processing). Not required for Memory or CPU.