好文档就是一把金锄头!
欢迎来到金锄头文库![会员中心]
电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本

U8系统性能调优及注意事项.docx

10页
  • 卖家[上传人]:m****
  • 文档编号:469770027
  • 上传时间:2023-08-31
  • 文档格式:DOCX
  • 文档大小:67.01KB
  • / 10 举报 版权申诉 马上下载
  • 文本预览
  • 下载提示
  • 常见问题
    • 用友U8性能调优及开发注意事项U8 系统为多层部署,以数据为中心的企业业务处理系统影响和决定系统运行效率主要 有以下几个方面,服务器硬件配置;系统部署状态、网络等系统配置软件环境,程序算法, 代码编写、尤其是数据库代码的编写下面将对这几个方面展开服务器硬件配置优化U8 系统首先是运行在服务器硬件基础上,所以硬件配置和调整对系统影响很大同时决 定服务器性能的主要是磁盘、内存、处理器三方面1. 磁盘 IO 方面使用U8系统建议配置磁盘阵列,推荐至少4张10K转/分 的硬盘以上制作Raid,保证Raid 的磁盘读取速度在200MB/S以上日常情况下系统磁盘排队明显,磁盘排队经常在10 以上,请考虑增加 Raid 中硬盘数量,或 考虑增加磁盘阵列柜,以缓解磁盘IO的吞吐压力2. 内存方面使用U8系统中等规模以上时,数据库服务器保证4GB内存以上如果应用服务器和数据库服 务器安装在同一台服务器上,服务器内存不能低于 4GB日常情况下系统内存页交换明显,如果服务器内存页交换经常在30 Pages/Sec以上,请考虑 增加服务器内存用友 U8 系统性能调优及开发注意事项3. 处理器方面用户数据量大,系统磁盘操作较多,数据库服务器压力,主要是处理器压力。

      处理器使用率一 般情况下不超过60%如果CPU占用率长时间超过75%以上,推荐增加服务器处理器个数,或使用 多台数据库或应用服务器以减轻系统应用服务器压力4. 网络要求局域网内使用 U8 系统,应保证网络畅通,客户机与服务器的通讯正常使用 Ping 命令从客户机向服务器发送请求,正常反馈为:Reply from 10.1.43.36: bytes=32 time〈lms TTL=126 如果响应时间超过1ms (Time〉1ms)应调整网络设置,确保通讯5. 数据库服务器内存分配调优• 在32位Microsoft Windows 2003操作系统中选项的具体配置方式如下:/3GB修改系统的Boot.ini文件Boot.ini文件在系统根目录下,缺省是隐藏的,需要打开响应 的浏览选项才能看见安如下方式修改系统启动配置:multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Microsoft Windows Server 2003, Enterprise" /3GB注:如果操作系统Windows 2003已经安装SP2,系统应该自动开启了PAE,观察应用程序和SQL Server内存 是否可以使用超过2GB,如果可以就不用打开/3GB。

      /PAEPAE模式也是通过Boo t.ini文件来配置,例如: multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="MicrosoftWindowsServer2003,Enterprise"/PAE• 在32位 Microsoft Windows 2008 以上操作系统中选项的具体配置方式如下:/3GB田朽软件•云服务在 Windows 命令行中输入:BCDEDIT /SET INCREASEUSERVA 3072/PAE在Windows 命令行中输入:BCDEDIT /SET PAE ForceEnable•数据库大内存配置:> AWE通过SQL Server Query Analyzer来配置,在查询分析器中运行以下语句:EXEC SP_CONFIGURE 'AWE ENABLED', 1RECONFIGURE> AWE 通过 Microsoft SQL Server 2005 或 Microsoft SQL Server 2008 企业管理器来配置(SQL Server 2000 和 2005的数据库都可用 Microsoft SQL Server 2008 企业管理器来进 行配置),右键选中SQL Server实例如下图所示,选中红圈处即可:注:64位服务器不用配置Microsoft Windows, SQL Server不需要配置AWE选项。

      田朽|软件•云服务| 移动SQL Server数据库临时库TempDB数据库制作磁盘阵列,但安装SQL Server数据库时TempDB库没有放在磁盘阵列上,为了提高 效率和性能此时需要把 TempDB 也放在磁盘整列所在的磁盘上,以下是移动 TempDB 的 SQL 命令:ALTER DATABASE tempdbMODIFY FILE(NAME= tempdev,FILENAME ='要转移的数据库目录 + \tempdb.mdf', — 女如'E:\Disk_Database_TempDB\tempdb.mdf',SIZE= 3000MB,FILEGROWTH = 50MB)ALTER DATABASE tempdbMODIFY FILE(NAME = templog,FILENAME= ' 要转移的数据库目录+ \templog.ldf',-- 如: 'E:\Disk_Database_TempDB\templog.ldf',SIZE= 1000MB,FILEGROWTH = 500MB)二、数据库SQL语言注意事项1. 触发器规范由于数据表触发器容易产生很多数据库问题,一般情况下禁止使用触发器。

      请使用系统 API 的前后事件进行代码编程2. 视图规范• 禁止在视图基础上创建视图,视图不能产生视图;• 禁止通过视图修改数据;• 禁止修改系统视图;• 视图中不要有ORDER BY排序语句;• 视图中不要使用UNION联合视图;• 禁止使用“Select * from ”,“Select T.* ”等语句;• 尽量在视图中不使用子查询3. 存储过程规范• 编写存储过程原则◊将每个存储过程完成一项单独的任务;◊存储过程可以调用存储过程;◊ 存储过程中禁止使用全局性质的临时表4. 自定义函数规范• 自定义函数的代码与注释书写规范类似于存储过程;• 自定义函数应看作除了 SQL语句外最小执行单位;• 自定义函数中不能调用存储过程;• 自定义函数中只能对表进行操作,不允许对视图进行操作;• 自定义函数尽量不要用到条件列、查询列中,因为要进行全表数据计算,影响查询性用友 U8 系统性能调优及开发注意事项能,可以用于查询条件中,尽量用于查询条件右侧,使用固定值5. 索引规范• 创建索引原则:>在经常作为条件搜索的列上创建索引;> 保持索引中的数据量尽可能的少> 在关键、经常使用的外键上创建索引;> 检索方式比较复杂时,应考虑创建复合索引,SQL 2005以上可以创建包含性索引。

      程序SQL语句规范• 尽量不适用子查询,尤其不能在排序、查询字段中使用子查询子查询的层次不应超 过2层• 小心使用IN和0R,需要注意IN集合中的数据量,建议集合中的数据不超过300个;• 应避免在ORDER BY子句中使用表达式;• 考虑到执行速度,代码维护,代码的不可控等因素,数据库升级的兼容性等很多方面, 一般情况下禁止使用“Select * from……”,要明确查询的字段;• 在WHERE子句中,避免对列的四则运算,特别是WHERE条件的左边,避免使用运 算与函数对列进行处理比如有些地方substring可以用like代替;• 请小心不要在过多的列上使用列函数和ORDER BY,GROUP BY等,• 谨慎使用 DISTINCT;• 尽量用union all代替union,数据库执行union操作数据库首先执行union两端的查询,将其放在临时表中,然后在对其进行排序,过 滤重复的记录,当已知的业务逻辑决定 query A 和 query B 中不会有重复记录时,应 该用union all代替union,以提高查询效率;• 对一个业务过程的处理,应该使事务的开始与结束之间的时间间隔越短越好,原则上 做到数据库的读操作在前面完成,数据库写操作在后面完成,避免交叉。

      保证事务中 写操作使用的数据表和数据按指定的一致顺序,避免死锁• 在一个事务中,对同一个表的多个insert语句应该集中在一起执行;田朽软件•云服务用友 U8 系统性能调优及开发注意事项• 在一个业务过程中,读取域写入操作尽量分开集中按批量执行,以减少死锁的可能性;• 避免使用游标• 可以不加锁的读操作,尽量使用不加锁读注:以上SQL语句规范同样适合视图,存储过程,自定义函数的编写。

      点击阅读更多内容
      关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
      手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
      ©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.