Master-Master or dedicated app/db servers?

We’re running several websites on Windows 2003 servers in an ASP VBScript / MySQL environment. Right now they are divided over two servers on two different locations.
I don’t really know which variables give a good impression of server load, but I’m going to put the pageviews per day for every website.

Server A (Intel Xeon 2.8 Ghz / 2 GB RAM)
Website 1 - 23,000 pageviews per day

Server B (Intel Pentium 4 2.8 Ghz / 1 GB RAM)
Website 1 - 23,000 pageviews per day
Website 2 - 4700 pageviews per day
Website 3 - 7100 pageviews per day

The websites all have mostly the same structure, and they’re dynamic for the most part, so pretty much every pageview involves database interaction.
Each server also hosts several smaller websites, but these generate hardly any traffic compared to the ‘big’ ones only a few use MySQL.

On server B, the websites have seen rapidly growing amounts of visitors lately, and we’ve been having quite a bit of performance problems. I’ve almost run out of optimization options, so we’re thinking about buying a new server and putting it on the same location as server A. We will probably then use server B to host all the smaller websites.
So then we have two servers on the same location. My question is, what would be the best configuration?

  • Two dedicated servers; one application server and one database server
  • Divide the websites over the two servers and set up a Master-Master or Master-Slave relationship for MySQL

Or maybe another option?