技术头条 - 一个快速在微博传播文章的方式     搜索本站
您现在的位置首页 --> 查看专题: TIME_WAIT
    之所以起这样一个题目是因为很久以前我曾经写过一篇介绍TIME_WAIT的文章,不过当时基本属于浅尝辄止,并没深入说明问题的来龙去脉,碰巧这段时间反复被别人问到相关的问题,让我觉得有必要全面总结一下,以备不时之需。
    自四月份以来,贴吧遇到了发帖失败的问题,现象比较诡异。通过层层分析,几经波折,终于找到“凶手”。 1 背景很久前知道上有个问题:“从前天开始,跟帖就是发帖失败,换个ID开始能发,后来又变成发帖失败,很迷惑。谁知道怎么回事么。是系统问题么,还是网络问题?”最佳答案是:“很大部分是网络出现问题,你可以重新提交下就可以了”。 前段时间,贴吧的提交UI老是报警,晚上的时候手机叮叮咣咣地响,每次看都是apache进程数上千hold不住了,只好逐台重启。后来OP怒了,直接写了个脚本,发现apache进程数上来就自动重启。好景不长,某天图1被PM截下来发到群上,自己发几个贴测试下居然复现了!看来真不是网络的问题,必须好好追查下了。 2 提交系统综述先整理下贴吧提交的逻辑和涉及的模块。图2是贴吧提交系统的架构,一个完整的发帖流程需要经过下述模块的处理。
    搜索有个应用就是每次都会去查一个接口,接口返回用户的信息数据,从而展现不同的筛选和排序效果。大致流程如下 s.taobao.com(hz)-> memcache ->电信custom接口 ->master-db s.taobao.com(qd)-> 网通custom接口 -> slave-db 接口环境是php(cgi) + nginx,接口已经运行很久,未出过异常 搜索访问custom接口,然后接口去查数据库(数据库是主从复制,数据同步,各自机房读各自的数据库,写的话都写master-db)有一点,就是电信机房是有memcache层的,而网通机房一直没有(考虑到网通机房流量不高,并且机房cache不同步,从上线起就网通机房一直未使用cache)有一次搜索上线,这个上线的版本有个改动就是把电信机房的memcache也取消了,然后 电信机房流量。。。。。
    临近年关,人会变得浮躁,期间写的代码可谓乱七八糟。不过出来混始终是要还的,这不最近就发现一个脚本时常发生连不上服务器的现象。 遇到这类问题,我习惯于先用strace命令跟踪了一下看看: shell> strace php /path/to/file EADDRNOTAVAIL (Cannot assign requested address) 从字面结果看似乎是网络资源相关问题。这里顺便介绍一点小技巧:在调试的时候一般是从后往前看strace命令的结果,这样更容易找到有价值的信息。 查...
    

最近发现几个监控用的脚本在连接监控数据库的时候偶尔会连不上,报错:

 Couldn't connect to host:3306/tcp: IO::Socket::INET: connect: Cannot assign requested address

查看了一下发现系统中存在大量处于TIME_WAIT状态的tcp端口

    这周一台新server要上线,突然想起用的是短链接,而且是client端主动断链接,于是就 netstat -lan 看了一下,果然发现大量的TIME_WAIT(9000左右),即系统在发现客户端断掉链接之后的等待状态,解...
[ 共6篇文章 ][ 第1页/共1页 ][ 1 ]
© 2009 - 2024 by blogread.cn 微博:@IT技术博客大学习

京ICP备15002552号-1