[Catalyst] HTML::FormHandler performance issue in Catalyst app -- 50 seconds?!

will trillich will.trillich at serensoft.com
Tue Apr 12 01:53:05 GMT 2011


Hi folks -- this may be more of a FormHandler question than a Catalyst
question but I thought I'd check here to see if it's just us:

We've been using HTML::FormHandler and are basically happy with it... until
the performance issue mentioned below hit us. Any Catalystas running into
50-second turnaround time with H:FH?

[info] Request took 51.956100s (0.019/s)
.------------------------------------------------------------+-----------.
| Action                                                     | Time      |
+------------------------------------------------------------+-----------+
| /auto                                                      | 0.000181s |
| /auth                                                      | 0.001857s |
| /ticket/base                                               | 0.004652s |
| /ticket/item                                               | 0.005865s |
| /ticket/edit                                               | 51.88091s |
|  Base:EDIT                                                 | 51.88050s |
|   get FORM                                                 | 0.000078s |
|   process FORM                                             | *51.87286s* |
| /end                                                       | 0.000290s |
'------------------------------------------------------------+-----------'

Turnaround time ranges from 6 seconds to 50+ seconds, with no discernable
pattern to the delay. (We can edit the same record multiple times and get
wildly differing lags.)

The code for the processing is basically as follows:

    $stats->profile(begin=3D>'get FORM');
    my $form =3D $self->form;
    $stats->profile(end=3D>'get FORM');
    my $params =3D $c->req->params;
    $stats->profile(begin=3D>'process FORM');
    my $processed =3D $form->process(
        item   =3D> $item,
        params =3D> $params,
    );
    $stats->profile(end=3D>'process FORM');

System load for this (Linode) server was 0.04 or below during all our tests.
There are 31 fields in this form relating to one table in the database; two
of these forms are *many_to_many* with linking tables.

Ideas?

-- =

11 cheers for binary!
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.scsys.co.uk/pipermail/catalyst/attachments/20110411/fac2b=
013/attachment.htm


More information about the Catalyst mailing list