Starman and upload progress

33 views
Skip to first unread message

Bill Moseley

unread,
Oct 23, 2012, 1:07:50 PM10/23/12
to psgi-plack
It appears that when using Starman (with Catalyst) that requests are bufferend before passing off to the app.   What happens is that the Catalyst UploadProgress plugin does not see any data until it's all been sent to the server.  (So, the progress bar stays at 0% until the upload is complete and then quickly jumps to 100%.)

Wondering how best to address this issue.

A few questions:

Am I correct that this buffering of the upload request happens in the Starman child/worker process -- so although Catalyst isn't seeing the request until the upload has completed the process is still busy?   That is, it's not like store-and-forward done by Nginx or Perlbal where the  process is free to handle other requests during this time?


At one point we were using Perlbal for balancing -- on separate machines than the web servers with heartbeat and failover.   Now we have good hardware load balancers.   I'd prefer to not run a another set of balancers in this setup, so was thinking of running Nginx or Perlbal on each web server.   See any disadvantage of this kind of configuration?

Any other configurations to consider?

Thanks,




--
Bill Moseley
mos...@hank.org

Tatsuhiko Miyagawa

unread,
Oct 23, 2012, 1:10:47 PM10/23/12
to psgi-...@googlegroups.com
On Tue, Oct 23, 2012 at 10:07 AM, Bill Moseley <mos...@hank.org> wrote:
> It appears that when using Starman (with Catalyst) that requests are
> bufferend before passing off to the app. What happens is that the Catalyst
> UploadProgress plugin does not see any data until it's all been sent to the
> server. (So, the progress bar stays at 0% until the upload is complete and
> then quickly jumps to 100%.)
>
> Wondering how best to address this issue.
>
> A few questions:
>
> Am I correct that this buffering of the upload request happens in the
> Starman child/worker process -- so although Catalyst isn't seeing the
> request until the upload has completed the process is still busy? That is,
> it's not like store-and-forward done by Nginx or Perlbal where the process
> is free to handle other requests during this time?

Correct.

>
> At one point we were using Perlbal for balancing -- on separate machines
> than the web servers with heartbeat and failover. Now we have good
> hardware load balancers. I'd prefer to not run a another set of balancers
> in this setup, so was thinking of running Nginx or Perlbal on each web
> server. See any disadvantage of this kind of configuration?

Perlbal does its own buffering for uploads, depending on its configuration.

> Any other configurations to consider?
>
> Thanks,
>
>
>
>
> --
> Bill Moseley
> mos...@hank.org
>
> --
>
>
>



--
Tatsuhiko Miyagawa
Reply all
Reply to author
Forward
0 new messages