EvilzoneLabs / BeastBot

EZBot - irc.evilzone.org's official network bot
http://www.evilzone.org
GNU General Public License v3.0
3 stars 3 forks source link

Convert to class #26

Open chris2727 opened 9 years ago

chris2727 commented 9 years ago

Possible idea of converting the bot into a class and make it run on multiple servers.

ibabushkin commented 9 years ago

Please elaborate on this. Although this is probably a good idea to refactor the bot and write some docs on the way, I doubt we'll get a solid performance boost if we run it on multiple servers. I might be completely mistaken though. We should discuss this further.

chris2727 commented 9 years ago

I'd like to refractor all the code, and of course write docs on it. As well as make it compatable with multiple servers at once. Maybe implement something such as cython and possibly see a speed increase as well... I don't know how well that would work, but it may be worth a shot.

Ideas on this are needed.

kenjoe41 commented 9 years ago

The only thing that comes to mind is distributed computing and RPC. It might require abit of redoing the code in afew parts and some experience in the area.

Unless completelly needed, i think you should stay with the current code structure.

More discussion is needed to determine if the bot would require more a multicore approach than a multinode approach, though i remember we already implement multicore programming.

Might i recommend looking into Celery and see how helpful it can be for the bot. I will still emphasize that the bt normally doesn't have much work to need a multinode approach but if you insist then that is my idea.

chris2727 commented 9 years ago

@kenjoe41 hrm..... I looked at celery a bit, but I am not sure what it can offer us. Why do we need/want multinode processing? I don't forsee any thing that would be CPU intensive enough to need this. Please correct me if I am wrong though or just don't understand what you are saying. Also, PM in IRC, I would like to talk to you. :)

I am also currently working on refractoring the core. It will probably not work with multiple servers at this time, although hopefully when I am done the code should be more readable and better documented. Possibly even more efficient. Not sure, we will see.