Slashdot Mirror


Help Test mod_perl 2 Release Candidates

stas writes "After almost 3 years of work mod_perl 2 is almost ready for its 2.0.0 release. We plan to make the gold release in a few weeks. Please help to test the release candidates by starting to port your mod_perl 1 applications to mod_perl 2. Make sure to read the documentation and report any problems that you may have discovered. Thanks."

13 of 54 comments (clear)

  1. Is mod_perl a legacy technology? by LizardKing · · Score: 2, Interesting

    Not a troll, but something I'm genuinely wondering about - haven't things like J2EE, .Net and PHP made mod_perl obsolete? Back in the bad days of the web, the choice was C or Perl hooking directly into the Apache API to avoid spawning too many processes. Then along came Java servlets or ASP for those drawn to the dark side. Would anyone really consider mod_perl for a serious sized web application any more?

    1. Re:Is mod_perl a legacy technology? by sporty · · Score: 3, Insightful
      Uh. noo... mod_perl is old as an idea, but it's certainly not legacy in the same way that dbase is legacy. Only thing bad about mod_perl is trying to use it with apache2 in its threaded mode.


      Btw, php does not make mod_perl obsolete. Yes, php can be hosted in a lesser secure area, as php scripts assume the user its running as, but that's about it. It's an ugly language full of redundancy, bugs and inconsistent style. j2ee and .net, not so much.


      Biggest problem with php, is their "modules" are c-compiled. There is the least portability with it. With perl, perl written modules, not the XS modules, can be easily copied anywhere. j2ee not so much, as the configuration files change format from server to server. But from os to os, they are the same.

      --

      -
      ping -f 255.255.255.255 # if only

    2. Re:Is mod_perl a legacy technology? by Anonymous Coward · · Score: 4, Informative

      Well, there is of course slashcode, and Amazon.com also uses mod_perl and HTML::Mason (see http://www.masonhq.com/?AmazonDotCom/). I'm sure there are many others as well.

    3. Re:Is mod_perl a legacy technology? by Airwall · · Score: 4, Informative

      It's not really fair to equate mod_perl to per-page interpreted languages.

      mod_perl, and to a certain extent Java servlets, gives you a huge amount of power over the web serving process, and are suitable for developing web applications that can do almost anything with HTTP.

      PHP, ASP and the like give you a per-page interpreted language, oriented to producing one page of HTML at a time. They are much easier to get started with, and they're the "right" choice for most websites.

      Of course middle-men between the two camps exist: Servlets have JSPs, for example, which obey a per-page paradigm but are run by servlets. There are also third-party templating system with greater or lesser degrees of flexibility/depth/power (Tapestry is a particularly impressive one.) My own website (http://n3dst4.com , rather than the one in my profile) is written in Mason, which is an interpreted component and template layer on top of mod_perl. Because of the depth of control that mod_perl has, Mason can do some things that PHP can't, like having a completely programmable request handler, global or per-directory pre-handlers, a seamless component model).

      I'm not dissing PHP, though. The site in my profile (Sacred Steel) is written in PHP, because it was the right tool for that job.

      Oh, and remember that .net and J2EE are allegedly complete enterprise programming platforms, while mod_perl is just one specific technology for web application programming.

    4. Re:Is mod_perl a legacy technology? by Airwall · · Score: 2, Insightful

      The Register uses Bricolage, a content management system written with Mason, a mod_perl application. It's a bit of a stack, but it works good.

    5. Re:Is mod_perl a legacy technology? by KeyserDK · · Score: 2, Interesting

      I'm actually developing new sites with AxKit.

      --
      still reading?
    6. Re:Is mod_perl a legacy technology? by consumer · · Score: 2, Informative
    7. Re:Is mod_perl a legacy technology? by LordMyren · · Score: 2, Insightful

      mod_perl, and to a certain extent Java servlets, gives you a huge amount of power over the web serving process, and are suitable for developing web applications that can do almost anything with HTTP. (emph. mine)

      even as you attempt to broaden the sense that mod_perl is more than just some content generating script, you undermind the essence of what you talk about.

      mod_perl is capable of being used to write entirely different protocol handlers: you can make apache serve FTP or ssh with mod_perl, if you're insane enough to do so. it can completely alter the flow of information at any step in the proces, thanks to apache's beautiful filtering & module structuing.

      as you state, mod_perl uses the apachi api to tie itself deeply into the apache server engine itself, performing all sorts of reconfiguration of apache. `tis truly divine.

    8. Re:Is mod_perl a legacy technology? by wwahammy · · Score: 2, Insightful

      I don't see why they wouldn't. I really think it comes down to what best fits your situation and what skills you have. I think PHP is great and I'm a casual programmer but I think the lack of namespaces can be super confusing in large projects. I've used Perl and its got tons of features and mod_perl is incredibly fast but its to say the least confusing. .NET is stuck to MS servers to the most part. Its just using what works best for you.

  2. "use Apache2" considered harmful by merlyn · · Score: 3, Informative
    Keep in mind that this release does not play well with others, especially prior mod_perl1 installations.

    In order to have two different versions of things like Apache::Request (which have changed implementations without changing names), the modules get installed as $libdir/Apache2/Apache/Request.pm. Of course, you're then expected to "use Apache2" to add $libdir/Apache2 to your @INC path. Of course, this breaks every other element of the Perl toolchain that expects that @INC is not changed in such a radical fashion.

    This release currently has problems with the PAUSE indexer, the CPAN installation tools, perldoc, and installation of manpages, because they all expect @INC to not be so badly hacked. Stas is trying to work out solutions with the community, but mostly in the form of "This is the way modperl2 works, please fix all your tools", and that's not flying well.

    So, beware to those who install this release.

    1. Re:"use Apache2" considered harmful by Anonymous Coward · · Score: 2, Insightful

      Remember also that under Windows AP2/MP2 is the only stable option currently available.

      Personally I have been using MP2 in production on windows for well over a year - call me an early adopter :-)

      FYI the only problem the windows install has ATM is the a bug that took from perl5.8.3 to perl5.8.6 to fix.

      On the linux side the benefit of the reduced memory profile and increase in performance we have seen is enough to migrate new installations to AP2/MP2. We have yet to have a problem on the Linux side and no longer see swapping.

      Stas and the team overloaded the Apache:: namespace to make MP1 to MP2 migration easier.
      Why no one perlish (including myself or randall) complained at the time is inexcusable.
      I should have spotted this problem then and for that I apologise to Stas and the team.

      Regarding not using AP2/MP2 I think that this will (hopefully) have little effect.

      The windows folks use PPM's which do not rely on PAUSE/CPAN model.

      On the linux side AP2/MP2 tends to be the choice of commercial distributions.

      Getting people to step back down the ladder because even more stuff can no longer be found on CPAN will hopefully not happen.

      Personally rather than backbiting we should be trying to extend CPAN to cover the more generic problem of external dependencies, rather that trying to ignore it or assign blame.

      After all perl interfaces to a lot of systems and I do not want to see versioned namespaces such as ApacheN XML2 etc for even more external dependancies.

      Jacqui dot Caren
      at
      mymail.aixx.com

  3. Re:mod_perl by Silent1 · · Score: 2, Informative

    slashdot big enough for ya?

  4. Re:mod_perl by innerweb · · Score: 3, Informative
    Are you kidding? PHP, Java and the rest do not have bigger applications than what are done in Perl using mod-perl!

    It has more of a learning curve than php at first, and probably is not appropriate for small static sites, but I have never seen PHP or Java rip out major stuff as fast as Perl, then migrate, modify or otherwise perform client expectations that require redesign. I have worked for two companies where we went to Java. At both companies, more than half the stuff that went to Java was sent back to perl to decrease response time for client needs. Another company I contract to went to PHP for their site when they started, but wound up re-writing the whole thing in Perl with mod_perl when they had a database change. It was faster, and the code came out more manageable, faster and more stable. We learned very quickly that a programmer who writes bad code does it in all languages, and all the good programmers wrote clean concise well documented code (most of the time). And when they wrote something sloppy, it was no more difficult to figure out what they had written than it was in the other languages (Java, php, C, C++, sql, ...)

    It is very simple. I am paid by my clients to provide, maintain and modify code. They expect that I will charge them less than others and provide strong solid support and service. Most of them expect one day to one week turn around for change requests. Since we manage the code ourselves, it is very important to us that the code be quick, clear and concise. It must be as reuseable as possible. It must be able to be picked up with and run by new people or contractors. The Java took too long to make the same things happen and PHP ran into dead ends (could not, or more often took too long) when upgrading sites, migrating to new client databases or other client changes. In short, Perl has allowed us to undercut almost all of our competitors in this area. The ones we have not undercut are, believe it or not, perl based shops as well. Java does beat perl for some things as does php for some things, but in so many cases, perl has beat them both.

    InnerWeb

    --
    Freud might say that Intelligent Design is religion's ID.