生产系统问题在一期中的处理及后续处理办法:
1. 登录页面打不开
原因:可能是数据量及访问量过大,web服务器负担过重,当cpu占用率达到95%以上后,会致使IIS性能急剧下降,并会持续性能很低的状态。
现状:通过软硬件架构的调整,用户登录及菜单使用SAP.Portal产品,使用单独的服务器管理,有效解决此问题。
2. 事宜页面、代办页面
原因:数据量及访问量过大,web服务器负担过重
现状:通过软硬件架构的调整,现在的编码数据使用SAP.MDM产品,在工作流中,使用流程模板、对流程活动的激活方式等方式优化。有效的改善了负担过重的现状。在一期上线后,还需要在.net部分针对工作流、主数据相关物理表,使用分区表的方式优化。
另外,在硬件上使用新的硬件架构,通过集郡、增加了负载均衡的方案。也使访问效率提高。
3. 数据库锁sp_lock瞬间达到150多万,甚至240多万
原因:部分程序编写的不合理
现状:已经针对压力、并发在部分场景进行了单独的优化。为了保证系统的健壮性,建议在更多的场景进行压力和并发测试,根据测试结果,确 定下一步的优化方案。
4. 流程表记录过大;流程涉及的表过多,最大的一张表由清理前的1亿多记录减到7千多万记录;
原因:原有的工作流使用机制造成的
现状:对原有工作流使用机制优化,使用流程模板方式,将流程、活动、相关数据、变迁条件都模板化。不会每次都实例化变迁条件,避免了该问题。
5. 数据库日志表150多万
原因:单条累加,故数量高。
现状:沿用原日志,但一期上线不包含原有日志,故短期内不会出现该问题,后期会针对日志表进行优化。
6. 数据库: 事件ID:701:There is insufficient system memory to run this query.
原因:sqlserver 在使用MS DTC时异常问题,用于处理校验逻辑。
现状:包用于校验逻辑改变,使用.net程序 代码全部重构。不再使用MS DTC。
7. 异常信息: 异常类型: NullReferenceException 异常消息: 未将对象引用设置到对象的实例
原因:web服务器未响应,web服务器负载过大,造成响应失效。
现状:已经针对各模块经过三轮的测试和多轮的有效性检验,功能均可用,较稳定。未发现明显的功能问题。
8.写入文件日志时出现异常!ex.Message = There is insufficient system memory to run this query.;
ex.Message = 正在中止线程。ex.Message = 超时时间已到。在操作完成之前超时时间已过或服务器未响应。
原因:原工作流相关代码有缺陷
现状:工作流相关程序已经调整,在测试时,已经解决此问题。
9.系统日志警告较多
a) 事件ID:12503:The WinHTTP Web Proxy Auto-Discovery Service has been idle for 15 minutes, it will be shut down.
b) 事件ID:7036:WinHTTP Web Proxy Auto-Discovery Service 服务处于 停止 状态。
原因:系统运行错误.
现状:因开发和测试时,未碰到此日志警告。故暂不回复。