baancust
23rd November 2005, 13:36
Dear All,

I would like to know if there is any limit on no of processes supported by a bshell.
i am trying to run different 3gls in background using activate() function.
each of the run takes around 4 min to get executed .When i tried giving 5 simultaneous runs it worked and i got o/p in 15 min.When i tried 10 3gl's it still worked and they gave o/p in 40 mins. However when i tried 15 the whole thing got stuck it kept running for more than 1 : 30 min giving no o/p.Also when i checked the process list (of Unix) it always kept my bshell in sleep state.
Also after 2 hrs or so the bshell got killed.

Also we are giving these runs using BOI.The JSP the just puts the run baan
server and comes out.Later these runs start on baan server.

Time is not much of a problem for us but we want to be sure that it gives o/p before we give the system to the user.


Does any one have any idea about how the bshell carries out its scheduling?

One more question may be a little out of context here but can starting severals runs parallely using activate help is performance improvement?
(For eg a session running for 10 comp internally works in the selectdo of comp master performing the whole processing sequentially for each company instead if we start different process for each company in background(using activate()) and merge their o/p in the end will it be of any help?)


Regards
Baancust

Hitesh Shah
23rd November 2005, 15:13
One more question may be a little out of context here but can starting severals runs parallely using activate help is performance improvement?
(For eg a session running for 10 comp internally works in the selectdo of comp master performing the whole processing sequentially for each company instead if we start different process for each company in background(using activate()) and merge their o/p in the end will it be of any help?


Bshell is a best process scheduler for multiple light weight processes (baan sessions) within bshell. So if the same user fires multiple processes (having substantial memory & CPU usage and hard disk IO) , it does not improve performance much. Ur statistics too indicate the same thing. Lot of other factorslike free OS resources avaialbale , max user resource available etc too plays significant roles in this.

NPRao
23rd November 2005, 21:17
baancust,

Refer to the threads -

Multi Bshell (http://www.baanboard.com/baanboard/showthread.php?t=14666&highlight=parallel)

bshell process (http://www.baanboard.com/baanboard/showthread.php?t=14685&highlight=parallel)

Open World is single thread or mutithread? (http://www.baanboard.com/baanboard/showthread.php?t=12268&highlight=bshell)

I am not clear, how you built your programs (3-GL, 4-GL) optimized SQL queries, XML tree and memory handling etc, or using OW (you can have multiple bus components to start a bshell per connection, connection on demands or with a limited number of connections per bshell etc).

Our Web Interfaces communicate with our 20 sockets with a Round Robin logic and at any instant we can handle atleast 10 requests per socket without affecting the performance badly. To achieve that the SQLs have to be very efficient. We are implementing OW now.

There was also an issue in the previous versions of porting sets-
SITUATION DESCRIPTION:
When running 3gl objects from the command line using 'bshell6.2 -server ...' only one process running gets any 'ticks' so only one thing can run at a time.

SOLUTION DESCRIPTION:
A problem was found and fixed in the bshell scheduling code. The fix will be delivered in porting set 7.3a.06.

baancust
25th November 2005, 05:19
Thanx for the help guys.I really appreciate your advice.