How much can PHP / MySQL handle?



  • I'm the web manager of a small but growing company and am seeking advice on which direction to take us in. We want to expand our current website into a community site that will pull customer records from our e-commerce system that was just designed for us. We will pull over the customer data into our own database on the community side. The e-commerce uses Java and Oracle.

    We currently get 75,000 visits per month (500,000 hits), with 5,000 visits on our busiest day of the week. If in 5 years we grow to 160,000 on our busiest day, will PHP and MySQL still be able to handle the load? Just slap me if I'm stupid, but isn't Word Press (96 million visits per month) written in PHP with a MySQL database, or is that just a nasty rumor? Also, I heard that Wikipedia uses PHP and MySQL.

    If MySQL is a problem, I could use PHP with SQL Server too, right?

    .NET is also an option but I'd like to use PHP if I can. Just personal preference, and we have had a bad experience with our current e-commerce website built with .NET.

    I've done some research and one conclusion is that it's the skill of the developer that is most important, not the platform.

    We currently have a forum in .NET and have been using SQL Server for online forms, etc., and our websites are written in both PHP and ASP, so we really have a mixed bag right now that needs to be cleaned up and standardized. I want to make the right decision before we start moving full force in one direction.



  • @zibworm said:

    I've done some research and one conclusion is that it's the skill of the developer that is most important, not the platform.

    Yep, it is, unfortunately its partically impossible for someone non-technical to pick out the skilled developer from the practiced bullshitter.



  • True, but I'm not a non-technical person. I've programmed in Perl, Java, C++ and PHP, and have a bachelor's in CS, so I'm not a dummy. But I'm also not a software developer. The fact is, we need to hire someone who is at a higher level to help us, and will have to just to the best we can. I will definitely hire carefully. Thanks for the advice.



  • Amusingly enough, there was [url=http://forums.thedailywtf.com/forums/t/9310.aspx]another topic[/url] a while ago with almost the same subject. You might gather something from it.



  • I know. I read that, but it wasn't really helpful for my question. The load will be considerably more for this project, especially as we grow. Everyone says PHP and MySQL are scalable, but what does that mean, really? Everything has it's limits. I'm trying to figure out if anybody really knows what that limit is -- i.e. an actual number.



  • @zibworm said:

    I know. I read that, but it wasn't really helpful for my question. The load will be considerably more for this project, especially as we grow. Everyone says PHP and MySQL are scalable, but what does that mean, really? Everything has it's limits. I'm trying to figure out if anybody really knows what that limit is -- i.e. an actual number.
    42



  • PHP and MySQL can handle quite a bit, but it all comes down to how you structure things.  If you are running 1 web server and 1 database server with decent specs for a modern system (2ghz quad-core, 4GB ram, 10k+ RAID drives) then it can easily handle 160,000 hits a day, so long as the software isn't badly written.  Web server scalability is pretty easy, you just need additional web servers and a load balancer.  Database scalability can be more difficult, but it can be alleviated by partitioning the data onto different DB servers and by using a caching system like memcached.  If this is eventually going to be a goal for you, it is best to hire someone who is familiar with large-scale DB and memcached architecting.  Even if you are only worrying about a max of 160k hits per day right now, it would still be advisable for you to look into DB replication and a 2nd webserver with load balancer for redundancy.  Getting a developer and sysadmin who has experience with replicated MySQL and web server scalability would be recommended.  It will also help if you scale up extremely in the future, as the code will be more flexible and designed to be scaled.

     

    Yahoo, Facebook and Wikipedia all run on PHP, MySQL and memcached.  Livejournal and Slashdot run on perl, MySQL and memcached.  As far as technologies go, they are quite capable of handling massive capacity, but the most important part is finding developers and system engineers who can leverage the technologies effectively and who can formulate a long-term plan for scalability.



  • morbiuswilters - Thanks. This is helpful information. The best I've had all week.



  • @zibworm said:

    morbiuswilters - Thanks. This is helpful information. The best I've had all week.

    I'm very pleasing to the ladies.  Hit me with a PM. 



  • @morbiuswilters said:

    @zibworm said:

    morbiuswilters - Thanks. This is helpful information. The best I've had all week.

    I'm very pleasing to the ladies.  Hit me with a PM. 

     

    I sent you a PM, can you please the gentlemen too?


Log in to reply