.NET Tutorials, Forums, Interview Questions And Answers
Welcome :Guest
Sign In
Win Surprise Gifts!!!

Top 5 Contributors of the Month
Gaurav Pal
Post New Web Links

Which high availability strategy for multi tenant architecture

Posted By:      Posted Date: September 05, 2010    Points: 0   Category :Sql Server
Hi, I run a multi-tenant application : each client runs the same code but each one hase its own database for personnal parameters and data, that makes about 40-50 databases and growing (i hope so) I want to set up a high availability strategy, for that, I have two VMs each one running SQL Server 2008 Entreprise. I had started to configure log shipping, but I was told that it was not a good idea when there are many dbs involved. How can I choose between HA strategies ? What tests do I have to do to see if i'm still elligible so log shipping (number of transactions per hour ?) If log shipping is not an option, what should I choose ? Failover cluster ? Thanks ! Don't hesitate to ask if you need more information.

View Complete Post

More Related Resource Links

Questions on Multi-Tenant Data Architecture for SQL Server Database and ASP.NET application

My company wants me to make the same asp.net application and sql server database be sharable amongst different clients. Clients will use the database for their own business use, will have their own data, we will have our own data. How can I share the same SQL Server database amongst different clients having same ASP.NET application (but somehow be able to differentiate which client user is logging in) ? Do I need to use ApplicationID and how will I detect at login which one to use ? I know I will need to add another field in all tables to differentiate client's data from ours.  

High-Performance .NET Application Development & Architecture

It has always been a goal of project architects to plan an effective strategy from the ground up in regards to an new application. All relevant factors are taken into consideration with respect to the application, from its design and layout to a functional website infrastructure. Pre-.NET strategies and design guidelines still effective now were developed with Microsoft's DNA (Distributed interNet Application) platform. This model successfully served the purpose of architecting N(any number of)-Tier (levels) applications. In its basic sense, as in most robust, distributed applications, you'll architect 3 main layers or Tiers: presentation, business rules and data access.

Cloud Computing: Patterns For High Availability, Scalability, And Computing Power With Windows Azure


Here we examine the typical cloud platform architecture and some common architectural patterns, along with their implementation on the Windows Azure offering from Microsoft.

Joshy Joseph

MSDN Magazine May 2009

High Availability: Keep Your Code Running with the Reliability Features of the .NET Framework


Reliability requires the capacity to execute a sequence of operations in a deterministic way, even under exceptional conditions. This allows you to ensure that resources are not leaked and that you can maintain state consistency without relying on application domain unloading (or worse, process restarts) to fix any corrupted state. Unfortunately, in the.NET Framework, not all exceptions are deterministic and synchronous, which makes it difficult to write code that is always deterministic in its ability to execute a predetermined sequence of operations. In this article Stephen Toub will show you why, and explore features of the .NET Framework 2.0 that help you to mitigate these situations and write more reliable code.

Stephen Toub

MSDN Magazine October 2005

Sharepoint 2010 Multi-Tenancy Access Denied on Tenant Administration Site

Hi, I am currently implementing a Sharepoint 2010 Multi-Tenancy solution. Multi-tenancy is the partitioning of service applications in 2010 to allow data to be separated between web applications or site collections. I am using multi-tenancy to separate data and user profiles between site collections hosted on a single web application. I have partitioned the User Profile Service Application and Proxy using Windows Powershell. The paritioned Proxy Application is then associated with the single web application. I am also using the Sharepoint Foundation Subscription Service Application to subscribe to different site collections within the web application. In this way data and user profiles can be separated. However, the tenant administration site, used to manage each collection, does not allow administrator access to manage the User Profile Service. I receive a standard Sharepoint 'Access Denied' error message. No other errors or details are provided. I have tried assigning different accounts to the tenant administration site but the error still appears. The issue arises when I issue the following SPSite Powershell cmdlet: NEW-SPSite -Owneralias DOMAIN\Username -Secondaryowneralias DOMAIN\Username. The attributes provided in the Cmdlet above are used to assign tenant site administrators however, the accounts cannot access the User Profile Service. Any ideas or recommendati

Configuring SharePoint Foundation 2010 with ADFS 2.0 in a multi-tenant environment using subscripti

