CGI and DestroyStack property
Tariel Gogoberidze
tariel at mac.com
Thu Apr 27 18:10:10 CDT 2006
On Thu, 27 Apr 2006 08:42:30 -0700, Richard Gaskin wrote:
> It sounds like you could safely use a separate stack file for each
> user,
> which might also bring a modest performance boost since it would only
> be
> loading the data for the current user.
>
> I have a bug reporting tool I'll be demoing at RevCon which uses that
> approach: each user has a folder on the server, and while they can
> read
> files from any folder they only write to the ones in their own.
>
> In your case that may be all you need. With the bug tool I also needed
> to allow admins to write to those files, so to avoid conflicts I just
> write a flag file to the folder to note that it's being edited, and any
> attempt at write-access to the file first checks for that flag and
> reports to the user if the file they want is in use. Once the save is
> done the flag file is deleted.
Thanks Richard, nice tips. I must have one stack however, because it
summarizes quiz results for all students and sends summary back to each
student.
So, I guess my option is to manage users access through flag in
external file and wait in CGI script either in repeat loop or with
send in time until access to stack is allowed.
In my case, processing time in CGI takes 5 milliseconds + 5
milliseconds on saving the stack and it's unlikely 2 users out of
50-100 would hit "finish quiz" button inside the same 10 millisecond
time spot. I hope in worth case scenario there would be just extra
20-30 milliseconds before user request would be processed. Or, if all
100 users would send request at exactly same time it would be 10x100= 1
second delay for user # 100 :). I would probably write a test stack
that would imitate and benchmark such situation.
Still, stay-resident solution for MC CGI engine would be great been it
running as daemon or with fastCGI or whatever.
Pierre in his article writes that "Only the Linux platform will
provide the opportunity to use the Metacard/Revolution applications
server in daemon mode" and while he mentions OS X and win XP as well
later and has his solution for download
"http://istream.homeunix.com/insead/index_en.html" , it's not clear for
me if it would make MC CGI stay-resident on OS X and solve above "write
to stack" problem, even if I dig in and implement his solution.
Basically, it would be great to know if anybody succeeded in making MC
CGI stay-resident on OS X (I don't have linux box) and thus preventing
engine quitting after CGI script is executed and launching the new
copy of the engine on each call.
Any insights ?
best regards
Tariel
More information about the metacard
mailing list