![]() |
|
Channels and Limit Player - Printable Version +- LCKB (https://lckb.dev/forum) +-- Forum: ** OLD LCKB DATABASE ** (https://lckb.dev/forum/forumdisplay.php?fid=109) +--- Forum: Off-Topic (The Outer World) (https://lckb.dev/forum/forumdisplay.php?fid=198) +---- Forum: General Discussion (https://lckb.dev/forum/forumdisplay.php?fid=147) +---- Thread: Channels and Limit Player (/showthread.php?tid=329) |
- megachombas - 11-06-2011 so, lets see. basicly, as you all know, when you put 2 gs to 1 connector, this one crashes.... so what i did? put more than 1 connector! so, i will make an example with 5 chanels. if we want 5 channels, we will need: loginserver=1 messenger=1 helper=1 connectors=5 gameserver=5 so, each connector and each gameserver must have different ports and different maxsubserver, but same databases, helper. so, see the config of the 5 connectors: connector 1: [server] Number=1 MaxSubServer=1 IP=MY_LOCAL_IP Port=4006 connector 2: [server] Number=1 MaxSubServer=2 IP=MY_LOCAL_IP Port=6006 connector 3: [server] Number=1 MaxSubServer=3 IP=MY_LOCAL_IP Port=7006 connector 4: [server] Number=1 MaxSubServer=4 IP=MY_LOCAL_IP Port=8006 connector 5: [server] Number=1 MaxSubServer=5 IP=MY_LOCAL_IP Port=9006 that is for the connectors parts, now lets make the same with the gameservers: gameserver 1: [server] Number=1 SubNumber=1 IP=MY_LOCAL_IP Port=4110 AllowExternalIP=TRUE ......... [Connector Server] IP=MY_LOCAL_IP Port=4006 gameserver 2: [server] Number=1 SubNumber=2 IP=MY_LOCAL_IP Port=6110 AllowExternalIP=TRUE ......... [Connector Server] IP=MY_LOCAL_IP Port=6006 gameserver 3: [server] Number=1 SubNumber=3 IP=MY_LOCAL_IP Port=7110 AllowExternalIP=TRUE ......... [Connector Server] IP=MY_LOCAL_IP Port=7006 gameserver 4: [server] Number=1 SubNumber=2 IP=MY_LOCAL_IP Port=8110 AllowExternalIP=TRUE ......... [Connector Server] IP=MY_LOCAL_IP Port=8006 gameserver 5: [server] Number=1 SubNumber=5 IP=MY_LOCAL_IP Port=9110 AllowExternalIP=TRUE ......... [Connector Server] IP=MY_LOCAL_IP Port=9006 great, now we got 5 gameservers and 5 login servers. now, we have to config our loginserver: [Connector_0] Number=1 MaxSubNumber=5 IP=MY_LOCAL_IP Port=9006 [Connector_1] Number=1 MaxSubNumber=4 IP=MY_LOCAL_IP Port=8006 [Connector_2] Number=1 MaxSubNumber=3 IP=MY_LOCAL_IP Port=7006 [Connector_3] Number=1 MaxSubNumber=2 IP=MY_LOCAL_IP Port=6006 [Connector_4] Number=1 MaxSubNumber=1 IP=MY_LOCAL_IP Port=4006 if in the loginserver you change the order from what i put, it will go into maintenance. must be a descresendo order of maxsubnumber. sadly, the onlything that doesnt work here, is the gametime. but i think it can mabe fixed using the t_lc_time, and adding more servers in that database, i havent tested yet. ask if you didnt understood something. - BashVendetta - 11-06-2011 Yeah it works but it also displays an extra subserver per entry with maintenance now? - CADH - 11-06-2011 megachomba it working.. and the subservers have all status "maintenance". then i have a new problem my connector(1) is crashed all 10-20 minutes when i run it -.-- METH - 11-06-2011 All those extra servers saying Maintenance looks terrible :/ gotta be a better way - megachombas - 11-06-2011 yes, sadly, i cant remove those extra subchannels. but its the unique way for add subchannels known up to now. if ALL subservers are in maintenance, means you didnt put the right order of connectors. - Maskov - 11-06-2011 look in LoginServer> newStobm Change [Connector Server] Count=1 Change to 5 but t_lc_time dont work... and bug items!! - Darquise - 11-07-2011 is there any way to remove the player limit who can connect? - Wizatek - 11-07-2011 What about the memory management, I think this depends on how the application was developed, creating a thread for every connection, and in that thread uses some memory that was allocated a stack size(lets say up to 1 mega), 30,000 would mean 1 mega *30.000, approx 30 Giga of ram. On 64Bit machines use 4M stack size. Bitness Stack Size Max threads 32-bit 64K 32,073 32-bit 128K 20,549 32-bit 256K 11,216 64-bit 64K stack too small 64-bit 128K 32,072 64-bit 512K 32,072 This means if a 32Bit machine with 64k stack size can cost ram 64k*32,073=1.95G RAM, the last example for the 64Bit systems uses 16G or RAM. The more threads you have the more slower it gets. This only depends on the application, how it has its memory organized. Thread Size: 2 On a saturday night when there are about 2k players online at eternia it already uses 16gb of ram. And thats devided amongst 6 channels. Thats 8 mb each player So with 30k players that would be 240 gb of ram. And with lastchaos not being resource friendly at all, i think to have 30k players in 1 channel u will need something else then the basic VPS hosts u can get ![]() - someone - 11-07-2011 The crash on the subserver in a function that is in the connector for(int i = 0; i for(int j = 0; j < max_players; i++){ userid = players[i][j]; if((user_id*) > 0){ //crash is here // do player status //or somewhere here } } This crash is in 3 functions in the connector). Same for the player Crash - Incordia - 08-21-2012 To put even more subserver public that you have a connector, the connector simply copy and rename it to connector 2 and poneis maxsubserver = 2, then you copy the gameserver and gameserver renombrais to poneis maxsubserver 2 and = 2, gameserver configurations deveis set to count only 14 zones and put the zone 15 which is only in the gameserver2 eghea but your connector will fall, if anyone has any questions, I'll make a guide for you to understand better. Thanks for your information Blankname |