The performance of your site isnt *only* related to perl. We're talking network latency, machine speed, ram, IO, disk speed et al. Much of the overhead with perl CGI's is related to brining up the perl interpreter. (one instance per CGI). Check out mod_perl, it is apache with the perl binary build into it at compile time (Only have to load perl when you start apache).

DONT USE FLAT FILES!, I'm thinking of several reasons:

  • Integrity - you may trash your "database" via a fatfingers (or late night) typo, very easy to do if you delete where you should have inserted.
  • Normalisation - much easier to do in an RDBMS than using flat files. If you're unsure as to what normalisation is, i reckon it could be a good research topic.. :-)
  • Scalability - It is much easier to preserve normalisation and extend your database using SQL than flatfiles.
  • Data integrity - Foreign key constraints. Enforcement of primary key, data typing, all native to an RDBMS you "should" use..

    Why use perl over ASP? Microsoft.. :-) completly irrational argument. TBH both may do the job, both platforms have quirks and the performance is highly dependant on application design. I'd choose perl as its easy, lots of support (you posted the question here didnt you?), and portable, (you can run it on solaris, linux, windows...). Also means your choice of host provider is not as limited.

    What makes MySQL better than others? Not much IMO. The latest stable release doesnt support transactions (Postgres, Oracle does). Both Postgres and MySQL are free, both have heaps of support... If youre leaning toward more of an "Enterprise" solution, Postgres may be the way to go as it is transaction based. If you're not particularly worried about this feature, MySQL might be the way to go.

    Of course if you have lots of cash, i'd say Oracle, which would probably be complete overkill for a small(ish) application.. :-)

    Anyways, good luck.

    Update: Whoops, i stand corrected on my ASP comments after reading IlyaM's post.


    In reply to Re: PERL/CGI Performance by Ryszard
    in thread Perl/CGI Performance for a Shopping Cart by Sasquire

    Title:
    Use:  <p> text here (a paragraph) </p>
    and:  <code> code here </code>
    to format your post, it's "PerlMonks-approved HTML":



  • Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
  • Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
  • Read Where should I post X? if you're not absolutely sure you're posting in the right place.
  • Please read these before you post! —
  • Posts may use any of the Perl Monks Approved HTML tags:
    a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
  • You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
            For:     Use:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.