PDA

View Full Version : TS2 Linux Scalability


cosmicShame
15-04-2003, 15:16
How many users can 1 server instance support. Providing the machine has 1gig of ram and p4 proccessor ?

I assume that since this server has a dual proccessor the only way to take advantage of that would be to start 2 proccesses. Is there any way to 'link' servers ?

N. Werensteijn
17-04-2003, 09:11
our dual 1 ghz machines with 1 GB handled over 900 users in 3 servers with a load between 40% and 70%.

So i guestimate a 2GH+ P4 can handle 1500 concurrent users without to much problems. Perhaps even more.. Havent done much checking under high loads.

Is 1500 enough for you?

cosmicShame
17-04-2003, 17:10
Where can I find documentation or a quick explination on how to link teamspeak servers together ?

How did you wind up linking those 3 ?

To answer your question, 1500 is not enough. We are creating a large TS2 gaming community @ teamspeak://metaMule.com

We have the resources to grow it as big as we want. I just want to know what the software can handle.

BTW, do you guys plan on making a Solaris server ?

N. Werensteijn
17-04-2003, 23:18
Originally posted by cosmicShame
Where can I find documentation or a quick explination on how to link teamspeak servers together ?
How did you wind up linking those 3 ?

We did not link them up togeter. What i meant was we ran 3 servers in 1 ts instance. (our public servers). The reason we keep the servers limited to 500 users is to keep the channellists in those servers to a reasonable size. (On peak hours those public servers can have up to 200 channels, which is a bitch to scroll trough in the client)

For the record: you can't link ts servers together.

To answer your question, 1500 is not enough. We are creating a large TS2 gaming community @ teamspeak://metaMule.com

We have the resources to grow it as big as we want. I just want to know what the software can handle.
Well, the hard limits are 2 Billion users and channels. Most likely the limiting factor will be cpu usage. Either that or the network interface :)
BTW, do you guys plan on making a Solaris server ?
No plans yet. But we are working on a mac port. As part of that project, we are porting the codebase to C++.

When that is done, perhaps we can port to other os'es

I am very interrested in this topic. The last few weeks i worked hard to improve the scalability of the server. We made some good enhancements on the latest server builds (B32 and up).

The main issue i see with high usercount servers is the channels.
low channelcount means a lot of people on the same channel, making noise-spam a big issue.
High channelcount mean is better for that, but like said before, produces a big list to scroll trough.

Have you given these issue's any thought? What do you envision?

cosmicShame
18-04-2003, 02:28
If there was a flag you could put on the room to only allow one person to talk at once, that would help (similar to paltalk).

There also should be a configurable number on the server level as to how many users can be in any give room max.

The only way you can decrease the server's load for rooms that are very large is if you had clients take over some of the work. This may not be the best idea, but the concept of distributing the load is a good idea. Comparing the fundamental diferences between TS and TS2 it appears that you guys were shooting for a voice irc type thing, which is awesome. IRC has the ability to link up servers, which is something I thing TS3 really needs.

Aside from that...

Also, I noticed when there are alot of ppl on the TS server, it's hard to find your friends. Why not a /notify like IRC has ?

Are there any plans of having the server support threads or something to support mutiple proccessors ?

N. Werensteijn
18-04-2003, 02:53
Originally posted by cosmicShame
If there was a flag you could put on the room to only allow one person to talk at once, that would help (similar to paltalk). already implemented. Moderated flag :) works just like irc (Voiced / op)

There also should be a configurable number on the server level as to how many users can be in any give room max.
Hmm you can set how many people are allowed in one room. However, if anyone can create a room (depends on your permissions) you can't stop them from making a room with 500 people init.

The only way you can decrease the server's load for rooms that are very large is if you had clients take over some of the work. This may not be the best idea, but the concept of distributing the load is a good idea. Comparing the fundamental diferences between TS and TS2 it appears that you guys were shooting for a voice irc type thing, which is awesome. IRC has the ability to link up servers, which is something I thing TS3 really needs.
Well, the problem in voicecom is that is has to be low latency. This makes distributed computing impractical. (besides a whole lot of security issues).

As for NEEDING server linking.. I am not aware of many high usercount servers. I think the TS publics are the most heavily populated atm.

