Beefy Boxes and Bandwidth Generously Provided by pair Networks
laziness, impatience, and hubris
 
PerlMonks  

•Re: Image Hosting Application

by merlyn (Sage)
on Jul 20, 2004 at 16:53 UTC ( #376016=note: print w/ replies, xml ) Need Help??


in reply to Image Hosting Application

Through proper use of a mod_perl AuthzHander and Apache::DBI, you should be able to update statistics in real time and get reasonable performance from any solid transaction-based database (hint: PostgreSQL or Oracle, but probably not MySQL).

-- Randal L. Schwartz, Perl hacker
Be sure to read my standard disclaimer if this is a reply.


Comment on •Re: Image Hosting Application
Re^2: Image Hosting Application
by Seumas (Curate) on Jul 20, 2004 at 17:10 UTC
    I've not used mod_perl in an application yet - though I understand it. This is mostly due to the fact that the main service I run on my site is based on code I wrote awhile back that I am not positive would run without consistancy problems mucking everything up. I suppose a simple image-hosting script could be devised well enough to take the mod_perl plunge.

    And yes, I do code with use strict; use warnings; use diagnostics; on.

    I've wanted to move to mod_perl for two years now, but am apprehensive as it's a major change and the only solid way to know your code will perform reliably in a mod_perl situation is to test it with a lot of active users, which I don't have a way of doing short of putting it on the production server and crossing my fingers. :)
      Using mod_perl for an authz handler is independent of whatever old code you have at the mod_cgi level during the content phase. Feel free to migrate at your desired speed.

      However, the larger question is, how are you expected to do development when you don't have a valid test system including a load generator? I'd solve that problem first before worrying about a new bunch of code.

      -- Randal L. Schwartz, Perl hacker
      Be sure to read my standard disclaimer if this is a reply.

        I have a simple set of testing systems replicating only the software environment. The real testing system is coming along slowly. The server was a $5,000 piece of hardware I built from scratch and I clearly didn't have another $5,000 to duplicate the same thing. Two years later, I do have the few hundred bucks it now costs - but am having one hell of a time locating the same 3Ware RAID card I used. I fell asleep and missed the one I was bidding on at eBay!

        As for a load generator (which is the real requirement here)... Coming up with a simple load generator is pretty simple (the one that comes with apache - or siege for that matter) - but one that will mimic the complex activity of thousands of people bidding, buying, selling, posting items, posting messages, replying, editing images, uploading things and registering accounts is a major task.

        I acknowledge that for a web developer or other professional, these things would be terribly simple to accomplish, but I'm not a web designer, web developer or programmer. I just happen to have been writing in perl for a few years and just happened to have began my exploration of the language through the building of a test auction site - which blew up in my face when thousands of people began using it.

        Almost six years later, I find myself with thousands and thousands of members, thousands of auctions every day and a large need/demand for improvements yet still only my feeble brain and limited experience and knowledge to work with in the few after-work hours that I have free.
Re^2: Image Hosting Application
by Your Mother (Canon) on Jul 21, 2004 at 08:17 UTC
    (hint: PostgreSQL or Oracle, but probably not MySQL).

    I think MySQL has supported transactions (and foreign keys and such) for quite a long time now. From its manual: MySQL Server (version 3.23-max and all versions 4.0 and above) supports transactions with the InnoDB and BDB transactional storage engines. InnoDB provides full ACID compliance.

      Yes, but from what I understand, when you start using InnoDB, you sacrifice the only advantage MySQL has, which is speed and reliability for non-transactional database accesses. So if you want a fast, reliable transactional database, even MySQL with InnoDB doesn't cut it. Hence, my recommendation for PostgreSQL or Oracle, depending on your budget.

      -- Randal L. Schwartz, Perl hacker
      Be sure to read my standard disclaimer if this is a reply.

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://376016]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others taking refuge in the Monastery: (4)
As of 2014-09-18 06:08 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    How do you remember the number of days in each month?











    Results (108 votes), past polls