zoukankan      html  css  js  c++  java
  • 线上服务segment fault异常现象之一

            今天运维在线上部署一套较成熟的服务于车载终端导航的http服务后,测试验证时,服务每次接收请求时进程居然闪退,着实惊讶了一把。记录感叹一下,线上问题无大小,但是往往由于一些细微的细节造成的。

    1. 现象

        fastcgi load的http服务,在每次有请求打过来时,都会出现segment fault异常退出,dmesg查看如下:

    [2413269.761926] initSession[22470]: segfault at 67581fe9 ip 00000000080958cf sp 00000000ffee4360 error 6 in initSession[8048000+64000]
    [2413329.775804] initSession[22551]: segfault at 66ca8d09 ip 00000000080958cf sp 00000000ffc78080 error 6 in initSession[8048000+64000]
    [2413389.790086] initSession[22638]: segfault at 664d3d49 ip 00000000080958cf sp 00000000ffd510c0 error 6 in initSession[8048000+64000]
    [2413449.803824] initSession[22735]: segfault at 6665d4b9 ip 00000000080958cf sp 00000000ff85d830 error 6 in initSession[8048000+64000]
    [2413509.817405] initSession[22823]: segfault at 66a51d49 ip 00000000080958cf sp 00000000ff8ca0c0 error 6 in initSession[8048000+64000]
    [2413569.831553] initSession[22907]: segfault at 6808eb09 ip 00000000080958cf sp 00000000ffbf9e80 error 6 in initSession[8048000+64000]
    [2413629.844877] initSession[22991]: segfault at 676ac3d9 ip 00000000080958cf sp 00000000ffb14750 error 6 in initSession[8048000+64000]
    [2413689.858531] initSession[23104]: segfault at 6789f479 ip 00000000080958cf sp 00000000ffbf97f0 error 6 in initSession[8048000+64000]
     

    2. 原因

           由于这个服务又一直处于维护状态,研发也相对生疏了,调查了老久,推测可能由于运维误操作或部署造成的。最后调查core文件,发现应用服务每次有请求时,都会调用了年月日时分秒等参数来记录日志,而每次返回NULL值进行atol等操作,程序异常退出,汗,程序容错健壮性有待加强。而在默认的 tengine/conf/fastcgi_params文件中又缺省这些参数配置,所以应用每次取不到这些日期参数。


    3 解决方法
           在fastcgi_params文件里,追加了如下参数:  

    fastcgi_param YEAR $year;
    fastcgi_param MONTH $month;
    fastcgi_param DAY $day;
    fastcgi_param HOUR $hour;
    fastcgi_param MINUTE $minute;
    fastcgi_param SECOND $second; 
    

      

  • 相关阅读:
    MySQL中数据类型介绍
    Linux rpm命令详解
    Cloudera Manager集群官方默认的各个组件开启默认顺序
    全网最全Python学习路线图+14张思维导图,让python初学者不走弯路!
    python插入Elasticsearch操作
    最全的常用正则表达式大全(校验数字,字符,号码等)
    django.db.utils.OperationalError: (1193, "Unknown system variable 'storage_engine'")
    MVC/MVT/装饰器
    ModuleNotFoundError: No module named 'tools.utils'
    request +lxml 天眼查爬虫
  • 原文地址:https://www.cnblogs.com/gisorange/p/4567330.html
Copyright © 2011-2022 走看看