SFS2X Cluster Edition

Post here your questions about SFS2X. Here we discuss all server-side matters. For client API questions see the dedicated forums.

Moderators: Lapo, Bax

Post Reply
rav
Posts: 82
Joined: 06 Dec 2010, 13:14

SFS2X Cluster Edition

Post by rav »

My company plans to use a cluster of SFS2X servers (2-3 servers in the begining, 3-6 further, it will depends on servers loading and it will be known after load (stress) testing, cluster must holds more than 100000 ccu).
In the current situation I should write a couple of classes (like in cluster demo provided for PRO editon) to make a cluster, but I will lost almost all useful embedded api functional.
So do you plan to produce SFS2X cluster edition?
User avatar
Lapo
Site Admin
Posts: 23438
Joined: 21 Mar 2005, 09:50
Location: Italy

Post by Lapo »

Maybe we should better define what you mean by cluster edition, you can already build clusters of SFS2X.
You can run 2...20... 200 SFS2X nodes in parallel and build very large gaming systems. Of course if you want these 200 servers to all be updated in realtime and see/share the same data you will incur in all sorts of major scalability and architecture problems.
We always suggest to "keep it simple". It's very easy to be taken away with huge clustering projects with Terracotta + large database clusters and whatnot but in actuality the big virtual worlds out there use pretty simple archtitectures and smart choices to avoid to create "monsters" that are impossible to manage.

Further discussion on this topic here:
http://forums.smartfoxserver.com/viewto ... 9469#39469
Lapo
--
gotoAndPlay()
...addicted to flash games
rav
Posts: 82
Joined: 06 Dec 2010, 13:14

Post by rav »

I read it and took a part in these discussion.. but in our game each player should be able to communicate with each others
tchen
Posts: 191
Joined: 11 Dec 2010, 14:14

Post by tchen »

Communicating across servers shouldn't require anyone to resort to using Terracotta.

To address the specific problem of allowing globally accessible chat, consider using a basic relay system. Personally, we use RabbitMQ as an interchange between servers to avoid DB polling. We can attach loggers to the queues as well, replicating some of SFS2X's single-server event system.

The thing is, with 100k CCU, everything you do will need to be asynchronous message based. Whether you throw it into a DB and poll, or you use RabbitMQ, its the same.
rav
Posts: 82
Joined: 06 Dec 2010, 13:14

Post by rav »

Does anybody tried terracotta EHCache for clustering? Guys from terracotta offer to migrate from DSO (http://www.terracotta.org/confluence/di ... acotta+DSO)
Post Reply