
作为完整性判断,可以不检查全部的属性,而对数据使用一个自增的版本号(或时间戳)来判断是否最新。
作为后置的检测,可以优化来降低扫描的代价,如只针对最近一个时间周期内(如10min)数据库中更新过的数据,这个集合应该比较小,去redis中进行检查的代价会比较低。
在前面说到了数据的备份,这里我们试着去探讨备份的机制,加入数据库在A时间备份,在A时间向后的2个小时出现了问题,那么A时间后的2个小时数据就已经没有了,所以备份的机制就显得比较重要了。
工具/原料sqlyog1首先我们需要连接到我们自己的mysql数据库
2连接数据库成功后,在数据库的控制面板里找到增强工具,点击增强工具在展开的菜单项中点击【数据库同步向导】
3这里不需要做任何的改动直接点击【下一步】就可以了
4我们在左边的来源填写来源数据库,在右边的目标选择同步到的目标数据库,将来源和目标数据库配置完成,点击下一步
5选择同步的模式:选择单向同步模式或者双向同步模式,单向和双向具体的差别,在下面图中说的比较详细,这里我就不多做描述了。
6接着选择需要同步的数据表,将需要同步的表名前面勾选上
使用SQLDependency缓存依赖,以下是一个推SQL缓存依赖的例子,当数据库更新后缓存会自动更新void Page_Load()
{
DataTable movies=(DataTable)Cache["Movie"]
if(movie=null)
{
SqlDataAdapter adpter=new SqlDataAdatper("Select * From Movie",sqlConnection)
SqlCacheDependency sqlDepend=new SqlCacheDependency(adapter.SelectCommand)
movies=new DataTable()
//注意必须在adpter.Fill()前先建立SqlCacheDependency,否则无效
adpter.Fill(movies)
Cache.Insert("Movie",movies,sqlDepend)
}
}
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)