Aside from that...
Also, I noticed when there are alot of ppl on the TS server, it's hard to find your friends. Why not a /notify like IRC has ?
Second one to ask today :)
Reason.. The need just had never come up yet. The typical usage on ts is (was?) that you either have a very small clanserver, or a channel in a public server. Neither would have friends in far away places. Might be a new feature tough.

Are there any plans of having the server support threads or something to support mutiple proccessors ?
The server is already fully multithreaded.

cosmicShame
18-04-2003, 15:54
If the server is multi threaded, why do I only see one proccess running ?


--------------------------------------------------------------------------------
Originally posted by cosmicShame
If there was a flag you could put on the room to only allow one person to talk at once, that would help (similar to paltalk).
--------------------------------------------------------------------------------
already implemented. Moderated flag works just like irc (Voiced / op)

No, that's not what I mean. Even though you can have an M room, it still only allows 2 or more people to xmit at a time. If someone has the MIC they have it indefinitly or a predetermined time via channel flag. When that person is talking, no one else can transmit. There is really no benefit to have 2 people talk at the same time with the 1 second lag that's in there.

As far as the scalability of the server, when the software is created to be better than the hardware (billions of users) then it's as scalable as it gets. Instead of "server linking" why not just link the servers channel / user lists? When a user connects to a channel on the 'other' server they will simply connect there.

Another issue is 'casting' which is something we have done. We will 'cast' a game match on TS instead of Shoutcast. TS2 is very good for this. It uses less bandwith, allows the cast to be performed in somewhat real-time and it allows spectators to join the show 'call-in'. How many people do you think can be in a moderated room listening to a cast ?

cosmicShame
18-04-2003, 16:08
Oops, my mistake.

4044 ? SN 0:15 ./server_linux
4045 ? S 0:19 ./server_linux
4046 ? S 42:25 ./server_linux
4047 ? S 243:35 ./server_linux
4048 ? S 56:44 ./server_linux
4049 ? S 0:35 ./server_linux
4050 ? S 21:46 ./server_linux
4051 ? S 21:48 ./server_linux
4052 ? S 2:19 ./server_linux

I didn't do ps ax -m u need -m for threads.

N. Werensteijn
18-04-2003, 17:33
Originally posted by cosmicShame
No, that's not what I mean. Even though you can have an M room, it still only allows 2 or more people to xmit at a time. If someone has the MIC they have it indefinitly or a predetermined time via channel flag. When that person is talking, no one else can transmit. There is really no benefit to have 2 people talk at the same time with the 1 second lag that's in there.
Ah. Nope thats not supported right now.

As far as the scalability of the server, when the software is created to be better than the hardware (billions of users) then it's as scalable as it gets. Instead of "server linking" why not just link the servers channel / user lists? When a user connects to a channel on the 'other' server they will simply connect there.
That is an option :) Might think about that.

Another issue is 'casting' which is something we have done. We will 'cast' a game match on TS instead of Shoutcast. TS2 is very good for this. It uses less bandwith, allows the cast to be performed in somewhat real-time and it allows spectators to join the show 'call-in'. How many people do you think can be in a moderated room listening to a cast ?
As much as hardware can handle

cosmicShame
18-04-2003, 17:58
Is there a significant delay of the delivery of the sound to all users when more and more people connect to the same room ? Providing the hardware / network was sufficient.

I think this software is very awesome. I love it, alot. I believe there's alot more to what can be done here than originally perceived.

BTW, I have used TS2 on my notebook with a sprint pcs cell phone + data adapter and it works flawlessly. Wireless TS2 is awesome.

N. Werensteijn
18-04-2003, 18:13
Not soon :)

As long as the processor is not using > 90% cpu, there should be no noticeble extra delays. The real work does not come from sending packets, its all the checking of permissions / connection status etc

SatanClaus
19-04-2003, 14:54
I think joining two server-lists together is only a good Idea when you have two servers in public mode, because else you could whisper into other servers (could cause lag and other problems if those servers also have to use internet-connections for their communication).

And there was a discussion about restricting the amount of people talking at once...
http://www.teamspeak.org/forums/showthread.php?s=&threadid=4397

cu
SatanClaus

cosmicShame
19-04-2003, 17:14
Originally posted by N. Werensteijn
Not soon :)

As long as the processor is not using > 90% cpu, there should be no noticeble extra delays. The real work does not come from sending packets, its all the checking of permissions / connection status etc

Wow, that's amazing. You guys made a really awesome piece of software.