Hoping someone can point me to a resource or post here to outline the high level architecture of an SFS-built game? Basically would like to understand the way the server, database and client typically fit together for a Club Pengiun type game/world. In addition what are the hosting considerations I need to be thinking about?
Some key questions I have:
1. Is MySQL the best bet for the database to store user info? Does it scale well compared to other options for a large user base?
2. If you have more than around 10k concurrent users, is the best approach to create parallel instances that people log into? Is that what Club Penguin does when it asks which server you want to log into...
3. Is it necessary to plan for an Akamai (or equivalent) hosting solution for optimized content delivery, or is that overkill?
4. What are the main hardware requirements in the ideal setup? Linux box for the server? How much RAM/CPU? Should the DB exist on the same box, or can/should it be on a separate server?
5. Do I use SFS as the webserver too for the rest of the website, or do I need to look to Apache or something for that?
Need some very basic SFS info
Hello,
http://www.smartfoxserver.com/docs/docP ... ecture.htm
http://www.smartfoxserver.com/docs/docP ... mmo_p1.htm
http://www.smartfoxserver.com/whitepapers/performance/
http://www.smartfoxserver.com/whitepapers/benchmarks/
DB should definitely have its own box
The choice is probably only dictated by what kind of web-dev platform you're familiar with ( java/jsp, php, .net etc... )
HTH
Read this ->Hoping someone can point me to a resource or post here to outline the high level architecture of an SFS-built game?
http://www.smartfoxserver.com/docs/docP ... ecture.htm
http://www.smartfoxserver.com/docs/docP ... mmo_p1.htm
Saying who's the best is really difficult and it can be based on many different "parameters". MySQL is definitely one of the best DB engines on the market today and yes it scales very well.1. Is MySQL the best bet for the database to store user info? Does it scale well compared to other options for a large user base?
Please check these white papers:2. If you have more than around 10k concurrent users, is the best approach to create parallel instances that people log into? Is that what Club Penguin does when it asks which server you want to log into...
http://www.smartfoxserver.com/whitepapers/performance/
http://www.smartfoxserver.com/whitepapers/benchmarks/
I don't know Akamai. All you need is at least a dedicated server and enough bandwidth to keep up with the traffic ( not only socket data but also web/http )3. Is it necessary to plan for an Akamai (or equivalent) hosting solution for optimized content delivery, or is that overkill?
Most of these questions are addressed in the above papers4. What are the main hardware requirements in the ideal setup? Linux box for the server? How much RAM/CPU? Should the DB exist on the same box, or can/should it be on a separate server?
DB should definitely have its own box
SFS comes with an embedded Jetty web server on top of which you can create all sorts of advanced web apps.5. Do I use SFS as the webserver too for the rest of the website, or do I need to look to Apache or something for that?
The choice is probably only dictated by what kind of web-dev platform you're familiar with ( java/jsp, php, .net etc... )
HTH
Thanks Lapo.
So it sounds like a dedicated serving solution is the way to go for the world + flash games, but if I have additional site content such as videos, music, graphics and other high bandwidth needs then maybe I should host that content elsewhere? Maybe someone else has an opinion on how to properly structure that...would love to hear as I am new to this.
Lapo - I noticed that you recommend ISO Interactive (aka shockwaveserver) as a dedicated host. I looked at their website - they seem more like an online agency. Do you know if hosting is a new business for them?
Thanks!
So it sounds like a dedicated serving solution is the way to go for the world + flash games, but if I have additional site content such as videos, music, graphics and other high bandwidth needs then maybe I should host that content elsewhere? Maybe someone else has an opinion on how to properly structure that...would love to hear as I am new to this.
Lapo - I noticed that you recommend ISO Interactive (aka shockwaveserver) as a dedicated host. I looked at their website - they seem more like an online agency. Do you know if hosting is a new business for them?
Thanks!
It's better to use one provider only and maybe multiple machines, based on your needs. In the end what you need is enough bandwidth for both media contents and web/socket traffic.So it sounds like a dedicated serving solution is the way to go for the world + flash games, but if I have additional site content such as videos, music, graphics and other high bandwidth needs then maybe I should host that content elsewhere?
Yes ISO Interactive is offering dedicated hosting services based on SmartFoxServer. They are going to launch a website specifically dedicated to this activity. Until then you can contact them at their official website to learn more about hosting plans.Lapo - I noticed that you recommend ISO Interactive (aka shockwaveserver) as a dedicated host. I looked at their website - they seem more like an online agency. Do you know if hosting is a new business for them?
HTH
Re: Need some very basic SFS info
fwiw, I have worked with Akamai in the past on larger dynamic sites and it led to some serious issues in regards to serving content to various regions. My US visitors would see the latest news articles, while EU visitors would see cached data for 2-3 days afterwards.pritca wrote:3. Is it necessary to plan for an Akamai (or equivalent) hosting solution for optimized content delivery, or is that overkill?
I have heard that they have addressed these concerns recently by numerous sources, but I would still steer clear of using them unless you know your content is less prone to change.
Unfortunately with any game related website, you realize that content may change on a day by day basis. As mentioned before, it is best to just have the hardware capable of dealing with the load.
So many issues can be resolved beforehand with the proper planning and architecture r&d.
- TaiPan
2-3 days?!fwiw, I have worked with Akamai in the past on larger dynamic sites and it led to some serious issues in regards to serving content to various regions. My US visitors would see the latest news articles, while EU visitors would see cached data for 2-3 days afterwards.
This can be caused by proxy servers, but that's another story. The geographical position can affect the network latency ... which is anyways measured in milliseconds, not in days!
When I check the BBC news website or CNN website from Italy I do get the latest news, not those of two days before
Bottom line: if you base your servers in the UK I should get low latency (ping times) if I am connecting from the UK or neighbor countries while I might find slower ping times from countries like India, Japan or south America...
You may solve this issue by using multiple servers based in different continents