`

系统性能问题

 
阅读更多

一 数据库调优:

 

1.服务器最大连接数:

 

<local-tx-datasource>
    <jndi-name>jdbc/</jndi-name>
    <connection-url>jdbc:oracle:thin:@172.16.100.18:1521:orcl</connection-url>
    <driver-class>oracle.jdbc.driver.OracleDriver</driver-class>
    <user-name>TETD_QT</user-name>
    <password>Hpoui&bmn$m#e$m_n20uytwe@iil</password>
        <min-pool-size>10</min-pool-size>
       <max-pool-size>20</max-pool-size>  设置大
    <exception-sorter-class-name>org.jboss.resource.adapter.jdbc.vendor.OracleExceptionSorter</exception-sorter-class-name>
2.数据库最大连接数 == 查看ORACLE连接数设置 
 SQL>select count(*) from v$process --当前的连接数
显示为45
SQL>select value from v$parameter where name = 'processes' --数据库允许的最大连接数
显示为600
#修改oracle最大连接数:
alter system set processes = 1000  scope = spfile;
重启数据库:
shutdown immediate;
startup;



性能调优的策略:

  • 用空间换时间;
  • 用时间换空间;
  • 简化代码;
  • 并行处理;

接着,能调优的方法,包括有:算法调优(过滤算法、哈希算法、分而治之和预处理)、代码调优(字符串操作、多线程调优、内存分配、异步操作、语言和代码库)、网络调优(TCP调优、UDP调优、网卡调优、其他网络性能)、系统性能(I/O模型、多核CPU调优、文件系统调优)、数据库调优(数据库引擎调优、SQL语句优化)。


二 tomcat 服务器调优

使用NIO在服务器端会有更好的性能,加强服务器端对并发处理的性能。  请注意:很抱歉,在tomcat6在默认的配置选项中是没有把NIO功能打开。所以很多正在使用Tomcat6的朋友们本以为能快活的使用上NIO。 
而NIO则是使用单线程(单个CPU)或者只使用少量的多线程(多CPU)来接受Socket,而由线程池来处理堵塞在pipe或者队列里的请求.这样的话,只要OS可以接受TCP的连接,web服务器就可以处理该请求。大大提高了web服务器的可伸缩性。

  1. <Connector port="8080" protocol="org.apache.coyote.http11.Http11NioProtocol"  
  2.                connectionTimeout="20000"  
  3.                redirectPort="8443" />  

 2,修改Tomcat 6默认的maxThread 

  1. <Connector port="8080" protocol="HTTP/1.1"   
  2.                connectionTimeout="20000"   
  3.                redirectPort="8443" maxThreads="150"/>  


在tomcat配置文件server.xml中的<Connector ... />配置中,和连接数相关的参数有: 
minProcessors:最小空闲连接线程数,用于提高系统处理性能,默认值为10 
maxProcessors:最大连接线程数,即:并发处理的最大请求数,默认值为75 
acceptCount:允许的最大连接数,应大于等于maxProcessors,默认值为100 
enableLookups:是否反查域名,取值为:true或false。为了提高处理能力,应设置为false 
connectionTimeout:网络连接超时,单位:毫秒。设置为0表示永不超时,这样设置有隐患的。通常可设置为30000毫秒。 

其中和最大连接数相关的参数为maxProcessors和acceptCount。如果要加大并发连接数,应同时加大这两个参数。 
3,大量的并发也意味着大量的服务器资源,所以修改一下tomcat的JVM参数也是必要的 
Windows环境下修改“%TOMCAT_HOME%\bin\catalina.bat”文件,在文件开头增加如下设置:set JAVA_OPTS=-Xms256m -Xmx512m 

Linux环境下修改“%TOMCAT_HOME%\bin\catalina.sh”文件,在文件开头增加如下设置:JAVA_OPTS=’-Xms256m -Xmx512m’


web server允许的最大连接数还受制于操作系统的内核参数设置,通常Windows是2000个左右,Linux是1000个左右。Unix中如何设置这些参数,请参阅Unix常用监控和管理命令 


分享到:
评论

相关推荐

    05_EAS系统性能问题诊断处理方法1

    EAS系统性能问题诊断处理方法主要涵盖EAS的部署模型、工作原理、性能问题的潜在环节、参数检查与调整、监控、问题跟踪和分析等方面。EAS,即金蝶企业应用套件,是一个为企业提供综合管理服务的软件平台。以下是关于...

    EAS常见系统性能问题处理指引

    2017EAS常见系统性能问题处理指引

    EAS系统性能问题诊断处理方法.pptx

    EAS系统性能问题诊断处理方法.pptx

    03_EAS常见系统性能问题处理指引1

    前言概述本文档描述 EAS 常见的系统性能问题、产生原因和诊断处理方法。对于无法在现场分析处理的性能问题,提供相关的运行日志收集方法,包括工具自动收集和手工收集

    Linux系统性能的远程监控.pdf

    本文将探讨一种通过网络通信在远程客户端监控Linux主机性能的方法,旨在提前发现和解决系统性能问题。 1. Linux性能参数获取 - `free`命令:用于查看Linux内存使用情况。它提供物理内存和交换空间的详细信息,如...

    nmon最新的分析系统服务器性能工具

    3. **高级分析**:除了基本的图表,nmon analyser还提供了进程分析、TOP SQL查询等功能,帮助定位系统性能问题的根源。 4. **报告生成**:用户还可以利用nmon analyser生成详细的性能报告,便于分享和存档。 ### ...

    Unix系统性能监控与系统资源管理

    系统性能问题通常源于资源的不合理分配或管理不当。主要的系统资源包括CPU、内存、磁盘和网络。CPU的利用率过高可能导致系统响应延迟,而内存不足则可能导致频繁的页面交换,降低系统效率。磁盘I/O瓶颈可能是由于...

    论文研究-基于LoadRunner新一代网银系统性能测试及优化 .pdf

    LoadRunner可以模拟成千上万的虚拟用户同时进行操作,产生高负载下的应用系统性能问题,并且通过监控服务器、数据库和网络等各方面的资源使用情况,分析瓶颈所在,帮助开发人员找出系统中潜在的问题。 在性能测试的...

    使用JProfiler结合LoadRunner寻找系统性能瓶颈

    本文将介绍如何结合这两款工具来定位系统性能问题。 首先,JProfiler是专为Java开发的系统提供性能监控的工具。它可以实时监控内存使用、垃圾回收、线程状态等,帮助开发者深入理解JVM的运行状况。要使用JProfiler...

    基于Oracle动态性能视图的医院信息系统性能调优模型设计和实现.pdf

    总的来说,通过深入理解和有效利用Oracle动态性能视图,DBA能够及时发现并解决系统性能问题,提高医院信息系统的整体运行效率和服务质量。同时,结合专业的参考文献和专业指导,可以进一步提升调优的效果和准确性。

    基于硬件跟踪的Linux系统性能优化 (1).pdf

    【基于硬件跟踪的Linux系统性能优化】 ...这种方法对于处理复杂的Linux系统性能问题尤其有效,尤其是当软件工具自身成为问题源时。通过使用硬件跟踪,ADIT成功地定位了问题,为优化Linux系统性能提供了切实可行的路径。

    业务性能监测分析系统建设方案.pptx

    - 责任界面难以划分:当用户抱怨系统性能问题时,IT监控显示系统资源正常,问题定位困难。 - 业务系统层次架构复杂:包括Web门户、OA、应用程序、数据库、中间件等,导致问题诊断困难。 - 客户端环境监控不易:难以...

    定量检测系统分析性能——分析范围之二[汇编].pdf

    4. **性能优化**:当发现系统性能问题时,需要进行优化。这可能包括代码优化(减少冗余操作,提高算法效率)、架构优化(如分布式系统设计、缓存策略)和资源配置调整(增加硬件资源,优化资源分配)。 5. **监控与...

    软件系统性能测试报告

    通过对这些数据的深入挖掘,我们可以发现系统性能瓶颈、资源分配问题以及可能的优化方向。最终,这些分析结果将为系统优化提供依据,确保软件系统在上线后能够满足性能需求,为用户提供流畅、稳定的服务体验。

    Linux平台下监控Oracle数据库性能

    在单一的应用环境或业务相对简单的系统下, 系统性能问题, 瓶颈所在往往是不言自明, 解决问题的前提--定位问题是比较容易解决的, 但在一个复杂的应用环境下, 各应用系统对系统资源往往是一种共享和竞争的关系, 而且...

    linux性能测试、内存优化资料集

    这份“linux性能测试、内存优化资料集”包含了丰富的资源,帮助程序开发者深入理解Linux内核的工作原理,有效地诊断和解决系统性能问题,以及优化内存使用。 一、Linux性能测试 性能测试是为了评估系统在特定工作...

    Windows性能监视方法

    总的来说,Windows性能监视方法依赖于性能计数器日志,这是一个强大的内置工具,可以帮助我们有效地跟踪和诊断系统性能问题。通过合理配置和分析,我们可以及时发现和解决系统性能瓶颈,提升计算机的工作效率。

    性能测试诊断分析与优化

    - 结合日志分析和监控系统,综合判断系统性能问题所在。 - 与开发团队紧密合作,共同分析代码层面的问题。 ##### 4.4 性能调优 - **问题描述**:找到问题后,如何有效地进行性能调优是另一个关键步骤。 - **解决...

Global site tag (gtag.js) - Google Analytics