Hi, I am trying to configure SharePointFoundation 2010 and ADFS 2.0 in a multi-tenant environment, where I have one Web Application and two site collections, each one under one subscription.  At this point is still a very simple infrastructure with one single Domain, AD and ADFS.  My problem starts with the configuration of ADFS 2.0 as Identity Provider in SharePoint. Since I have only one web application, the directory for the incoming token is "_trust" is placed at the root level or the application. Is there a way to change the location where this directory is created, so I can have one distinct one for each one of my site collections ? Or in other words, is there a way to have on identity provider by site collection ?  Thank in you advance for any information on this.   --MD.      

Multi Tenant - User Profile Sync Issue




I ahve the user profile setup in partition mode. Every thin appears to be installed fine and running. On the main central admin page it list mulitple tenants. I have to seperate subscriptions setup with the following commands

Add-SPSiteSubscriptionProfileConfig -Identity $sub1 -ProfileServiceApplicationProxy $pUPSP -SynchronizationOU $ou -mysitehostlocation $mysiteurl

The subscription also has a featurepack and userauthenticationpath set


I recive the foloing erro when the MOS FIM connector tryes to export any user profiles

System.Reflection.TargetInvocationException: Exception has been thrown by the target of an invocation. ---> System.InvalidCastException: Specified cast is not valid.
   at Microsoft.Office.Server.UserProfiles.ProfileChangeData.GetPartitionId(UserProfileApplicationProxy upaProxy)
   at Microsoft.Office.Server.UserProfiles.ProfileImportExportService.UpdateWithProfileChangeData(Int64 importExportId, ProfileChangeData[] profileChangeData)
   --- End of inner exception stack trace ---
   at System.RuntimeMethodHandle._InvokeMethodFast(Object target, Object[] arguments, SignatureStruct& sig, MethodAttributes methodAttributes, RuntimeTypeHandle typeOwner)
   at System.Reflection.RuntimeMethodInfo.Invoke(Object obj,

SharePoint High Availability Topology



We are planning high availabliglty for sharepoint and hae come up with following topology;

1) 4 FE Web Servers (Web + Application Services) - NLB for load balancing.

2) 2 Backend Servers to store SharePoint DB and Report Server D.

3) Mirrirong between the 2 Backend server and witness on another server.

4) I am not sure whether to put SSRS ReportServer Instance on the Web FE boxes or 2 BE Server. If i put SSRS Report Server on 2 BE servers then i have to configure NLB on the BE boxes. Will there be any issues if mirroring and NLB is configured on the same machine.

Your input will be really helpful.



Making Claims based authentication work with multi-tenant environment in SP 2010


Does anybody know of a guide or reference for setting up hosting in a multi tenant where authentication happens in claims based mode?


We have a setup where our clients are hosted on a single web application under different site collections. And we use forms authentication where user of a particular site collection gets authentication using the respective database. We now want to use claims based authentication and out-of-the-box multi-tenancy of SP 2010. We can setup site collections and site groups, but how do we implement claims based authentication in an env like this?

Architecture help for server/multi-client two-way messaging and MVVM scenario


There looks like heaps of information on WCF which is kind of my problem. I'm unsure of what I should be reading and can't afford to spend days reading to whittle down my options to what I really need. So I'm hoping for a brief nudge in the right direction please!

I'm building an app that is TCP server/client scenario:

  • Messages need to be sent from either client or server based on events raised at either end
  • Messages could be from client-server or client-client
  • I need some peer-to-peer content distribution (file sharing/copying)
  • Some messages need to go through reply/response - being initiated at either end
  • Some messages/requests need to last past network interrupts/reboots. I.e. request from client that requires manual user action on the server end, resulting in reply back to client at a later date

Some comments on what WCF architecture/technology choices would best fit these needs would be very welcome :)

Also, I'm using MVVM architecture. Should the viewmodel/business logic know about WCF classes or should the model take care of contracts, etc? Or in other words, where should the viewmodel and model separate in WCF? Some examples of appropriate method names at the business logic level and model level would help :)

Anyway, thanks for reading, now back to the books :)

WCF service with WAS and High Availability Cluster on Server 2008


