Re: Application servers / job priorities ?
| From: | Hugh Bothwell | Date: | Wed, 24 Oct 2001 14:38:36 +0000 |
| Subject: | Re: Application servers / job priorities ? | ||
| References: | 1 | Groups: | php.general |
| Request: | Send a blank email to php-general+get-72105@lists.php.net to get a copy of this message | ||
"Lee" <lreilly@lanl.gov> wrote in message news:3BD6CE59.5BA8537B@lanl.gov...
> I am developing a portal that will allow users to perform various
> calculations on their data sets. These calculations (handled by C /
> Fortran programs) will be run as external processes (and may take up to
> a few hours to complete). I am wondering if there is something that I
> can use (either in PHP or as another external process) to act as an
> application server i.e. allow multiple users to submit requests for
> calculations, but place these requests in a queue - perhaps associating
> each calculation with a priority, and handling each request as
> appropriate.
>
> Can anyone suggest anything that may faciliate this? Any links/hints
> would be greatly appreciated. Thanks very much in advance.
I would separate this into front end/back end systems.
The front end lets people sign in, submit a data set, request an operation,
and set the priority. It should let them view job status and
reorder/reprioritize the jobs. All this information gets stored in a
database (three tables - one for users, one for data sets, one for jobs).
The back end runs independantly - repeatedly queries the database to find
the next most urgent job and spawns a program to do the calculation. Play
with the number of concurrent threads per processor to find a good balance
to keep the system busy but not bottlenecked.
This set-up would make it very easy to distribute the calculations across
multiple systems to speed things up.