SQL Server read/write separation, load army, and fault recovery have always been difficult. In SQL server2005, database Mirroring is provided, it provides another low-cost solution for fault recovery (I used to use dual-machine hot standby). Below is a server Structure Topology I have imagined.
The main operation of the website is query, so it solves the read operation performance bottleneck and the read/write deadlock problem is the key.
The general structure is read/write database separation, and SQL Server replication technology is used between read/write servers;
The write server uses the image function. The primary server and the backup server must have the same publishing target server. Therefore, the distribution server needs high reliability and fault tolerance;
The distributor adopts dual-machine hot standby mode;
The read-only server uses subscription. The specific subscription mode needs to be selected based on the actual situation;
The above is just one of my ideas and has not been implemented. I hope you can give me some suggestions.