Multiple sites and performance in Drupal 7
My recommendation is to go with a multisite. 

Multiple Drupal instances and multisite are about the same in terms of performance (multiple databases). One Drupal instance will not scale as well and thus will not perform as well. The database layer is a bottleneck of Drupal that is hard to work around.

You can create custom code for taxonomies to make them shared across all multisites; users can use something like https://www.drupal.org/project/bakery. Doing this for multiple Drupal instances is a little harder to pull off in comparison to a multisite. 

To do a shared taxonomy you'll need a new database connection in your settings.php pointing to a new db. This will hold all of your taxonomy_* tables; or you can designate one already existing db to be the master record. Then using  hook_taxonomy_term_presave() and hook_taxonomy_vocabulary_presave() write the master taxonomy info into the correct db or if it already exists have it use that tid/vid. Then in hook_taxonomy_vocabulary_insert()/hook_taxonomy_vocabulary_update() and hook_taxonomy_term_insert()/hook_taxonomy_term_update() write the taxonomy info to the rest of the databases in your multisite. See taxonomy_term_save() and taxonomy_vocabulary_save() and use the drupal_write_record code to write. Use db_set_active() to change database connections. Have all multisites use the same settings.php file (symlink or include), and in there have a big array containing all your database connection info; create a path lookup function that uses conf_path() and readlink() if needed for knowing what db to connect to. You'll need to migrate all taxonomies before so they all match. This took a little while to code, about 2 weeks. The code I have is for D6 so it wont work for D7.

We used the shared taxonomy on around 80 databases using https://www.drupal.org/project/domain to give us 1300+ domains. It scaled very well.