版权声明:本文为博主原创文章,未经博主同意不得转载。 https://blog.csdn.net/xuepiaohan2006/article/details/30064399

    近期现场反馈问题。全部电子签章页面打不开文书(pdf格式),后台日志没报不论什么错误,效果就是空白:

    1、首先想到是签章的ocx控件问题,检查ocx控件安装,发现其它电脑也打不开文书,測试页面能够直接打开pdf文档,排除控件的问题。

    2、怀疑是文书下载出问题了,检查文书下载功能,我们是把pdf文书下载到本地“我的文档”文件夹中,然后使用ocx控件打开文书,检查发现有的文书能正常下载到本地,有的干脆不下载,能下载到本地的文书能够正常打开。检查ftp发现文书都没问题,定位问题就出在从ftp下载这块。

    3、ftp下载有2步。先去数据库中查询到ccbh,再依据ccbh从ftp下载。检查发现下载没问题,查询ccbh很慢。最快也要50s才干查询出来,慢的要4、5分钟。有耐心的话。等待几分钟,文书是能够展示,已经定位到问题原因了,查询ccbh的sql运行很慢。

    4、分析sql。简化后sql为:

SELECT * FROM T_ZXLD_SYYH_FJ

WHERE C_BH_SQ='76A1737D773BE344B7154AA479634FED'

AND C_FJLX='syyhcx.zz.cxs.gy'

    查询条件中C_BH_SQ是有索引的。理论上不应该这么慢呀,查看运行计划发现:

    

    居然没实用到索引。运行时间是274s。有索引却没用到,并且C_BH_SQ这个字段是主表主键,被选中概率应该很高,怀疑是统计信息出问题了。使用

UPDATE all STATISTICS T_ZXLD_SYYH_FJ

    更新统计信息,更新后运行原始sql,用了0.12s,运行计划也显示出使用了索引

    

    问题看似攻克了。可是偶尔还会出现打开很慢(快的10s左右,慢的几分钟)的情况,怎么回事呢?检查过程中发现不只这个页面偶尔慢。许多页面都偶尔很慢。第一次打开慢,兴许就很快了。等一会再打开又慢了。

    查看p6spy日志发现(深颜色列是sql运行时间,只记录了运行2s以上的sql),把运行时间长的sql拿出来单独运行。许多第一次运行几十秒。第二次运行不到1s。能够确定问题原因了,系统内存较小。

    

    sybase数据能够使用以下命令查看io情况:SET
STATISTICS io ON|OFF

 
  

    第一次运行结果:

    

    第二次运行结果:

    

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQveHVlcGlhb2hhbjIwMDY=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" alt="" />

    能够看到第一次从磁盘和内存都读取了内容。第二次physical reads是0。全然从内存读取当然查询快了。内存较小的话,其它查询数据读进内存后。把旧的数据从内存中清除,再查询旧数据还须要从磁盘读取到内存。所以经常出现第一次较慢。兴许较快情况。最好办法就是加大内存,把经常使用的数据都读取到内存中缓存起来。

    解决的方法建议现场升级sybase到15.7。由于sybase12.5.3没有64位版本号。32位最多使用内存2G,好多表都是上百万的数据,确实查询较慢。

