By zlika on
Hello,
I know it's better to use multi-site capability to share modules and themes between different sites, but I'm just asking myself:
Basicallly, is there a différence, for site performance and computer resources usage, between a single drupal installation with multi-site and several single drupal installations (one per site) ?
Thanks for sharing your experiences.
Best regards,
Jeff
Comments
To the best of my knowledge
To the best of my knowledge there is no measurable difference in performance. There could be a few ms spent in scanning the sites directory for the multisite to load but it's probably almost nothing (maybe with a very large number of multisites the time spent checking through the list could be longer but I'm just guessing). Multisites are used by Sony though and works great. The maintenance time saved by using multisites is substantial though.
Hope this helps.
I agree with David. You are
I agree with David. You are better off looking for performance tuning to come out of making use of caching more efficiently on a site than trying to maintain several separate copies.
If you have a spare machine, and you are unfamiliar with the way a Linux server is set up, try this out:
Get a copy of TurnKey Drupal. It's a free ISO distribution that you can burn an install CD from.
Set your old machine up to boot from a CD (use the F2 key to get to the BIOS menu)
Install the ISO onto your old machine. (Takes about 15 minutes, don't mind the pauses)
Once it is installed, use something like WINSCP or Putty to comunicate with the new server's file system.
The core of Drupal is installed into the /src/share/drupal/ directory. If you want to upgrade Drupal (since they virtually never get the most current version of Drupal from the Ubuntu packages) all you need to do is extract the released version into this directory.
Your sites files are maintained on /etc/drupal/6/sites/.
Within Sites, I maintain all of my contributed modules in the /all/modules/ directory, and also maintain a folder there called "libraries" which I use to hold things like CKEDITOR and any other non Drupal technology that integrates with it.
Finally, I create a directory for each of the virtual servers I'm running. This means that if you are hosting a domain called example.com then you want a directory called
/etc/drupal/6/sites/example.com/
within that directory, make a copy of [default].settings.php, and 2 subdirectories;
/themes/
/files/
Themes is where you will be maintaining the specific themes for that site, and files is where you will be maintaining directories for imagecache and things of that nature.
Sorry for being overly verbose, but I wish someone had steered me with this much detail when I had been struggling with getting used to multisites
kev
cheers,
kev
I have a related question ...
I have 3 separate domains which each have their own database and complete drupal installation (in separate folders off my main site.)
I'd like to simplify the maintenance of these and reduce it to a single code base.
Any instructions I have seen discuss creating a new domain and site from scratch. But since I have existing configurations is it possible to have them share the same code base without reinstalling?
Patricia W
how I would proceed
Patricia,
if I were in your case, I would install drupal in a fourth folder (lets say /var/www/drupal/)
and then in the 'sites' folder of this installation, I would copy / paste and rename (with each of your sites names) the default 'settings' folder.
Then in each folder, I would create a 'modules' and a 'files' folder and then copy / paste the specific modules and files from each of your actual installations.
Normally, your settings remain the same, therefore you should be able to copy 'as is' your settings file.
then you can place themes into the common 'themes' folder or in each site, depending if you want each site to (possibly) share the themes (security / display issue if you give admin rights to someone else).
On the testing point of view, I would :
- configure Apache with 3 differents (temporary) domains (enabled-sites) like demo.example1.com, demo.example2.com, demo.example3.com (if your 3 actual sites are www.example(1-2-3).com,...)
- then modify the hosts file of the testing computer (your laptop or the server if this is a desktop distribution) so that demo.example(1-2-3).com point onto your server (short-cuting the DNS resolution)
If everything works well (cf the 'normally' from above) then you can modify your apache config for the true sites so that they all point onto your drupal folder. Remove the demo sites from apache and from your hosts file.
Regards,
Edouard
Hi Edouard, I just noticed
Hi Edouard,
I just noticed your reply (I thought I would get notified but did not.)
I gave up on the process before but maybe I'll try again following your advice.
However I am using GoDaddy hosting so I do not think I have any control over Apache.
Thanks
Patricia W
My opinion after trying both multi-install and multisite-install
I started Drupal using multiple installation and I realized that it was very time-consuming to update each drupal install when a new module or a new core version was available (if you have several websites and you use only FTP).
Then I discovered the multi-site, and I put all my websites into multi-site install. I thought it would be the best solution for running several drupal websites.
However, when I update certain modules (it was the case for panels and others), the new version would not always work out of the box with your previous settings. Sometimes I will have to recreate the panel page (or other modules settings). So when you have a lot of websites running on one multisite-install, the time you take to fix each website, the other websites are in trouble (front page or certain blocks not appearing correctly...). I hope you understand what I mean.
In order to save as much time as possible, I tryed to identify the modules that will cause "problem" when updated.
I use multisite-install for the websites which do not use these modules. I use multi-install for the websites which use these modules or websites for which I will have to add modules regularly I am not familiar with as yet.
Multisite is also good for shared hosting (you save space).
Since i discovered Drush and Drush Make, I install all my new drupal websites as a single website (no multisite) because it became so easy to update core and modules (using SSH command lines). Also I switched to a dedicated server :)
This is my personal experience on this matter.
Drush Make and multisite
Do note that Drush Make easily supports multisite set-ups as well. Here's an example command:
drush make mysite.make --no-core --contrib-destination=sites/mysite ./