上一页 1 ··· 23 24 25 26 27
  2013年5月15日
摘要: 近来线上陆续出现了一些connect失败的问题,经过分析试验,最终确认和proc参数tcp_tw_recycle/tcp_timestamps相关;1. 现象 第一个现象:模块A通过NAT网关访问服务S成功,而模块B通过NAT网关访问服务S经常性出现connect失败,抓包发现:服务S端已经收到了syn包,但没有回复synack;另外,模块A关闭了tcp timestamp,而模块B开启了tcp timestamp; 第二个现象:不同主机上的模块C(开启timestamp),通过NAT网关(1个出口ip)访问同一服务S,主机C1 connect成功,而主机C2 connect失败;2. 分析. 阅读全文
posted @ 2013-05-15 10:54 sidesky 阅读(317) 评论(0) 推荐(0) 编辑
  2013年5月14日
摘要: 有个应用就是每次都会去查一个接口,接口返回用户的信息数据,从而展现不同的页面效果。大致流程如下应用APP(电信)-> memcache ->电信custom接口 ->master-db应用APP(网通)-> 网通custom接口 -> slave-db接口环境是php(cgi) + nginx,接口已经运行很久,未出过异常应用访问custom接口,然后接口去查数据库(数据库是主从复制,数据同步,各自机房读各自的数据库,写的话都写master-db)有一点,就是电信机房是有memcache层的,而网通机房一直没有(考虑到网通机房流量不高,并且机房cache不同步,从 阅读全文
posted @ 2013-05-14 19:40 sidesky 阅读(1043) 评论(0) 推荐(0) 编辑
摘要: 一 TIME_WAIT产生原因:1、nginx现有的负载均衡模块实现php fastcgi负载均衡,nginx使用了短连接方式,所以会造成大量处于TIME_WAIT状态的连接。2、TCP/IP设计者本来是这么设计的主要有两个原因(1) 防止上一次连接中的包,迷路后重新出现,影响新连接(经过2MSL,上一次连接中所有的重复包都会消失)(2) 可靠的关闭TCP连接在主动关闭方发送的最后一个 ack(fin) ,有可能丢失,这时被动方会重新发fin, 如果这时主动方处于 CLOSED 状态 ,就会响应 rst 而不是 ack。所以主动方要处于 TIME_WAIT 状态,而不能是 CLOSED 。二 阅读全文
posted @ 2013-05-14 19:27 sidesky 阅读(362) 评论(0) 推荐(0) 编辑
  2012年6月20日
摘要: 工作这么多年,一直泡在园子里,却没有分享过什么的心得。原本早就有打算记录工作中遇到的问题记录最新的学习笔记。一来可以和朋友们交流,二来也可备年久遗忘查询。源于惰性再加上工作和生活环境等原因,迟迟没能动工。近期搬了住处,在不久的将来工作也将要变动,打算以此为契机,记录下工作和生活的点滴。算是一个心灵的栖息地吧。希望能结识更多的朋友,共同学习交流,当然不限于工作上,生活中也希望找到更多志同道合的朋友。 阅读全文
posted @ 2012-06-20 21:38 sidesky 阅读(117) 评论(0) 推荐(0) 编辑
上一页 1 ··· 23 24 25 26 27