Jump to content

  • Log In with Google      Sign In   
  • Create Account


Server Exception Handling


Old topic!
Guest, the last post of this topic is over 60 days old and at this point you may not reply in this topic. If you wish to continue this conversation start a new topic.

  • You cannot reply to this topic
3 replies to this topic

#1 SeiryuEnder   Members   -  Reputation: 199

Like
0Likes
Like

Posted 24 October 2012 - 02:02 AM

Hi,

I'm currently researching exception handling, and will be implementing it on a heavily threaded game server in the near future.

Here is what I will need:
  • Safely unwind stack, high server stability
  • Low overhead
  • Works well in a highly threaded architecture
While I am researching and have used EH before, I haven't gotten very in-depth with it and am not yet very familiar with what happens under the hood. Are there any red flags I should know about, any good book references for this sort of thing, or any ideas about how I can more effectively implement EH rather than just toggling some /EH_ flags? I realize this thread is a bit open ended, the problem I suppose is that I don't yet know what questions I should be asking and hope to pick the brains of those more experienced with this sort of thing.

Thanks~!

Sponsor:

#2 Hodgman   Moderators   -  Reputation: 27686

Like
0Likes
Like

Posted 24 October 2012 - 02:25 AM

Some questions -
What language are you using, what are you using exceptions for, what are you using threads for?

#3 Waterlimon   Crossbones+   -  Reputation: 2362

Like
0Likes
Like

Posted 24 October 2012 - 07:02 AM

Some questions -
What language are you using, what are you using exceptions for, what are you using threads for?


The thread has a C++ tag, now theres just 2 questions left :)

Waterlimon (imagine this is handwritten please)


#4 SeiryuEnder   Members   -  Reputation: 199

Like
0Likes
Like

Posted 24 October 2012 - 07:36 AM

what are you using exceptions for, what are you using threads for?


Sorry, didn't have much time last night.

Our server is using a thread pool, when we receive a network request we assign a thread to handle it. This can include sql queries, movement updates, game objectives, etc.

Ideally our exception handling will be as comprehensive as possible so as to quietly handle any soft hardware or database failures. At the very least it will be used to resolve external problems. It'd be nice to use asserts to fix any programming errors and EH to handle any external problems, however due to the nature of servers we prize stability over all else. An offline is 0% efficient, so we're willing to sacrifice some performance while we fix the broken things.




Old topic!
Guest, the last post of this topic is over 60 days old and at this point you may not reply in this topic. If you wish to continue this conversation start a new topic.



PARTNERS