[eluser]jedd[/eluser]
[quote author="Opel" date="1237391561"]I am looking for advice on a Codeigniter development we are about to start. The site is a social site and requires maximum uptime so the proposed solution is to host the site (CI) on a separate server from the MYSQL database which would in turn be mirrored and backed up else where.[/quote]
When you say mirror - do you mean hot or cold? Phil's bang on the money about MySQL replication, but I can't work out if that's what you mean you're doing from the get-go. (Mirror means lots of different things to lots of people.)
If you are going to do it later, then you need to design it now - again as Phil says, separating your reads from your writes is something that'll split some load around. If you ever go to two slaves, then it becomes .. more confusing.
If you ever want to go to more than one web server, then it becomes particularly confusing - off the top of my head, I think it'd be painful to try to do a complex RESTful site using CI.
Going back to your original question, though .. you say you want to separate the DB from the web front end in order to
maximise uptime - but having two possible points of failure instead of one doesn't assist with that goal - it increases your risk of downtime.
Quote:I was wondering if there will be any issues with hosting the database on a separate server from the CI app and will it affect anything with the CI cache library?
Well, apart from the added code complexity, the problem of coding something to scale even further later, the immediate performance hit, the greater exposure to hardware faults ..
How big will the database be, and how many concurrent users are you designing for? What's the network capacity between your web server and your database server, and what's the size of the pipe to the Internet? How normalised is your schema? Are you using stored procedures?
As to the CI cache library - my understanding of a 1 x web, n x db server configuration is that there's no concern - the web server is where the cache is stored.