Load Balancing, MySQL, and MIVA Merchant 5

When a MIVA Merchant 5 store uses MySQL, there is usually not a problem with modules. The only time it could be a problem is if the host is using load balancing and they do not have it setup to accomodate access to legacy (older) databases that were used in prior versions of Merchant. Below are comments by two owners of hosting companies who make it clear that there are right ways and wrong ways of setting up MIVA Merchant in a load balanced environment.

David Hubbard at hostasaurus.com
..load balancing is easy if you do it via hardware; we have redundant Foundry ServerIron load balancers for customers who do this. Software load balancing is where it gets kind of ugly. Basically it would work like this:

1) Client's site points at an IP that exists on the load balancers.

2) Load balancer sends the request in to one of the real web servers.

3) The real web servers are using some type of shared storage for the /mm5 script directory at the very least; options include NFS, SAN, even Windows file shares if the web servers are Windows. There won't be a performance hit by having the scripts on shared storage because the operating system is going to cache the files anyway and the script files don't involve a lot of I/O

4) Empresa, on any of the servers, hits the one back-end MySQL server for its queries and returns the appropriate data to the load balancer which sends it on to the client.

So you can run a MM5 update, install a mod, or whatever else even when load balanced because it will be modifying the same back-end data and writing the script file to the shared storage so all servers have the new files at the same time.

Tim Traver at simplenet.com
This all depends on how you do load balancing, like David said...

In our case, we load balance both the users htdocs directories as well as the mivadata directories on Netapp NFS filers, so in this case, we shouldn't have any of these issues, because any module configuration dbf's will still reside in the mivadata directory as they have in the past, and all machines responding will have access to those, as well as the modules scripts.

I think the best thing for the users with mysql is that the search performance will be a thousand fold performance increase for sure...(depending on the structure I suppose).