Jump to content

Multimangos


Recommended Posts

i just wanna ask if there are plans to implement multiprocessing/multithreading? this would be really nice :)

i have no idea about multithreading/multiprocessing/networking so i can't do it myself but i would appreciate it if a dev would work on it (or would tell other devs how to implement it). if a dev would teach us how to implement this i maybe would work on it (allways depending on the time i have... but actually i've a lot of time :))

Link to comment
Share on other sites

  • Replies 159
  • Created
  • Last Reply

Top Posters In This Topic

i would greatly welcome some multithreading or multiprocessing.

mangos does not use more then 3% of my machine at all, so it would be realy nice to get the bottle necks out of the code, to atleast work it multiple times to speed up.

I agree mulitcore all the way , code optimization is the way to go

Link to comment
Share on other sites

Login Server - realmd

Base Server - to this players will connect (call it proxy server ).

Cell Server - this handles one or several maps ( call it map server ).

World Server - handles chat, guilds, etc.

I would prefer a solution that doesn't use multithreading in it's purest form (as concurrency of peer threads) - using asynchronous calls to other threads to complete tasks that would otherwise stall the server and just picking them up when they're done (and we've used the time to handle other messages).
Link to comment
Share on other sites

  • 1 month later...
Yes this is why I'm currently opting for multithreading actually. There is no way in hell the memory usage should be this high even with hundreds of players online if you have gridunloading on. There must be some memory leaks somewhere or I don't know. The fact that gridunload makes crashes and lags just means the core is not well optimized. If we just throw more hardware at them then these problems will be neglected and we will go more and more towards and end where the core is a horribly slow / crashy memory hog that you can only cope with by having a cluster of 10 computers working at it. So don't think that clustering is the only solution to the problem .. in fact it's one of the worst solutions .. the lazy man's solution. We should be a learning project that delivers a quality product instead of a corporate hog where you don't care if you write horrible code as long as you write it quickly and you just have the hardware department give you enough muscle to chug that pig along.

I must agree with Wyk3d on this one, no matter how much I like the idea of multiprocessing, multithreading and core optimization is the way to go here. Not to mention the resources needed for multiprocessing that i'm sure most of us don't affort.

Link to comment
Share on other sites

processing maps is probably one of the more cpu/memory intensive things in mangos since everything has to be contained within a map. What really needs to be worked on in being optimized is VMAPS or better yet, get the MMAPS implemented and get rid of Vmaps (not sure if you can, but some of the talk in that topic suggests you can).

Link to comment
Share on other sites

For me, in a way it doesn't matter the option. If the result is that it will bring faster content or higher simultaneous user connections, then go ahead. Otherwise please remember this phrase

If ain't broke, don't fix it.

But since there are other projects that claim (and I'm not criticising them) to have multi threaded core, then would be nice for a project get the initiative to go multiprocessing.

Link to comment
Share on other sites

I'm not sure about this, but a good starting point to check for a Corba alternative should be KDE.

They started with Corba in the beginning (1.x series), then switch to a home made DCOP (2.x or 3.x) and now in the 4.x series they use DBUS.

And before starting the flames, whatever they are using now, is PORTABLE.

Link to comment
Share on other sites

Guest
This topic is now closed to further replies.
×
×
  • 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