性能问题案例01——sybase数据库内存问题的更多相关文章

  1. 性能问题解决案例01——sybase数据库内存问题

    最近湖南现场反馈问题,所有电子签章页面打不开文书(pdf格式),后台日志没报任何错误. 1.首先想到是签章的ocx控件问题,检查ocx控件安装,发现其他电脑也打不开文书,测试页面可以直接打开pdf文档 ...

  2. 性能问题案例02——sybase连接堵塞问题

    现象:近期现场反馈一个问题.系统在审批的时候,常常卡死.整个系统全然用不了,浏览器訪问处于loading的状态. 排查: 1.一般系统挂了首先想到内存问题,可是现象是loading,也就是说没有挂,线 ...

  3. android 性能分析案例

    本章以实际案例分析在android开发中,性能方面的优化和处理.设计到知识点有弱引用,memory monitor,Allocation Tracker和leakcanary插件. 1.测试demo ...

  4. 老李案例分享:Weblogic性能优化案例

    老李案例分享:Weblogic性能优化案例 POPTEST的测试技术交流qq群:450192312 网站应用首页大小在130K左右,在之前的测试过程中,其百用户并发的平均响应能力在6.5秒,性能优化后 ...

  5. Sybase数据库应用系统调优的五大领域

    Sybase数据库应用系统调优的五大领域 2011/3/14/13:49来源:慧聪it网 本 文以“某大型商业银行的网上银行系统”这一很具有典型意义的企业级大型Sybase数据库应用系统为例,涉及了数 ...

  6. MySQL性能优化(二):优化数据库的设计

    原文:MySQL性能优化(二):优化数据库的设计 版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明. 本文链接:https://blog.csdn.n ...

  7. SSRS Reports 2008性能优化案例

    我们的一个Reporting Service服务上部署了比较多的SSRS报表,其中有一个系统的SSRS报表部署后,执行时间相对较长,加之供应商又在ASP.NET页面里面嵌套了Reporting Ser ...

  8. windows下启动/关闭Sybase数据库服务器

    启动.关闭Sybase数据库服务器 一.启动Sybase服务器 在windows下介绍两种方法启动Sybase数据库服务器. 1.通过服务器管理器 依次打开控制面板>管理工具>服务 管理窗 ...

  9. 性能超越 Redis 的 NoSQL 数据库 SSDB

    idea's blog - 性能超越 Redis 的 NoSQL 数据库 SSDB 性能超越 Redis 的 NoSQL 数据库 SSDB C/C++语言编程, SSDB Views: 8091 | ...

随机推荐

  1. vs2013 在win7下,使用c++创建项目各种报错问题解决方案

    错误1:提示缺少mfc100ud.dll 错误2:win7 vs2013 mfc程序找不到sdkddkver.h 错误3:error LNK1158: 无法运行“rc.exe” 等等; 在网上搜了好久 ...

  2. Expression<Func<T>>和Func<T>

    以前用EF的时候,由于where的时候有Expression<Func<T>>和Func<T>两种查询条件,误用了Func<T>那个重载,后来还想通过f ...

  3. JDBC流程

    最近要学习Mybatis的源码,因此对JDBC的使用进行总结. 一.JDBC概述 JDBC(Java DataBase Connectivity,java数据库连接)是一种用于执行SQL语句的Java ...

  4. Codeforces550C(SummerTrainingDay01-H)

    C. Divisibility by Eight time limit per test : 2 seconds memory limit per test : 256 megabytes input ...

  5. php中的或运算

    1.今天碰到一个php或运算的面试题,很有趣,和大家分享一下.开始不明白什么原因. <?php $a = 0; $b = 0; if($a=3)>0 || ($b=3)>0) { $ ...

  6. Angular4.+ ngx-bootstrap Pagination 自定义分页组件

    Angular4 随笔(二)  ——自定义分页组件 1.简介 本组件主要是实现了分页组件显示功能,通过使用 ngx-bootstrap Pagination分页组件实现. 基本逻辑: 1.创建一个分页 ...

  7. Mybatis中使用循环遍历

    Mybatis中传参数的方法 1.使用注解绑定,mapper.xml 对应方法 不需要指定 parameterType,(推荐使用注解绑定方式) 方法接口: List<CalculateIdea ...

  8. 图像阈值化-threshold、adaptivethreshold

    在图像处理中阈值化操作,从一副图像中利用阈值分割出我们需要的物体部分(当然这里的物体可以是一部分或者整体).这样的图像分割方法是基于图像中物体与背景之间的灰度差异,而且此分割属于像素级的分割.open ...

  9. ubutu强制关闭应用程序的方法

    1.打开终端,输入命令 top 2.查看应用程序PID号,比如是8080 3.然后终端输入 kill 8080 ,行了

  10. OSGI企业应用开发(十二)OSGI Web应用开发(一)

    前面文章中介绍了如何在OSGI应用中整合Spring和Mybatis框架,本篇文章开始介绍如何使用OSGI技术开发Web应用.对于传统的Java EE应用,应用中涉及到的Web元素无非就是Servle ...