Re: Spaawn another process

Поиск
Список
Период
Сортировка
От Andrew McMillan
Тема Re: Spaawn another process
Дата
Msg-id 1036662153.20144.907.camel@kant.mcmillan.net.nz
обсуждение исходный текст
Ответ на Re: Spaawn another process  ("YC Nyon" <ycnyon@pd.jaring.my>)
Список pgsql-php
On Wed, 2002-11-06 at 19:09, YC Nyon wrote:
> In my PHP page, I need to run a external program to insert map data into
> Postgresql. However, the process is very slow (can be 10 mins). How do I
> return a webpage telling the user that the process is running and permits
> the user to browse the other parts of the web application.
>
> My idea is to run the "exec();" after the </html> tag. Would that be the
> way?

I would tend to not start it from PHP, but to write enough details into
a "queue" table which would be processed in sequence by a background
task.

This approach:

a) simplifies your PHP a bit,

b) avoids the issue of 'when' entirely,

c) lets you write status into the queue table and have a page that tells
them it's 50% done, or is next in the queue, or whatever,

 and

d) makes the handling of 10, 20 or 30 minute jobs one which hits the
database serially, rather than in parallel (or you can control the
parallelism to a level your equipment can handle).


Cheers,
                    Andrew.
>
> TIA
> Nyon
>
>
> ---------------------------(end of broadcast)---------------------------
> TIP 4: Don't 'kill -9' the postmaster
--
---------------------------------------------------------------------
Andrew @ Catalyst .Net.NZ Ltd, PO Box 11-053, Manners St,  Wellington
WEB: http://catalyst.net.nz/         PHYS: Level 2, 150-154 Willis St
DDI: +64(4)916-7201     MOB: +64(21)635-694    OFFICE: +64(4)499-2267
           Survey for nothing with http://survey.net.nz/
---------------------------------------------------------------------


В списке pgsql-php по дате отправления:

Предыдущее
От: "Papp Gyozo"
Дата:
Сообщение: Re: Spaawn another process
Следующее
От: Andrew McMillan
Дата:
Сообщение: Re: Can't seem to get Psql and Exec to work together