NC系统生命周期与性能优化.docVIP

  • 13
  • 0
  • 约4.07千字
  • 约 5页
  • 2017-02-01 发布于重庆
  • 举报
NC系统生命周期与性能优化

NC系统生命周期与性能优化 性能优化是NC系统开发及交付使用过程中最重要和最复杂的工作之一。 在NC系统进入市场的初级阶段,由于个部门对NC所依赖的系统如数据库、JVM、OS系统等的认识不足,出现了大量因环境问题导致的性能问题,一度严重影响NC的交付及推广。如今,随着公司对性能的重视,通过完善安装说明等文档以及多次的性能专项培训,NC的运行环境得到很大的改变,现在出现的性能问题,很少有能够通过环境参数的调整获得彻底的解决的了。并且随着NC系统使用的深入,数据量的增加,产品自身的性能问题将会显得更加突出。 NC作为一个应用软件,其性能问题虽然通常在系统投入使用后才得以表现出来,但其优化必须是一个贯穿于应用系统整个生命周期的长期工作,性能优化应该从需求调研和需求分析开始。从另一个方面讲,性能优化也不仅仅是专职性能优化人员的工作,而是 需要全员参与的(业务人员、开发人员、数据库管理员甚至项目和用户的领导层)。现在有很多效率问题很难被处理,其大多跟当初确立的需求及设计有关,如今代码实现已经完成交付使用了,修改问题只能头疼医头,问题自然很难得到彻底根治。 在软件开发和应用的各个阶段中,应该注意以下的问题: 1 在需求开发阶段,性能优化的目的是说服业务人员接受对系统影响比较小的操作习惯,而放弃那些对系统性能有致命影响的操作习惯,结合产品易用性,有效控制住对系统性能产生重大影响的操作 2 在系统应用架构设计阶段,采用对性能优化比较有利的应用体系架构。采用2层还是三层架构,使用B/S方式还是C/S方式,采用瘦客户端还是胖客户端,客户端和服务器之间数据交换方式等都会影响系统访问的性能 ,应用及数据库系统的可扩展架构。 3 在系统逻辑设计阶段,定义合理的数据结构和数据操作方式在物理设计阶段,设计合理的表和索引的物理存储结构 4 在编码阶段,编写效率比较高的SQL,尽量使用批量等高效的处理方式 5 在系统测试阶段,对于关键业务进行完整的压力测试和系统性能评估,找出系统的瓶颈,尽快改进应用 6 在系统实施阶段,实施方案的确立,如业务数据合并进入财务系统等。。。 7 在系统试运行阶段,实时监控NC系统的情况,及时发现NC系统存在的问题,及时进行调整。对于应用中存在的性能问题,及时发现,并及时通知开发人员改进,并对改进后的应用进行测试评估 8 在系统运行阶段:系统投入正式运行后,系统的优化工作仍是十分艰巨的工作。系统管理人员仍需定期对应用系统及数据库进行分析,找出目前系统消耗资源最大的对象,并找出改进的方法,进行改进。数据库还需要定期进行行链消除、索引重建、表空间碎片整理、历史数据备份卸载和系统分析等工作 需求开发阶段的性能优化 需求开发分为客户需求获取、需求分析两个阶段。一般不会把这个需求开发和性能优化联系起来,但这个阶段往往却是系统性能优化最为关键的阶段。在这个阶段主要考虑的是软件的功能需求,而这些需求中,可能存在一些对系统性能影响极大的需求。操作习惯、界面风格、统计方法等都会影响系统整体的性能。 以总账里非常常用的查询对话框为例,如下图所示 需求阶段明确用户能够接受什么样的控制方案,设计时通过产品实现控制机制,比如: 如需根据摘要或金额模糊查询,必须控制会计期间,不输入科目编码对方科目无意义置灰等 上述这些优化如果在需求分析阶段就能够完成,那么可以避免很多问题,而事实上目前类似的问题在不停的出现,且优化起来无比困难。究其原因,主要是参与需求开发的人员往往是业务人员和软件开发人员,这些人员缺乏数据库优化的基本知识和经验,无法从需求中发现隐含的性能问题。因此在需求开发阶段,专业的优化人员的介入是十分重要的,具有数据库优化经验和软件开发经验的优化人员可以在这个阶段就及时发现对于性能影响较大的需求,合理引导用户需求,并设计出合理的控制方案。因此在需求开发阶段,“需求性能分析服务”是十分关键的服务。 需求性能分析服务是一种项目前期咨询服务,在需求获取阶段或者需求设计阶段,都可以使用。但是在不同的阶段,对服务提供者的要求不同。能够在需求获取阶段提供咨询服务的服务提供者,需要既是Oracle的专家,又是应用开发的专家,同时还是业务方面的专家。对于在需求设计阶段的咨询服务提供者,在业务方面的要求略低。咨询专家可以针对客户需求,从数据库性能的角度进行分析,对可能严重影响数据库性能的需求,提出解决方案,甚至否决需求。咨询专家的介入,会提高需求阶段的工程质量,为整个工程的最终顺利实施提供保障。

文档评论(0)

1亿VIP精品文档

相关文档