Assuming you need to make sure your application that relies on SQL Server 2012 as its database backend is available around the clock, even if one server machine fails.
As a developer and not a DBA, I am struggling to understand when to use which scenario for my failover / high availability:
- Two (or more) servers in a Windows Failover cluster, SQL Server as a clustered instance
- Two (or more) SQL Server instances that are kept up to date with transactional replication
- Two (or more) SQL Servers in a SQL Server Availability Group, configured in a synchronous commit mode
Which of each of those scenarios works for what kind of workload, and what kind of failure / outage can be handled by those scenarios? Are they even comparable / exchangable?