28.08.2010 02:36, Waqas Hussain wrote:
Let's see.. 1M PEP nodes, with say.. 1K subscribers each. And server2
has max 2M resources.

On top, let's assume 10K different client configurations (i.e., 10K
caps hashes).

Here's what it might look like in Prosody:

1. A table of strings with all JIDs (2M resources * 3KB maximum JID
size = 6GB maximum).
2. A table of local accounts mapped to list of subscriptions. Each
subscription is just two pointers (one to a shared caps hash table,
and one to a JID). 1M * 64 bytes = 64MB (just roughly picked 64
bytes).
3. The caps hash table, mapping caps hashes to a list of +notify
namespaces. Assume one caps hash and list takes 4KB, we have 4KB * 10K
= 40MB (strings are shared, so this is likely a lot less).

This is a simplistic view, and the string table for example is strings
interned by Lua. I've tried to pick larger values than I actually
expect to see in the wild (e.g., I assumed everyone has 3KB JIDs).

But still, that's only a bit more than 6GB for a massive number of
nodes and subscriptions. I could even try simulating this, and don't
expect it to kill a server with hardware like jabber.org's.

I made the assumption that there are 10K different caps hashes. Let's
drop that now. Every resource has a unique caps hash (they are
malicious or crazy or something). That's.. 2M * 4K = 8GB of caps data.
The total is still under the 16GB of physical RAM jabber.org has :)

Mind you, this was only a quick back of the envelope calculation :)

Good point :) And now lets take a PEP message, encapsulate it in a multicast message with all subscribers and it will target at least one subscriber with very high probability. Of course, I'm not in a very comfortable position, because it is not so simple to count traffic, but nowadays I can't say if the overhead will be really great because of TLS-compressed links and the fact that lots of clients support PEP :)

--
Regards,
Evgeniy Khramtsov, ProcessOne.
xmpp:x...@jabber.ru.

_______________________________________________
JDev mailing list
Forum: http://www.jabberforum.org/forumdisplay.php?f=20
Info: http://mail.jabber.org/mailman/listinfo/jdev
Unsubscribe: jdev-unsubscr...@jabber.org
_______________________________________________

Reply via email to