Jump to content

Development using another framework


Recommended Posts

Posted

We all know that ACE framework was introduced for .net availability in making things faster for networking. But has anyone considered working on the database, to reduce stress, and common iteration that occurs? I know it sounds stupid now, but I want you to think about it a little deeper.

Custom content (Not for emulation but for understanding and developing). Understanding that when you load objects, add objects, insert objects, and remove objects. Spawns, items etc. It starts taking a toll on the database. SQL is great, so was txt files, since txt file storing allowed just straight calls for the specifics, much like how flatfile used to do. Problem arises where things start getting big, databases start getting large, Live threads, as well as dead garbage collections start building.

Trims are put in place to cut them out, we all know we dump garbage..but you can only take out the trash one at a time while another person drops it off.

Enter; Reason.

I have been working on a project called Leaf with alot of people from the emulation world.. and its just starting to make light. We hit Milestone 1 on Oct 17th, with the ability to support WOTLK Beta with no major flaws (aside from the achievement system). It was built off the Mangos framework back when Mangos was just getting started. It originally started off WoWD grabbing some of the fundamentals and well then started working off Mangos ideas, and building the two together.

Why would I talk about this? Theres a few of our ideas that are in Mangos SVN/GIT patches. I wont call out who it is we work with, and I won't exile the members that work on both the projects. Thats another thread, and another fight.

I actually am here to ask and help a little on the databasing. Being as I am not a god programmer in C as far as everything else goes, I do know my way around when it comes to SQL and intergration of C applications with C and databasing.

With the recent push moving Mangos into ACE and incorperating ACE, we have seen major changes in our core changes which also include Mangos code. But we also use a different framework which I haven't seen mentioned here.

Reason: http://reasoning.info/index.htm

Is a framework we are using for most of our database handling. It works extremly well, and makes Mangos run like a brand new car. We have changed over alot of the dependencies over to using Reason in our Leaf build and well I wanted to share with you all, what reason is. I think its worth a look at, or even a consideration.

Basically have you heard of it?

Every try it?

Consider it?

Whats your opinion on it?

-Mynt

Posted

Thank you for the reply TheLuda.

I am not looking for a change in the old code.. but more of maybe a call for someone to look at it with me, and revert and try an adaptation patch. I currently am not somewhere where I have access to my dev enviroment, but if no one steps up to the plate, then when I get back home in 2009 I will definatly be placing my patches up.

There are some problems that arise, mainly because it changes the way the database is handled/called, and short functions and calls are allowed. But thats small fixes that can be hotfixed, and well when you see it, you wont believe the amount of pressure it took off our database threads.

We were able to reduce the amount of resources MySQL was using almost 2 fold by switching the frameworks. So Hopefully when I get back, I will have some stuff to share with you.

-Mynt

Posted

"we all know we dump garbage..but you can only take out the trash one at a time while another person drops it off."

great choice of words i must say :)

You're talking about async db access so the worker thread wouldnt block like it does now... obviously the only way to go for a singlethreaded serverapplication hehe :)

Posted
You're talking about async db access so the worker thread wouldnt block like it does now... obviously the only way to go for a singlethreaded serverapplication hehe :)
We already have full support for async db access (both queries and updates), just not used in all places..
×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. Privacy Policy Terms of Use