I have a WCF service using one-way net.msmq transport to deliver messages to a high availability cluster.

I have followed a few articles I have found on setting up WCF in a cluster environment and essnetially have the following queues


Cluster: private$\MI/ManagementInformationService.svc

Node A: private$\MI/ManagementInformationService.svc

Node B: private$\MI/ManagementInformationService.svc

Although I am not sure why I need the local queues.

I've installed the WCF application into IIS7 on Node A and Node B. I;ve configured both nodes to the following address:

address="net.msmq://{cluster endpoint}/private/MI/ManagementInformationService.svc"

So, I configure my Web Servers to deliver the MI to the clustered endpoing via WCF net.msmq binding.

At this point, everything works and as messages hit the clustered queue, they are picked up by one of the nodes and processed. However, when I fail over the cluster, the second node does not automatically spring into life, as I would expect it to with WAS. However, if I browse the WSDL for my service on the now-current node, then it does indeed spring into life and process the messages off the queue.

So I turn on WCF tracing, IISReset fire up the WSDL, IISReset (to flush the WCF Trace log) then see the following:

A warning: Cannot detec

SQL 2008 - High Availability Function


Hi All. I would like to calrify on a certain aspect of SQL 2008 HA, this situation is as follows. For SQL HA we need 2 server and a share storage, now assuming all the pre-requsites are set down in place virtual IP, virtual hostname etc.. Let's say only the first hardware is shipped and the 2nd hardware comes in only 2 months laters. Can I run the whole SQL cluster of the 1st node and upon the 2nd hardware arrival I would join the 2nd node to it. This would eliminate the entire re-setup of SQL cluster. But the question here is , would the cluster function in a single node envrionment for the first 2 months, before the 2nd node comes in or is it mandatory for the 2nd node to be installed when setting up cluster in-order for the whole setup to be functional?

Setting up 2 node Active-Active SQL cluster as High availability and database mirroring at database

Hi guys
Please need your inputs and suggestions. I have always worked as junior DBA and have setup the HA but never planned for it. Please need some support here.

We have one main application: Application1 ...which is the sending data to all other application for billing, reporting, processing the orders and other stuff. This application is working right now on two Server.

Server1:  SQL Server 2005 Enterprise Edition  (Total 16 Gb RAM , SQL Server ( 4-12 GB AWE Enabled) and  2Processors (4 core each) and 836 GB of HD )

High Availability in SQL Server 2008 Express edition


Dear friends ,

I am using SQL Server 2008 Express edition in my laptop ,I would like to do high availability samples such as Replication,Mirroring,and Log shipping in my laptop , i have two instances .is it possible to do samples (replication,mirroring,log shipping) plz guid me how to do.


thanks in advance


Multi Tenant vs Dynamically change the ConnectionString



My application is used by several customers, who needs to maintain their own database.

Currently I'm keeping all the connectionstrings and according to the user, change it. (In a case of CRUD operation).

Is this errenous way ?

I don't know much about MultiTenant applications. Is that the best solution for my problem?

SQL Server Peer to Peer Replication and High Availability

I am looking at peer to peer replication to replace our current mirroring solution.  ADO.Net has the partner server which works great when detecting the failover to the mirror.  Will that workin a peer to peer configuration as well?

Is a 3 Node Cluster the way to go for a high availability environment?


Good Morning,

My company currently has a 2 Node SQL 2008 Active / Passive cluster. Due to the sensitivity and ugency of our industry, we have to maintain a 100% uptime for our clients. The issue here is that we cannot do any maintenance that involves failovering the cluster (patching, SPs, etc), because of the time it takes to failover (even a few seconds is critical).

We are considering going to a 3 Node Active / Active / Passive cluster, with the theory that since one Node will always be active, we can failover to the passive Node without any disruption. However, we're not sure if this would be the case, and if it isn't, would there be something we can do instead to keep uptime at 100% w/o the risk of our environments being outdated?

Thank you all in advance,

Nick Gargano, Sr. DBA

ASP.NetWindows Application  .NET Framework  C#  VB.Net  ADO.Net  
Sql Server  SharePoint  Silverlight  Others  All   

Hall of Fame    Twitter   Terms of Service    Privacy Policy    Contact Us    Archives   Tell A Friend