Greetings,

One of the tasks here at $firm is developing a cgi-application. It is a rather simple thing using CGI.pm, some database connections and scary amounts of print-statements. Organic growth of the application has shown that this approach is (unsurprisingly) not good enough.

We are researching different solutions, and one of them is CGI::Application, supported by HTML::Template and CGI::Session. Testing will be conducted with Test::More and screen-scraping with WWW::Mechanize. This is all well and good, but we are also inspecting other avenues.

As $firm is quite enamoured with .NET, this is an obvious choice that offer advantages and disadvantages that will not be detailed in this forum. Another alternative would be J2EE, or even some CMS system or other.

From this rather long-winded introduction comes my question. In the name of buzzword-compliance, can Perl offer something akin to the multi-tiered architectures that J2EE and .NET market so heavily?

I want to say that separating business logic and database access into modules that implement CGI::Application, and presentation with HTML::Template is already (logically) a three-tiered architecture. Is it possible, or even interesting to divide these into physical tiers? Placing the presentation logic on one server and the CGI::Application stuff on another?

I could imagine some solutions, but they would be home-rolled and communicate on sockets and such. From a quality assurance viewpoint (another buzzword here at $firm), this is clearly not desirable. We simply do not have the resources to re-implement an enterprise server communication system in Perl, even though it could be quite an interesting challenge ...

Performing a last CPAN search before posting this dug up Oak::Application, which shows some promise. It is somewhat poorly documented though, so I'm not sure if this is a viable alternative. It seems to be a framework for muli-tiered applications, does anyone have any experience with this module?

Any enlightenment will be greatly appreciated. Thank you for reading this.

pernod
--
Mischief. Mayhem. Soap.


In reply to Multi tiered web applications in Perl by pernod

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.