对Cache和数据库设计的一点想法

  做WEB开发离不开数据库的设计,一般的小项目数据库多数要自己设计的。最近的一个项目除了界面由美工来做之外,其余全是自己完成的。

  项目完成后开始的时候还顺利,因为访问量不是很大,没出现什么问题。但没过多久,日志中的错误就频繁出现,而且经常是同样的错误,数据库也有大量死锁。有问题当然要想办法解决,所有我把更多的东西cache起来,开始的时候直接用的是ASP.NET中的Cache对象,由于一开始没有统一的计划,所以cache的东西就有点乱。一段时候之后,程序错误的问题依旧存在,由是我想到了数据库设计问题,由于项目一开始的时候疏忽了一块功能上的设计,自己也没在意,这块功能是在测试的时候加上去的,所以有很多不合理的地方。比如,取用户的一些状态值的时候都是通过实时统计的方法读取,虽然数据没问题,但当记录很多的时候,而统计一般比较费时,所以会出现死锁等问题。

  通过一段时候的观察和考虑之后,自己想出了解决方案,一是要把cache层分离出来,并重新整理cache。二是把几个统计字段添加到用户表中,读的时候不再实时统计,当然代价是要维护这些统计值。

  经过这两步改造之后,目前程序运行还正常。自己从中学习到的对数据库设计的经验我想对我来说很宝贵。表设计时,加一些统计值,比实时去统计要好得多。虽然这可能产生一些数据不同步的问题,这个问题可以加另外的作业来同步数据,总比程序慢并不稳定来得好。

  记录一下自己的一些想法。总比什么没有好。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
1 安装及卸载......................................................................................................4 1.1 安装需求.......................................................................................................4 1.2 Caché的标准安装..........................................................................................4 1.3 软件许可证的安装........................................................................................6 1.4 卸载Caché...................................................................................................7 2 Caché工具菜单...............................................................................................8 2.1 Caché Cube简介...........................................................................................8 2.2 Studio............................................................................................................9 2.3 Terminal.......................................................................................................11 2.4 Explorer.......................................................................................................11 2.5 SQL Manager..............................................................................................15 2.5.1 用户权限管理...................................................................................16 2.5.2 表格管理..........................................................................................18 2.5.3 数据迁移..........................................................................................19 2.5.4 查看sql查询计划...............................................................................22 2.6 Control Panel..............................................................................................23 2.7 Configuration Manager...............................................................................23 3 配置缓存........................................................................................................29 3.1 缓存简介.....................................................................................................29 3.2 数据缓存配置.............................................................................................30 3.3 程序缓存配置.............................................................................................31 4 指令日志........................................................................................................33 4.1 数据库物理操作日志...................................................................................33 4.1.1 WIJ概述............................................................................................33 4.1.2 WIJ 配置方法...................................................................................34 4.2 数据库指令日志..........................................................................................34 4.2.1 Journaling概述..................................................................................34 4.2.2 Journaling配置方法...........................................................................35 4.2.3 Journal 文件.....................................................................................36 4.2.4 Journal文件设置................................................................................37 4.2.5 查看 Journal 文件内容的方法.........................................................38 4.2.6 Journal 文件管理..............................................................................38 4.3 崩溃缓冲.....................................................................................................38 5 镜像服务........................................................................................................40 5.1 镜像服务原理.............................................................................................40 5.1.1镜像服务的特点..................................................................................41 5.2 镜像服务的配置..........................................................................................41 5.2.1 配置方法..........................................................................................41 5.3 Shadowing和Journaling区别联系................................................................45 6 备份及恢复....................................................................................................46 6.1 备份流程.....................................................................................................46 6.2 备份方法.....................................................................................................46 2/80 Caché5.0.x 数据库管理和维护手册 6.2.1 Caché中备份数据库的方法...............................................................47 6.2.2 其它外部备份方法............................................................................48 6.3 备份的恢复.................................................................................................50 6.3.1 Caché中的数据恢复..........................................................................50 6.3.2 其他方法的数据恢复.........................................................................52 7 ECP网络........................................................................................................53 7.1 ECP原理.....................................................................................................53 7.2 ECP特点.....................................................................................................54 7.3 ECP配置.....................................................................................................55 7.3.1 ECP配置方法....................................................................................55 7.4 ECP 监视和管理.........................................................................................59 7.4.1 ECP 服务器端监视...........................................................................59 7.4.2 ECP 客户端监视...............................................................................59 7.5 ECP的基本状态..........................................................................................59 8 数据库完整性保护..........................................................................................61 8.1数据库完整性检查........................................................................................61 8.1.1 检查所有数据库的完整性.................................................................61 8.1.2 你可以检查所有本地数据库的完整性................................................61 8.1.3 在后台检查所有数据库的完整性.......................................................61 8.1.4 查看后台数据库完整性检查的输出...................................................62 8.1.5 查看个别数据库的完整性.................................................................62 8.2 数据库完整性检查工具...............................................................................62 9 用^GLOSTAT routine获得全局信息...............................................................63 9.1 运行^GLOSTAT.........................................................................................63 9.2 统计数据概况.............................................................................................64 9.3 ^GLOSTAT输出的例子...............................................................................65 9.3.1 例子 A.............................................................................................65 9.3.2 例子 B.............................................................................................66 9.3.3 例子 C.............................................................................................67 9.3.4 例子 D.............................................................................................68 9.3.5 例子 E.............................................................................................70 9.3.6 例子 F..............................................................................................71 9.3.8 例子 G.............................................................................................72 10 Caché 常见问题与回答..........................................................................76 11 联系我们.................................................................................................79 11.1 网络资源...................................................................................................79 11.2 InterSystems公司上海...............................................................................79 11.3 InterSystems公司北京...............................................................................79

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值