精华内容
下载资源
问答
  • Linux服务器响应的排查步骤

    千次阅读 2018-07-28 17:15:38
    第一步:登录后台服务器/监控平台,查看系统资源是否达到上限,例如:CPU、内存、磁盘、I/O、网络带宽等,如果是这些问题,先将这些问题逐一解决:  如果是CPU的问题,则需要查看一下CPU占比比较高的进程,然后...

    第一步:登录后台服务器/监控平台,查看系统资源是否达到上限,例如:CPU、内存、磁盘、I/O、网络带宽等,如果是这些问题,先将这些问题逐一解决:

          如果是CPU的问题,则需要查看一下CPU占比比较高的进程,然后使用jstack命令生成进程的堆栈信息,看是否发生频繁Full GC,如果是的话,还需要看一下内存快照,分析一下内存情况(可以使用java自带的或第三方工具);如果是磁盘空间满了,及时清理磁盘;如果是带宽满了,联系网络工程师解决。如果以上这些问题都没有,则进行第二步。

     

    第二步:检查应用服务器(Jboss/Tomcat)的线程池配置是否合理,看一下请求的排队现象是否严重,如果严重则需要重新设置合理的线程池。同样,检查一下数据库的连接池设置是否合理,增大连接池设置,同时检查一下是否有慢sql,如果有慢sql,则进行优化(优化方案是查看执行计划,设置合理的索引等)。

     

    第三步:查看访问慢的服务的调用链,查看一下调用链中的每一步响应时间是否合理,如果不合理,则联系相关系统的负责人进行排查和解决。

     

    第四步:检查web服务器的请求日志,看一下是否存在Doss攻击,如果有Doss攻击,则将攻击者的IP添加到防火墙的黑名单里。

    展开全文
  • 一.分析思路  1.排除本机自身原因  2.服务器性能分析 ... 使用top命令查看服务器的资源使用情况,主要分析CPU和内存的使用情况(top 命令是 Linux 下常用的性能分析工具,能够实时显示系统...

    一.分析思路

      1.排除本机自身原因

      2.服务器性能分析

      3.项目本身分析(不详细说)

      4.虚拟机分析

      5.数据库分析

    二.详细分析方法

    1.排除本机自身原因

      可以使用站长工具测试网站速度。

    2.服务器性能分析

      使用top命令查看服务器的资源使用情况,主要分析CPU和内存的使用情况(top 命令是 Linux 下常用的性能分析工具,能够实时显示系统中各个进程的资源占用状况,默认5秒刷新一下进程列表,所以类似于 Windows 的任务管理器。):

        

      第三行显示的是Cpu的使用情况,详细含义如下:

      us---用户空间占用CPU的百分比、sy---内核空间占用CPU的百分比、ni---改变过优先级的进程占用CPU的百分比、id---空闲CPU百分比、wa---IO等待占用CPU的百分比、hi---硬中断(Hardware IRQ)占用CPU的百分比、si---软中断(Software Interrupts)占用CPU的百分比、st---Steal Time,分配给运行在主机上其它虚拟机的任务的实际CPU时间,一般只有在虚拟机OS。

      第4行是当前的内存情况,服务器总内存8054352k,已使用2879468k,剩余5174884k,缓冲265728k。

      我个人的理解是:当us的百分比小于50%时,是不需要去考虑服务器的配置问题的,如果服务器的us百分比长时间在70%以上时,可以考虑加强服务器的硬件配置。此外,还需要查看服务器的网络情况,下载一个大型文件基本就可以确定网络情况了。

    3.项目本身分析

      如果使用JDBC连接池,需要对连接池的配置进行分析(分析线程池的最大数量和释放时间等等)。

      这里以C3P0为例,下面是我曾经做的一个项目的配置,如下图:

          

      这里本来只是本地测试的配置方案,由于粗心,上线后忘记修改了,当多人访问时,会出现等待连接超时的情况,我们需要根据项目的实际情况设定合适的配置数据。

    还有可能项目的设计方面不合理导致响应缓慢,这里就不详细说明了。

      checkoutTimeout---当连接池连接耗尽时,客户端调用getConnection()后等待获取新连接的时间,超时后将抛出SQLException,如设为0则无限期等待。单位毫秒。默认: 0
      minPoolSize---连接池中保留的最小连接数,默认为:3
      maxPoolSize---连接池中保留的最大连接数。默认值: 15
      maxIdleTime---最大空闲时间,设定时间内未使用则连接被丢弃。若为0则永不丢弃。默认值: 0
      maxIdleTimeExcessConnections---default : 0 单位 s 这个配置主要是为了减轻连接池的负载,比如连接池中连接数因为某次数据访问高峰导致创建了很多数据连接 ,但是后面的时间段需要的数据库连接数很少,则此时连接池完全没有必要维护那么多的连接,所以有必要将断开丢弃掉一些连接来减轻负载,必须小于maxIdleTime。配置不为0,则会将连接池中的连接数量保持到minPoolSize。为0则不处理
      acquireIncrement---当连接池中的连接耗尽的时候c3p0一次同时获取的连接数。默认值: 3

    4.虚拟机分析

      使用top指令查看虚拟机的内存占用情况,有时候可以发现虽然虚拟机占用内存的百分比不大却有明显的上限值,我们就需要去查看虚拟机的配置情况。

      解决方法(以tomcat为例):

        

      具体的数值根据实际情况而定。

     

    5.数据库分析(MySql)

      数据库的分析内容和需要考虑的方面有很多,这里只说本人遇到过的几种情况:


    a.最大连接数    

      show variables like '%max_connections%'; 查看最大连接数
      show status like 'Threads%';当前连接的使用情况

      

      Threads_connected---打开的连接数

      Threads_running---这个数值指的是激活的连接数,这个数值一般远低于connected数值

      如果最大连接数的值太小可以根据实际情况进行修改,一般修改为1000即可,设置方法有两种:

        1.临时设置,重启服务后将失效

        

        2.修改数据库配置文件

          在/etc/my.cnf 文件的[mysqld]下增减一行:max_connections = 1000


    b.超时控制

      mysql存在一项属性“wait_timeout”,默认值为28800秒(8小时),wait_timeout的值可以设定,但最多只能是2147483,不能再大了。也就是约24.85天 ,可以通过show global variables like 'wait_timeout';命令来查看。

      wait_timeout的含义是:一个connection空闲超过8个小时,Mysql将自动断开该connection,通俗的讲就是一个连接在8小时内没有活动,就会自动断开该连接。由于dbcp没有检验该connection是否有效,用其进行数据操作便会出现异常。

      如果是由超时控制引起的问题,不建议修改wait_timeout的值,在数据库连接的url的后面加上“&autoReconnect=true&failOverReadOnly=false”即可解决。


    c.DNS反向解析  

      MySQL数据库收到一个网络连接后,首先拿到对方的IP地址,然后对这个IP地址进行反向DNS解析从而得到这个IP地址对应的主机名。用主机名在权限系统里面进行权限判断。反向DNS解析是耗费时间的,有可能让用户感觉起来很慢。甚至有的时候,反向解析出来的主机名并没有指向这个IP地址,这时候就无法连接成功了。 可以在配置文件里面禁止MySQL进行反向DNS解析,只需在my.cnf的[mysqld]段落中加入如下行即可:

          skip-name-resolve (windows与linux下一样的)


    d.表高速缓存

      show global status like 'open%tables%';查看打开的表的数量:

            

      open_tables:是当前在缓存中打开表的数量。

      opened_tables:是mysql自启动起,打开表的数量。

     

      当Opened_tables数值非常大,说明cache太小,导致要频繁地open table,可以查看下当前的table_open_cache设置:

      show variables like 'table_open_cache';  查看缓存的上限值

      

      设置table_open_cache的值有两种方式(如果是4G左右内存的服务器,建议设为2048):

        1.临时设置,重启服务后将失效

          set global table_open_cache=2048;

        2.修改数据库配置文件

          在/etc/my.cnf 文件的[mysqld]下增减一行:table_open_cache = 2048

    e.慢查询日志

      记录的慢查询日志的目的是确认是否是由于某些语句执行缓慢而导致的服务器响应慢。

      慢查询就不详细说了,网上可以查到很多。

    展开全文
  • 主要介绍了Tomcat服务器响应解决方案,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
  • linux部署Tomcat响应很慢的解决办法

    千次阅读 2018-08-09 13:13:05
    用浏览器访问tomcat主页,会发现超级,浏览器一直在等待服务器响应,从这里可以看出能够接入8080端口,但是服务器没有返回数据。(这个问题折腾几天)  后来在网上找了无数资料,终于发现了原因。tomcat8.0在...

    用浏览器访问tomcat主页,会发现超级慢,浏览器一直在等待服务器的响应,从这里可以看出能够接入8080端口,但是服务器没有返回数据。(这个问题折腾几天)

      后来在网上找了无数资料,终于发现了原因。tomcat8.0在腾讯云ubuntu14.04上有bug。

    问题原因:

    随机数引起线程阻塞。

    tomcat不断启动,关闭, 启动关闭。几次后会出现卡死状况。需很久才能加载完成

    阿里云同样配置,同样系统,则很难出现卡死状况。  即使出现过几十秒后也会释放出来。 而腾讯云 ubuntu 不会 腾讯云的 centos不知道。

      多次启动关闭,产生随机数的时候引起线程阻塞,,然后卡死。

      解决办法:

      tomcat bin/ catalina.sh 中加入JAVA_OPTS="$JAVA_OPTS -Djava.security.egd=file:/dev/./urandom"

    展开全文
  • linux 服务器执行命令异常

    千次阅读 2020-10-16 17:10:42
    本文章,是针对于服务器执行命令异常,且开放的服务不能正常提供功能 并不是 针对于服务器中,java项目启动异常,这个问题,在我的其他文章里面有描述 # 情景 昨天上服务器的时候,登录都特别的,而且前端...
    # 注意
    本文章,是针对于服务器执行命令异常慢,且开放的服务不能正常提供功能
    并不是
    针对于服务器中,java项目启动异常慢,这个问题,在我的其他文章里面有描述
    
    
    # 情景
    昨天上服务器的时候,登录都特别的慢,而且前端反映gitlab提交不了代码,显示502
    等我登录服务器之后,竟然执行ls命令,都要等一会,简直不能忍,按照之前一般重装了
    这么多代码,重新搞,很费时,而且好不容易遇到这个问题,绝不能放过
    
    
    # 场景复现
    1. 先使用w命令,查看系统负载 (如下图所示)

    2. 同样也可以使用uptime查看系统平均负载 (如下图所示)
       注: 这里的数值偏小,是由于本文是解决问题之后做的记录,当时没有截图
           具体的数字,大致和通过w命令运行的结果相差无几

    3. 当时查看内存也是充足的 (如下图所示)

    3.1 可见此时内存buff/cache区域数值较大,我们可以处理下
        这个地方,可能会造成gitlab的502问题
    
        执行命令:sync && echo 3 > /proc/sys/vm/drop_caches
        效果如下图所示

    4. 查看系统总体的上下文切换情况 (cs(context switch)是每秒上下文切换的次数)

    5. 查找R或D状态的进程
       注:R: 可运行状态(Running或Runnable)
    
          D: 不可中断状态(Uninterruptible Sleep,也称为 Disk Sleep)
    
    这里多说一些,我这边主要是由于项目当中设置了定时任务,每秒将日志文件同步到指定目录
    所以,执行当前命令后,出现了一堆任务,导致CPU频繁的切换上下文去执行,大量的进程堆积
    
    命令如下:ps aux | awk '{if($8 ~ /R|D/) print $0 }'

    6. 显示当前服务器所有运行中的进程 (可参考命令)
       ps aux | less
    7. 其他命令
    
    7.1. 查看占用CPU资源最多的10个进程
    ps aux|head -1;ps aux|grep -v PID|sort -rn -k +3|head
    
    7.2. 占用内存资源最多的10个进程
    ps aux|head -1;ps aux|grep -v PID|sort -rn -k +4|head
    
    7.3. 查看硬盘大小
    df -h
    
    7.4. 常用查看命令
    top
    
    7.5 查看当前服务器开放的进程端口
    netstat -nutlp
    8. 小结
    上面的命令,主要是查看当前系统的异常值,以及异常进程
    
    主要思想就是,查看当前服务器的磁盘,内存,CPU,负载等情况
    
    影响的可能是:定时任务,代码因素等
    
    最直接的办法还是杀进程,不过可以根据杀的进程,进一步的追踪,
    
    到底是什么因素影响的
    
    我这个是由于我每秒钟执行一次同步的定时任务堆积导致的
    
    总之一句话,不要老想着装系统,不过重启服务器也是常规的解决方法
    我这种是重启服务器都不好使的,所有问题,又因必有果,一定有方法可以解决

     

    展开全文
  • 解决linux服务器访问较的问题

    千次阅读 2018-06-30 20:54:05
    解决linux服务器访问较的问题具体执行步骤:1、 测试到服务器某个端口的掉包率2、 查看服务器的DNS地址是否配置正确3、 查看服务器网段的ARP状态4、 使用监控工具实时查看服务器流量是否正常5、 调整有关网络...
  • 项目部署到服务器响应速度

    万次阅读 2018-03-22 17:05:26
    在本地运行的时候响应时间最也就是几百毫秒,但是把项目部署到服务器上就成了几秒钟。莫名奇妙的就是,搞了一下午,检查了服务器网络、配置等原因,都没有问题。最后无意中看到tomact的日志里面,在服务器启动的...
  • 目录 1.查看 cpu 2.查看带宽 3.查看内存 4.查看tomcat 1.查看tomcat运行进程号 ...如果有异常请查看:Linux CPU 占用率较高问题排查 2.查看带宽 1、服务器内部安装iftop 流量监控工具: yum insta...
  • 最近发觉连接服务器非常,之前没有出现过这种情况。 我在这个腾讯云的服务器上弄了多虚拟服务器,估计是数据量太大 造成了冗余数据较多的原因,咨询了下腾讯云的小哥, 给我了个明确的回复: 您反馈Xshell...
  • 应用服务器linux,用户数大概有一千个,调用服务器接口时快时,有的半天没响应, 再点击一次瞬间就获取到数据了。 比如一个页面需要从接口获取数据,第一次打开接口响应非常,从该页面返回再次 进入,数据唰的...
  • 以前有过这样的情况,原因是硬盘不够了。...早上我也没做什么,然后看阿里云的后台的cpu使用情况,从早上10点左右一直到我写文章11:30都是99%左右,奇怪。(该不会是被攻击了吧?),但是看访问貌似
  • Linux服务器故障排查

    千次阅读 2013-11-23 17:55:35
    问题:服务器A无法与服务器B通信 可能大家在实际工作中最常见的网络故障就是一台服务器无法与另一台网络上的服务器进行通信。本小节将通过实例讲解具体处理办法。在实例中,一台名为dev1的服务器无法访问另一台名...
  • Linux构建服务器突然开始变

    千次阅读 2018-02-01 15:50:17
    检查应用程序日志文件或应用程序服务器日志文件,系统性能问题,Web服务器日志 - 检查HTTP,tomcat日志等或检查jboss,weblogic日志以查看应用程序服务器响应/接收时间是否缓慢的问题,内存任何应用程序泄漏 ...
  • Linux服务器性能优化

    千次阅读 2016-10-20 10:34:17
    它支持各种硬件平台,Linux服务器全球知名,它和Windows之间最主要的差异在于,Linux服务器默认情况下一般不提供GUI(图形用户界面),而是命令行界面,它的主要目的是高效处理非交互式进程,响应时间并不是那么重要,...
  • Linux服务器的优化

    千次阅读 2011-11-11 15:48:39
    Linux服务器的优化 服务器的优化是我们最小化安装系统时应该做的事情。其实,在做这项工作之前,我们就应该根据实际应用需求来选购Linux服务器,然后有所偏重地选择硬件,比如我们应该根据服务器的应用来确定是需要...
  • linux ping域名很慢的其中一个原因

    万次阅读 2017-01-11 10:02:43
    linux 下,ping 域名很慢,即使把域名解析出来后ping,也是很慢; 直接ping IP 就很快,可能是如下一个原因造成的: 解决: vi /etc/nsswitch.conf #hosts: files mdns4_minimal [NOTFOUND=return] dns mdns4 ...
  • linux服务器性能查看

    万次阅读 多人点赞 2018-01-04 20:04:02
    有时候系统响应很慢,但又找不到原因,这时就要查看平均负载了,看它是否有大量的进程在排队等待。 load average:平均负载 平均负载(load average)是指系统的 运行队列 的平均利用率,也可以认为是 可运行 进程 的...
  • 20个Linux服务器性能调优技巧

    千次阅读 2018-09-01 22:44:49
    它支持各种硬件平台,Linux服务器全球知名,它和Windows之间最主要的差异在于,Linux服务器默认情况下一般不提供GUI(图形用户界面),而是命令行界面,它的主要目的是高效处理非交互式进程,响应时间并不是那么重要,...
  • 这已经不是第一次遇到了,服务器的CPU或IO突然剧增,或者APP响应突然超,这个时候需要查看日志,看看接口有木有异常。 利用linux特有的grep、awk了可以快速统计,指定时间段的接口出现次数,可能对这个不是熟悉,...
  • Linux服务器性能评估与优化(四)--网络

    千次阅读 多人点赞 2019-10-18 10:42:46
    之前文章《Linux服务器性能评估与优化(一)》太长,阅读不方便,因此拆分成系列博文: 《Linux服务器性能评估与优化(一)--CPU》 《Linux服务器性能评估与优化(二)--内存》 《Linux服务器性能评估与优化(三)--磁盘i...
  • 之前文章《Linux服务器性能评估与优化(一)》太长,阅读不方便,因此拆分成系列博文: 《Linux服务器性能评估与优化(一)--CPU》 《Linux服务器性能评估与优化(二)--内存》 《Linux服务器性能评估与优化(三)--磁盘i...
  • 16个Linux服务器监控命令

    千次阅读 2015-12-15 14:07:04
    在不同的Linux发行版中,会有不同的GUI... 然而,对于一名Linux系统管理员来说,除非迫不得已,否则不会在Linux服务器上去运行这样的GUI程序,主要还是因为GUI会占用多的系统资源。所以呢,使用GUI工具一般都是做简
  • Linux服务器性能评估与优化(一)--CPU

    万次阅读 多人点赞 2015-01-18 11:22:15
    之前文章《Linux服务器性能评估与优化(一)》太长,阅读不方便,因此拆分成系列博文: 《Linux服务器性能评估与优化(一)--CPU》 《Linux服务器性能评估与优化(二)--内存》 《Linux服务器性能评估与优化(三)--磁盘i...
  • 之前文章《Linux服务器性能评估与优化(一)》太长,阅读不方便,因此拆分成系列博文: 《Linux服务器性能评估与优化(一)--CPU》 《Linux服务器性能评估与优化(二)--内存》 《Linux服务器性能评估与优化(三)--磁盘i...
  • 阿里云linux服务器重启遇到的那些坑

    万次阅读 2017-09-21 18:08:53
    于是重启linux服务器。这下好了,重启之后发现用xshell一直连不上linux。心想一定是防火墙的问题。于是奔着开启22端口的目标,踏上救机的泥潭。 首先博主去vim /etc/sysconfig/iptables文件,但是怎么也保存不了。...
  • Linux 服务器状态分析

    千次阅读 2018-01-12 10:06:48
    分析服务器的状态,其中常用命令如下: vmstat:用以检测CPU和内存情况 iostat:用于检测磁盘状态 netstat:用于检测带宽状态 CPU: 我们在使用vmstat命令时%user和%sys体现CPU的状态,分别代表CPU处在...
  • Linux 服务器性能监视工具小结

    千次阅读 2012-11-28 09:21:11
    Load越高说明系统响应,如果load是0,代表进程不需要等待,立刻就能获得cpu运行。可以通过查询文件/proc/loadavg获取系统在前一分钟、前五分钟和前十五分钟的平均负载以及当前运行的进程、系统的进程数和上一次...
  • 之前文章《Linux服务器性能评估与优化(一)》太长,阅读不方便,因此拆分成系列博文: 《Linux服务器性能评估与优化(一)--CPU》 《Linux服务器性能评估与优化(二)--内存》 《Linux服务器性能评估与优化(三)--磁盘i...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 56,309
精华内容 22,523
关键字:

linux服务器响应很慢

linux 订阅