EF的高可用性

EF的项目也会遇到读写分离或者db高可用的问题,以此做个demo

1. 环境准备

a. Failover

使用mirror来做,缺点是只能1对1,好处是能自动切换,还挺快的也。

因为mirror的库持续处于restoring状态,不能做只读的负载了。

Primary Db:


Mirror Db:

b. 读写分离

有replication(发布订阅)、Alwayson、db复制能多种方式,采用一个最省钱的方式:log-shipping 日志传送。可以做到1拖n的只读副本,不过有最低10s的延迟。

Standby Db:


以上不赘述具体的步骤,百度可达。

需要注意的是:

i. 做mirror的话,一定要有一个带事务的bakup,并且让其处于restoring状态。

ii. mirror或者standby和primary的,db服务和agent服务都基于域用户来运行。


==未完待续==


2. EF测试failover

  <connectionStrings>
    <add name="DefaultConnection" connectionString="server=svn.edaysoft.cn;Failover Partner=win-oud0ufulr1k.edaysoft.cn;database=synctest;uid=uid;pwd=pwd;MultipleActiveResultSets=true"
      providerName="System.Data.SqlClient" />
  </connectionStrings>

3. EF测试读写分离

NDF.Infrastructure


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值