Reaction Commerce Forums

Horizontal Scaling and AB testing


I am just wondering if there is any documentation on horizontal scaling, specifically I’d like to know if I can have multiple RC containers talking to a mongodb cluster without consequence.

And if that is the case, can some of them be themed different? i.e. have two themes

ContainerA: /imports/plugins/custom/A/client/styles/main.less";

ContainerB: /imports/plugins/custom/B/client/styles/main.less";

and direct incoming users randomly to one or the other, and then collect statistics on buying habits. Can such a thing be done on a single mongo collection without it being corrupted? This is assuming that the differences in this scenario would only be in less CSS.

note: I welcome discussion of other methods of implementing the AB testing scenario


So to test this I’m running a few containers under my rancher template that I mentioned in 489. Right now I’ve got a half dozen containers talking to the same mongoDB cluster under two different subdomains being load balanced by traefik. It all seems to run quite a bit better once I moved the mongoDB cluster outside of the ranch (which was using rancher-NFS as the storage driver).

Of note, the VM that the mongoDB resides upon now is still using the same hardware RAID beneath that the NFS was as this is all in a virtual lab I’ve setup with KVM to test things out. But certainly most databases perform rather poorly on NFS and this was to be expected, I’d like to hear other experiences with gluster, ceph, etc.

At this point spinning up containers is effectively giving meteor/reaction more cpu thread as I see it, I wouldn’t expect to see true gains until I dedicate separate hardware nodes to them each and get mongo off onto it’s own box. But I can say that I am not seeing corruption, and I am not seeing negative impacts of having different themed containers on separate hostnames hitting the same mongo collection, effectively giving me AB theming on the same store front.