Official Community Forums
 
HomeHome  FAQFAQ  SearchSearch  MemberlistMemberlist  UsergroupsUsergroups  RegisterRegister  Log in  The Wiki  Website  github Project  

Share | 
 

 Order of Plugin Initialization

View previous topic View next topic Go down 
AuthorMessage
Guest
Guest



PostSubject: Order of Plugin Initialization   Wed 20 Nov - 22:09

Does anybody know what is the best sequence order to initialize the plugins other than DomainServer* within a single instance of Java as opposed to 7 independent ones/processes?

*I already have this part working.


Domain Server:
Code:
bin\java.exe -cp "bcel.jar;getopt.jar;injected.jar;jython.jar;log4j.jar;mars.jar;multiverse.jar;mysql.jar;rhino.jar" -Dmultiverse.propertyfile="multiverse.ini" multiverse.msgsys.DomainServer -t "mvsys.txt"
Everything Else:
Code:
bin\java.exe -cp "bcel.jar;getopt.jar;injected.jar;jython.jar;log4j.jar;mars.jar;multiverse.jar;mysql.jar;rhino.jar" -Dmultiverse.propertyfile="multiverse.ini" multiverse.server.engine.Engine -t "mvsys.txt" -i "mvsys.py"
*mvsys.txt and mvsys.py are empty right now
Back to top Go down
Delurin
Head of Platform Development


Posts : 424
Join date : 2011-08-03

PostSubject: Re: Order of Plugin Initialization   Fri 22 Nov - 6:46

I am not sure why you want to consolidate all of the plugins but your best bet would be to look at the multiverse.properties file with the list of plugin dependencies.

I am curious if when running them all on one instance if you have a problem with handling Message Responders I seems to recall having trouble with two identical Message Responders in different plugins not working correctly with the same Agent.
Back to top Go down
Guest
Guest



PostSubject: Re: Order of Plugin Initialization   Fri 22 Nov - 8:35

Well the general idea was to make it compatible with Apache Tomcat (and possible achieve some RAM savings as an added bonus).

I used a home-brewed tool to fetch the command lines of any and all processes named "java.exe" in August.

What got me pondering was that 7* of the 8 instances in the default original configuration are half-indentical or they all load the same common files with the difference of a small selection of a PY file or TXT file on each one.

In matters with responders, the "agenttype" switch wasn't listed on all of them. If multiverse plugins are on a "subscription" model, it sounds like each plugin is like a listener tuned in to a radio station but with bi-directional communication, so I wouldn't have thought a conflict like that could happen, it's like in-house IP-UDP.

I hope i'm making sense on all of this.

*I left the DomainServer out because I had NetBeans study the available entry points of multiverse.msgsys.DomainServer but a plug-in option isn't available.
Back to top Go down
Delurin
Head of Platform Development


Posts : 424
Join date : 2011-08-03

PostSubject: Re: Order of Plugin Initialization   Fri 22 Nov - 8:52

I believe the reason they all load common files is because they are designed to be able to work on different computers to distribute the load. In reality I doubt you would need to have each process on a different server. The biggest usages I have found (with our server at least) are with the WorldManager and the MobServer I can see wanting to move them to their own servers. I am not sure how much ram you would be saving the majority of the ram for our server is used with the WorldManager probably because we have hundreds of instances and the 2-300K objects as a result we are using close to 3 gigs on the WorldManager alone while the rest of the processes are using maybe a 100 megs. The other advantage separating the processes is the performance gain with multiprocessor/cores.


I believe at the time when I had the problem I thought it had to do with the code responsible for waiting for all responses from the Responders and it would consider the agent to have responded if on response was received instead of two and would throw and error saying that it got and unexpected response from the second responder. Just something you may want to keep in the back of your mind if you are having an error occuring if you register to respond to say the Logout message.
Back to top Go down
Guest
Guest



PostSubject: Re: Order of Plugin Initialization   Mon 25 Nov - 2:34

Delurin wrote:
In reality I doubt you would need to have each process on a different server.
Hang on, I don't recall saying about a one process-per-server model as one of my targets, I meant it as part of a consolidation of Java instances (i.e. using fewer instances) within the "one computer". The default configuration of a clean copy of Multiverse from GitHub is one Java process "per plugin" (including compulsory ones), not one per machine.

I am sure that headroom on most computers won't be an issue as I have, in early 2012, ran a successful (but extremely messy) setup on a Core 2 Duo E6600 system with just 3GB (my system was 32-bit at that time) and it ran no problems whatsoever even with the client running on the same system.
Back to top Go down
Delurin
Head of Platform Development


Posts : 424
Join date : 2011-08-03

PostSubject: Re: Order of Plugin Initialization   Mon 25 Nov - 3:26

I know I was just saying that I think that is how it was originally designed: with the capability of separating each plugin on a separate server.
Back to top Go down
Guest
Guest



PostSubject: Re: Order of Plugin Initialization   Wed 27 Nov - 22:27

I'm gonna start a new thread because I have noticed that my original query was too narrow scoped.
Back to top Go down
Sponsored content




PostSubject: Re: Order of Plugin Initialization   

Back to top Go down
 
Order of Plugin Initialization
View previous topic View next topic Back to top 
Page 1 of 1
 Similar topics
-
» Specific parameter by car to replace in the leoFFB plugin.in
» UT3 installation order
» Order & Chaos (Iphone/Ipad)
» Games Workshop order *placed*
» New Avenger Sets TRU Pre-Order

Permissions in this forum:You cannot reply to topics in this forum
 :: Development :: Server Scripting and Development-
Jump to: