Page 26 of 42 FirstFirst ... 1622232425262728293036 ... LastLast
Results 376 to 390 of 629
Like Tree92Likes

HellsReapersKO - BETA CLOSED - RELAUNCH ANNOUNCED FOR NOV. 8TH. 100% Stability.

This is a discussion on HellsReapersKO - BETA CLOSED - RELAUNCH ANNOUNCED FOR NOV. 8TH. 100% Stability. within the Private Servers forums, part of the Knight Online (ko4life.com) category; This server will never be up or it will be one big fail with 20ppl online ... just have fun ...
Page: 26


  1. #376
    Senior Member
    Join Date
    Dec 2006
    Location
    Poland
    Posts
    258

    Default

    This server will never be up or it will be one big fail with 20ppl online ... just have fun guys ^^

  2. #377
    BANNED FOR SCAMMING! Senior Member
    Join Date
    Mar 2013
    Posts
    113

    Default

    Yeah, why open server if your not even gunna have it open for first 2 weeks?

  3. #378
    Member
    Join Date
    Oct 2013
    Posts
    12

    Default

    Quote Originally Posted by twostars View Post
    Lesson one learned (I hope): always keep performance/scalability in mind. What may seem like a simple, easy change can have serious repercussions.

    I ran into a slightly similar issue with KO-Tastic when implementing the slightly extended death logs. It wasn't doing much more than it was normally (just adding party info, you appear to be storing item info as well, unless that's just pulled from the database later?), but it was killing the hell out of the server (because of the constant i/o). In this instance, performing the write in another thread (i.e. batching all writes to be done at the same time & consequently moving any i/o blocking away from the worker thread) solved that problem.

    In your case, and this is pure speculation, it sounds a little like trouble on both fronts: if you truly are reading from it every 5ms (as your post indicates, "updates every 5ms"), this is going to be causing way too much blocking -- not to mention absolutely killing the CPU. There's really no need for a 5ms delay; I'd use at *least* 1 second here, probably something more like 5. Players aren't going to be checking it right away anyway, there's no need to kill the CPU's usage over that.
    Additionally, while it's open it's unable to be written to, so the game server's worker thread is going to just sit there and do nothing until it's available (if it doesn't flat out reject the request, but at 5ms it's anyone's guess what'd happen).

    Here's hoping that 5ms is a gross exaggeration.

    That's assuming the fault even lies with that, of course.
    The logging errors penuing was talking about is with the itemlogging in the ebenezer shared memory that you had a fix for a while ago but we never thought to implement it because we never had a problem with less then 40 or so players so when the server started having alot more activity we got the errors and were really confused at first. The Death Logger I wrote doesn't really "read" the whole file every 500 MS, it jumps to the last place it checks in the file, then checks for new lines that have been written, which happens every 500ms, and even then it checks it without locking out the file for RW access, and it gets the rest of the information straight from memory. The big issue right now is getting a decent ODBC driver to work in Debian Linux so we can have a stable webserver that wont crash when cpu hits 100. Windows is really good about crashing when anything gets above 90.

  4. #379
    Senior Member
    Join Date
    Dec 2009
    Posts
    1,805

    Default

    Quote Originally Posted by darkflamed View Post
    The big issue right now is getting a decent ODBC driver to work in Debian Linux so we can have a stable webserver that wont crash when cpu hits 100. Windows is really good about crashing when anything gets above 90.
    FreeTDS/unixODBC. You don't really have much choice.
    But to be honest, I haven't had any problems with IIS. It is designed for the OS, after all.

    As far as the logs go, you're lucky: if it was anything the game server was writing, it'd be painful.

  5. #380
    Member
    Join Date
    Oct 2013
    Posts
    12

    Default

    Quote Originally Posted by twostars View Post
    As far as the logs go, you're lucky: if it was anything the game server was writing, it'd be painful.
    FreeTDS was my first option, I was having troubles implementing it on the website only because of how picky it is. First if you don't read in all the lines it will throw an error, or if you have more then one connection at a time, OR if you don't clear the connection properly between queries ect. and implementing it on the website showed no signs of luck. So I now have installed the official linux port of MS SQL's odbc driver (for redhat) but there was a work around for debian. The only problem now is getting php to use the DSN or Driver (works in console).

  6. #381
    Senior Member TheREALPenguin's Avatar
    Join Date
    Feb 2012
    Posts
    260

    Default

    Quote Originally Posted by twostars View Post
    FreeTDS/unixODBC. You don't really have much choice.
    But to be honest, I haven't had any problems with IIS. It is designed for the OS, after all.

    As far as the logs go, you're lucky: if it was anything the game server was writing, it'd be painful.
    Well, last night, I was carefully watching the server, and processes when I was asking people to login so I could watch these things. Here is what happened when the server would start lagging. This is pulled from Aujard.

    2013-11-3 4:26, *** 08S01, 121, [Microsoft][SQL Server Native Client 10.0]TCP Provider: The semaphore timeout period has expired.

    Then after more people logged in, it would hit this.

    2013-11-3 4:26, *** 08S01, 121, [Microsoft][SQL Server Native Client 10.0]Communication link failure, 68 ***

    At this point monsters would become unattackable, and couldn't talk to NPC's, and our CPU was being maxed out because the Aujard was about to crash.

    Then this would happen.

    2013-11-3 4:27, *** 08S01, 10054, [Microsoft][SQL Server Native Client 10.0]TCP Provider: An existing connection was forcibly closed by the remote host.

    At this point everyone online would get DC'd, I assume it was the game server booting people off before Aujard crashed. Once it booted everyone, the CPU was fine, the Aujard was fine, and the server was perfectly stable. I told people to get back on, 12 people were fine, then once we got to about 20 people, our TCP was maxing out at 70, and then it all happened again in the exact same order.

    These are just my observations, Dark is trying to figure it out however some twostars insight would be really appreciated at this point. This is what is making us unstable.

    And you know I've googled this all night until I went to sleep. Most people couldn't give any kind of good answer, and the ones that did just sort of said "Seems like a networking issue, seems like whatever you're doing your network can't handle it."

    Oh and here's something interesting, our monsters have become non-attackable, but players aren't lagging. You can talk to one another, skills still use MP, and I killed a worm about 5 minutes ago, and just now leveled up. Aujard isn't getting an error. Nothing is.
    Last edited by TheREALPenguin; 11-03-2013 at 04:31 PM.

  7. #382
    Senior Member
    Join Date
    Dec 2009
    Posts
    1,805

    Default

    CPU maxed out by what... Aujard? I'm thinking something might be making an obscene number of connections to something (the database server?).
    And yeah, FreeTDS is pretty fussy. But once you've identified all its kinks, it is, at least, reliable.

  8. #383
    Senior Member TheREALPenguin's Avatar
    Join Date
    Feb 2012
    Posts
    260

    Default

    Quote Originally Posted by twostars View Post
    CPU maxed out by what... Aujard? I'm thinking something might be making an obscene number of connections to something (the database server?).
    And yeah, FreeTDS is pretty fussy. But once you've identified all its kinks, it is, at least, reliable.
    When the Aujard stops responding basically it maxes out the CPU. Then it boots everyone out of the server before it actually crashes.

    Now monsters can't be attacked, but there is no actual player lag aside from taking 5 minutes to level.

  9. #384
    Senior Member
    Join Date
    Mar 2013
    Posts
    681

    Default

    Quote Originally Posted by TheREALPenguin View Post
    When the Aujard stops responding basically it maxes out the CPU. Then it boots everyone out of the server before it actually crashes.

    Now monsters can't be attacked, but there is no actual player lag aside from taking 5 minutes to level.
    Just to clarify, monsters can be killed it just takes about 5 minutes to do it.

  10. #385
    Senior Member
    Join Date
    Dec 2009
    Posts
    1,805

    Default

    Quote Originally Posted by TheREALPenguin View Post
    When the Aujard stops responding basically it maxes out the CPU. Then it boots everyone out of the server before it actually crashes.

    Now monsters can't be attacked, but there is no actual player lag aside from taking 5 minutes to level.
    That's fucked up.

    a. It should only be using a single core (your server has 1 core?).
    b. It shouldn't have anything to do with kicking players out (unless all connections to everything dies as a result of the CPU maxing out).
    c. Monsters not being able to be attacked suggests the AI server desynced (if it's not completely disconnected right now). It won't remove them from Ebenezer on disconnection, and when the AI server's restarted it'll use new IDs for everything, so it'll get totally confused and stuff breaks.

    I'd probably start by killing off anything you've implemented (e.g. the log stuff), and then monitoring incoming traffic / connections. If it remains stable, most likely it is indeed your stuff. So, at this point, you'd need to assess what it is exactly you're doing with your stuff (vague, but all I know about is the death stuff) & identify any bottlenecks/performance issues associated with it, test to verify, and attempt to resolve them (rinse and repeat, obviously).

    The CPU being maxed out really does bother me though. Which CPU are you using?

    Edit:
    Quote Originally Posted by azreal313 View Post
    Just to clarify, monsters can be killed it just takes about 5 minutes to do it.
    Hm, then it's probably just extremely slow.

    You guys don't by any chance have your AI server / MSSQL ports open, right? Just game / web / login (/ FTP)?
    And there's no SYN flooding?

  11. #386
    Senior Member
    Join Date
    Feb 2012
    Posts
    175

    Default

    server is good. I don't care comments. I just getting fun, am looking for that. it's really good server for me. Idc.

  12. #387
    Member
    Join Date
    Oct 2013
    Posts
    12

    Default

    Quote Originally Posted by twostars View Post
    It should only be using a single core (your server has 1 core?).
    Our main server files (ai, ebenez, auj, login) are running on a dedicated instance with 1 core for computing.

    Quote Originally Posted by twostars View Post
    I'd probably start by killing off anything you've implemented (e.g. the log stuff), and then monitoring incoming traffic / connections. If it remains stable, most likely it is indeed your stuff. So, at this point, you'd need to assess what it is exactly you're doing with your stuff (vague, but all I know about is the death stuff) & identify any bottlenecks/performance issues associated with it, test to verify, and attempt to resolve them (rinse and repeat, obviously).
    The only problem I could see with the Death Logs is the frequency of sql query insertions on deaths, but even then its not enough to bottlneck any network proticols it should be able to handle many many many queries p/s and its thread-safe. Our network and cpu are stable so this is why we were thinking it was either a security patch we missed or some type of loop or error the server files aren't handling properly.


    Quote Originally Posted by twostars View Post
    You guys don't by any chance have your AI server / MSSQL ports open, right? Just game / web / login (/ FTP)?
    And there's no SYN flooding?
    The webserver is on a seperate instance, so is the sql, both are running via cloud and the only way to access the sql is through the server ip's that I allow from within the cloud network. Flooding is definitely something we are looking at but its not as apparent when JUST looking at the instance with the server files, and it would take a bit more work to actually get a flood working properly in the server files then it would in the webserver or some other easily accessable proticol, not only that but I would expect a flood to take down the login server or ebenezer not the aujard or aiserver.

  13. #388
    Senior Member
    Join Date
    Dec 2009
    Posts
    1,805

    Default

    Quote Originally Posted by darkflamed View Post
    not only that but I would expect a flood to take down the login server or ebenezer not the aujard or aiserver.
    Yeah, but you're talking about Windows. Aujard's easy as hell to take down; just introduce database connection instability (as above), and there you go. It'll eventually crash.
    The real question is why it's struggling to connect to the database server, what's causing this to happen? SYN floods are a really good example of this, as they'll leave a phenomenal amount of half-open connections which sit there, being useless, using up sockets, preventing other connections from being made, and consequently things failing.

    Having said that, using 1 core is a very, very bad idea. The AI server was never designed to be run like that; it exists primarily to be run on a separate box (as single core servers were the norm back then), as it's a considerable resource hog. So much so, it deems it necessary to give itself higher priority. On modern servers, we usually get by because context switching between multiple cores alleviates the strain a lot (though, try to debug it, and watch everything die).

    Honestly, if there really is 1 core being allocated for those servers, I'm guessing that's your main problem. More players means more NPC activity (they're "awake" and moving about), which means more threads (the AI server will most likely be running at least 200 threads, most likely more) hogging CPU time, and everything slowing to a crawl. :/

  14. #389
    Member
    Join Date
    Oct 2013
    Posts
    12

    Default

    Quote Originally Posted by twostars View Post
    Honestly, if there really is 1 core being allocated for those servers, I'm guessing that's your main problem. More players means more NPC activity (they're "awake" and moving about), which means more threads (the AI server will most likely be running at least 200 threads, most likely more) hogging CPU time, and everything slowing to a crawl. :/
    You make a very valid point, and upgrading to 2 cores or even putting the server files on a seperate instance is a very liable option right now. Have there been much success with seperating the aiserver and ebenezer on 2 seperate instances? if not then I will probabably just stick with 2 cores.

  15. #390
    Senior Member
    Join Date
    Dec 2009
    Posts
    1,805

    Default

    Quote Originally Posted by darkflamed View Post
    You make a very valid point, and upgrading to 2 cores or even putting the server files on a seperate instance is a very liable option right now. Have there been much success with seperating the aiserver and ebenezer on 2 seperate instances? if not then I will probabably just stick with 2 cores.
    The AI server was always designed to run on a separate machine to serve multiple servers, so there's really no problem there.

LinkBacks (?)

  1. Hits: 2
    09-25-2022, 12:16 AM
  2. Hits: 9
    11-06-2013, 10:01 PM
  3. Hits: 2
    11-04-2013, 12:38 AM
  4. Hits: 1
    11-03-2013, 04:52 PM
  5. Hits: 11
    11-03-2013, 03:28 PM
  6. Hits: 6
    11-03-2013, 03:18 PM
  7. Hits: 32
    11-03-2013, 03:02 PM
  8. Hits: 3
    10-27-2013, 07:56 PM
  9. Hits: 5
    10-27-2013, 11:20 AM
  10. Hits: 20
    10-23-2013, 11:47 PM
  11. Hits: 7
    10-20-2013, 07:23 AM
  12. Hits: 15
    10-10-2013, 01:38 PM

Similar Threads

  1. NEW BOSS
    By Dr4g0n in forum General Chat
    Replies: 55
    Last Post: 08-30-2006, 07:19 AM
  2. I LOVE NEW PATCH IM ONLY ONE ON CZ
    By Private in forum General Chat
    Replies: 11
    Last Post: 08-11-2006, 06:11 PM
  3. Replies: 21
    Last Post: 07-21-2006, 07:35 PM

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •