查看: 9629|回复: 22

sybase 速度慢,求高手帮忙看看。

[复制链接]
论坛徽章:
0
跳转到指定楼层
1#
发表于 2011-3-24 14:58 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
50pub币
我们的系统现在同时在线人数 超过500人,cpu 占用就到了100%了。

应用层做了好多优化,效果不明显。

期待高手帮忙分析下, 是什么原因导致我们的 cpu 很高。

下面我贴出来sysmon。系统最忙的时候抓的。

最佳答案

查看完整内容

CPU忙的原因有很多种,你的问题首先在于你的CPU确实在做事,每秒的I/O数目为:267797.6,这对于4个CPU来说,已经很高了。要定位问题,可以使用monTables确定哪些表的I/O数多,很可能是由于有不正确的查询策略,比如表扫描,比如索引扫描,比如连接顺序不对...你的 Spinlock Contention为26.8%,是相当高的值,建议增加内存分区数目,CPU为4,我通常建议分区在8或者16.特别对于ASE15,这个参数需要适当调高,特别你使用了性能好的机 ...
论坛徽章:
1
2013年新春福章
日期:2013-02-25 14:51:24
2#
发表于 2011-3-24 14:58 | 只看该作者
CPU忙的原因有很多种,你的问题首先在于你的CPU确实在做事,每秒的I/O数目为:267797.6,这对于4个CPU来说,已经很高了。要定位问题,可以使用monTables确定哪些表的I/O数多,很可能是由于有不正确的查询策略,比如表扫描,比如索引扫描,比如连接顺序不对...

你的 Spinlock Contention为26.8%,是相当高的值,建议增加内存分区数目,CPU为4,我通常建议分区在8或者16.特别对于ASE15,这个参数需要适当调高,特别你使用了性能好的机器,比如p6 CPU。

number of open objects达到了最大值,建议调高,这个会对性能有一点儿影响。

Runnable Process Search Count调整为10没有问题。我的经验是,如果调高了,比如2000,在某些平台上,业务很低的时候,系统CPU会表现较高;但如果是数据库很忙,没有影响。

Network Packet Received很高属于正常,这个不是调整网络包的依据。

热点表争用可以做,但是这个是针对锁阻塞的。而如果锁阻塞严重,则CPU就不会很高。我认为,这个不会有太大的帮助。

sysmon的监控的长度,要依据问题来定。并不是越长越好。如果系统持续忙,长短关系不大(但过长会导致参数溢出)。如果系统属于突发性性能问题,则需要尽量短(这个建议是编写sysmon的老外给的,不是我说的,嘿嘿)

使用道具 举报

回复
论坛徽章:
0
3#
 楼主| 发表于 2011-3-24 14:59 | 只看该作者
1> sp_sysmon '00:01:00'
===============================================================================
      Sybase Adaptive Server Enterprise System Performance Report
===============================================================================

Server Version:        Adaptive Server Enterprise/15.0.2/EBF 15965 ESD#6/P/ia64
Server Name:           SHD_SPMS_SRV                                             
Run Date:              Mar 23, 2011                                             
Sampling Started at:   Mar 23, 2011 10:09:18                                    
Sampling Ended at:     Mar 23, 2011 10:10:31                                    
Sample Interval:       00:01:13                                                
Sample Mode:           No Clear                                                
Counters Last Cleared: Feb 26, 2011 23:09:33                                    

===============================================================================

Kernel Utilization
------------------

  Your Runnable Process Search Count is set to 10                              
  and I/O Polling Process Count is set to 50                                    

  Engine Busy Utilization        CPU Busy   I/O Busy       Idle                 
  ------------------------       --------   --------   --------   
    Engine 0                      100.0 %      0.0 %      0.0 %              
    Engine 1                      100.0 %      0.0 %      0.0 %              
    Engine 2                      100.0 %      0.0 %      0.0 %              
    Engine 3                      100.0 %      0.0 %      0.0 %              
  ------------------------       --------   --------   --------   
  Summary           Total         400.0 %      0.0 %      0.0 %              
                  Average         100.0 %      0.0 %      0.0 %              

  CPU Yields by Engine            per sec      per xact       count  % of total
  -------------------------  ------------  ------------  ----------  ----------
    Engine 0                          0.0           0.0           0       0.0 %
    Engine 1                          0.0           0.0           0       0.0 %
    Engine 2                          0.0           0.0           0       0.0 %
    Engine 3                          0.1           0.0           5     100.0 %
  -------------------------  ------------  ------------  ----------
  Total CPU Yields                    0.1           0.0           5            

  Network Checks
    Non-Blocking                     30.2           1.3        2208      99.8 %
    Blocking                          0.1           0.0           5       0.2 %
  -------------------------  ------------  ------------  ----------
  Total Network I/O Checks           30.3           1.3        2213            
  Avg Net I/Os per Check              n/a           n/a     3.79349       n/a   

  Disk I/O Checks
    Total Disk I/O Checks            34.7           1.4        2533       n/a   
    Checks Returning I/O             12.1           0.5         882      34.8 %
    Avg Disk I/Os Returned            n/a           n/a     0.55102       n/a   

  Tuning Recommendations for Kernel Utilization                                 
  ---------------------------------------------                                 
  - Consider bringing more engines online

使用道具 举报

回复
论坛徽章:
0
4#
 楼主| 发表于 2011-3-24 15:03 | 只看该作者
太长了,我传个附件 sysmon.txt (93.95 KB, 下载次数: 84)

使用道具 举报

回复
论坛徽章:
11
生肖徽章2007版:兔
日期:2009-11-22 14:30:45鲜花蛋
日期:2013-01-27 21:01:57茶鸡蛋
日期:2012-04-05 13:26:452012新春纪念徽章
日期:2012-01-04 11:53:54ITPUB十周年纪念徽章
日期:2011-11-01 16:24:04迷宫蛋
日期:2011-10-24 02:01:552011新春纪念徽章
日期:2011-02-18 11:42:48ITPUB9周年纪念徽章
日期:2010-10-08 09:28:512010年世界杯参赛球队:朝鲜
日期:2010-06-30 13:46:012010新春纪念徽章
日期:2010-03-01 11:19:07
5#
发表于 2011-3-24 15:55 | 只看该作者
默认数据存储的Spinlock Contention太严重了,达到26.8 %。 请将默认数据缓存分区试试。

Runnable Process Search Count设置为10,太小了。 请问这是谁建议调整的。默认好像是2000.可以适当增加一些。cpu在空闲的时候老是去查找是否有任务,这本身会导致cpu很忙。


因为Network Packet Received相关网络包等到导致task context switch 也很高。。可以考虑增加网络包的大小。

[ 本帖最后由 andkylee 于 2011-3-24 15:56 编辑 ]

使用道具 举报

回复
论坛徽章:
114
授权会员
日期:2005-10-30 17:05:332013年新春福章
日期:2013-02-25 14:51:24奔驰
日期:2013-08-01 21:18:36宝马
日期:2013-12-04 21:52:282014年新春福章
日期:2014-02-18 16:41:11马上有车
日期:2014-02-18 16:41:11马上有车
日期:2014-02-19 11:55:14马上有房
日期:2014-02-19 11:55:14马上有钱
日期:2014-02-19 11:55:14马上有对象
日期:2014-02-19 11:55:14
6#
发表于 2011-3-24 21:10 | 只看该作者
采样时间才1分钟,你让人看什么

最少采样15-30分钟把

使用道具 举报

回复
论坛徽章:
11
生肖徽章2007版:兔
日期:2009-11-22 14:30:45鲜花蛋
日期:2013-01-27 21:01:57茶鸡蛋
日期:2012-04-05 13:26:452012新春纪念徽章
日期:2012-01-04 11:53:54ITPUB十周年纪念徽章
日期:2011-11-01 16:24:04迷宫蛋
日期:2011-10-24 02:01:552011新春纪念徽章
日期:2011-02-18 11:42:48ITPUB9周年纪念徽章
日期:2010-10-08 09:28:512010年世界杯参赛球队:朝鲜
日期:2010-06-30 13:46:012010新春纪念徽章
日期:2010-03-01 11:19:07
7#
发表于 2011-3-25 09:46 | 只看该作者
原帖由 花好月不圆 于 2011-3-24 21:10 发表
采样时间才1分钟,你让人看什么

最少采样15-30分钟把



是。 不过他们的cpu真的是很忙。

使用道具 举报

回复
论坛徽章:
54
秀才
日期:2017-02-22 15:18:002015年新春福章
日期:2015-03-06 11:57:31懒羊羊
日期:2015-03-04 14:48:16马上有对象
日期:2014-10-24 17:37:552014年世界杯参赛球队: 比利时
日期:2014-08-05 11:35:382014年世界杯参赛球队: 阿根廷
日期:2014-07-15 10:49:33马上有车
日期:2014-02-18 16:41:112014年新春福章
日期:2014-02-18 16:41:11路虎
日期:2014-01-02 12:55:56ITPUB社区12周年站庆徽章
日期:2013-10-08 15:00:34
8#
发表于 2011-3-25 17:16 | 只看该作者
若是有偿,我帮你介绍一个上海的专搞Sybase的

使用道具 举报

回复
论坛徽章:
2
ITPUB 11周年纪念徽章
日期:2012-10-09 18:05:372013年新春福章
日期:2013-02-25 14:51:24
9#
发表于 2011-3-28 09:44 | 只看该作者
default data cache
Spinlock Contention               n/a           n/a         n/a      26.8 %
这个很严重了.
另外,做个热点表争用的报告上来,sp_object_stats "00:10:00"抓10分钟的看看.

使用道具 举报

回复
论坛徽章:
0
10#
 楼主| 发表于 2011-3-28 11:24 | 只看该作者
谢谢,各位高手的帮忙。

可能是我们调整了数据库页 大小 为8k。

缓冲区 大小是
statement cache size                     0      111604        51200
                51200 memory pages(2k)     dynamic   


使用的怎么大于 配置的。

我们看看多几个分区看看。
需等月底用户集中使用的时候看看效果。

使用道具 举报

回复

您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

TOP技术积分榜 社区积分榜 徽章 团队 统计 知识索引树 积分竞拍 文本模式 帮助
  ITPUB首页 | ITPUB论坛 | 数据库技术 | 企业信息化 | 开发技术 | 微软技术 | 软件工程与项目管理 | IBM技术园地 | 行业纵向讨论 | IT招聘 | IT文档
  ChinaUnix | ChinaUnix博客 | ChinaUnix论坛
CopyRight 1999-2011 itpub.net All Right Reserved. 北京盛拓优讯信息技术有限公司版权所有 联系我们 未成年人举报专区 
京ICP备16024965号-8  北京市公安局海淀分局网监中心备案编号:11010802021510 广播电视节目制作经营许可证:编号(京)字第1149号
  
快速回复 返回顶部 返回列表