0

We have to create and run (and do fulfillment) a webshop for 3 customers. Different urls, different layouts, different products but same product types (clothing). Each shop at least two languages. You can run it in one Magento installation but I think about to use 3 separate.

What are pros and contras for each strategy?

I collected the following by now:

Pro single installation / contra separate:

  • deployment easier
  • only one version repo, fixing a bug needs 3 changes
  • one connection to ERP instead of 3
  • administation much easier, a new attribute with 50 options and translations is not nice to insert 3 times for example

Contra single installation / pro separate:

  • Magento slowsdown with many products
  • reindexing problems with many products, with one-third it could run
  • if you have to invalidate caches, only on shop is affected
  • heavy traffic concerns only one and not all shops
  • special needs of customers can be implemented faster (and with less if statements:))

1 Answer 1

1

This is just my opinion.
If you don't plan to share any content between the 3 websites use separate installs.
You already listed the cons for having a single install. Now I will try to debunk the advantages you listed, because I think they are not as heavy as the downsides.

deployment easier

Not really. You will probably need 3 different themes. After some time you get lost in the files. If you need a functionality in only one website you have to take special precautions for that not to be available in the other 2.
If you have to rewrite a class, it will be rewritten for all 3 websites. You may end up with a lot of if statements or config settings.
What if you later want to upgrade only one site?

only one version repo, fixing a bug needs 3 changes

You can have one repo for each website and the shared modules can be on sub repositories.
This way, you can fix a bug only once.
And even if you don't use sub repositories, if the modules are identical, it's just a simple copy/paste/deploy issue.

one connection to ERP instead of 3

I got nothing on this. Maybe this is actually an advantage, but I'm not sure

administation much easier, a new attribute with 50 options and translations is not nice to insert 3 times for example

You can always script your attributes in install/upgrade files. Actually this is a good approach even if you have only one website.
You should always do this for attributes that have logic behind it. You should let the client add only attributes that appear in the 'Additional information' section or that are just comparable.

And I can list other cons as well for one single install:

  • most probably you will have to manage different category trees.
  • If you are using CE you will not be able to restrict admin access to a single website unless you use questionable third party extensions.
  • in the backend you will see orders all together.
  • If the 3 websites sell the same product you will not be able to have separate stocks. Again you have to go to third party modules for this. More code more possible error sources.

That's what I got so far. If I find more I will edit this answer.

1
  • Thanks a lot, very good hints. Idea to script attributes is very nice. I will try it.
    – waltavista
    Commented Dec 2, 2014 at 11:02

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.