[20200318]生产系统网络state=ESTABLISHED和Timer=probe分析3.txt --//前一段时间遇到的问题。http://blog.itpub.net/267265/viewspace-2678760/ --//我们rac环境跑2个数据库,一台使用tcp keepalive特性,另外一台使用SQLNET.EXPIRE_TIME.再观察看看。 net.ipv4.tcp_keepalive_time = 590 net.ipv4.tcp_keepalive_intvl = 10 net.ipv4.tcp_keepalive_probes = 4 --//今天看看效果: --//使用tcp keepalive特 性 服务器: # netstat -notp | grep probe|wc 9 81 1135 # netstat -tnop 2>/dev/null | grep probe | awk '{print $7}' | cut -f1 -d"/" | paste -sd, | xargs ps -fp | column -t UID PID PPID C STIME TTY TIME CMD oracle 41399 1 0 Feb21 ? 00:00:00 oracleAAAA1 (LOCAL=NO) oracle 41401 1 0 Feb21 ? 00:00:00 oracleAAAA1 (LOCAL=NO) oracle 41403 1 0 Feb21 ? 00:00:00 oracleAAAA1 (LOCAL=NO) oracle 41407 1 0 Feb21 ? 00:00:00 oracleAAAA1 (LOCAL=NO) oracle 41410 1 0 Feb21 ? 00:00:00 oracleAAAA1 (LOCAL=NO) oracle 41419 1 0 Feb21 ? 00:00:00 oracleAAAA1 (LOCAL=NO) oracle 41421 1 0 Feb21 ? 00:00:00 oracleAAAA1 (LOCAL=NO) oracle 56446 1 0 Feb13 ? 00:00:01 oracleAAAA1 (LOCAL=NO) oracle 56456 1 0 Feb13 ? 00:00:01 oracleAAAA1 (LOCAL=NO) --//使用SQLNET.EXPIRE_TIME服务器: # netstat -notp | grep probe|wc 19 171 2395 # netstat -tnop 2>/dev/null | grep probe | awk '{print $7}' | cut -f1 -d"/" | paste -sd, | xargs ps -fp | column -t UID PID PPID C STIME TTY TIME CMD oracle 10876 1 0 Mar12 ? 00:00:10 oracleBBBB2 (LOCAL=NO) oracle 13084 1 0 Mar12 ? 00:00:00 oracleBBBB2 (LOCAL=NO) oracle 18552 1 0 Feb22 ? 00:00:02 oracleBBBB2 (LOCAL=NO) oracle 27338 1 0 Mar13 ? 00:00:00 oracleBBBB2 (LOCAL=NO) oracle 31757 1 0 Mar13 ? 00:00:00 oracleBBBB2 (LOCAL=NO) oracle 32919 1 0 Mar12 ? 00:00:00 oracleBBBB2 (LOCAL=NO) oracle 39905 1 0 Mar13 ? 00:00:00 oracleBBBB2 (LOCAL=NO) oracle 41848 1 0 Mar07 ? 00:00:01 oracleBBBB2 (LOCAL=NO) oracle 45505 1 0 Feb22 ? 00:00:02 oracleBBBB2 (LOCAL=NO) oracle 57508 1 0 Mar10 ? 00:00:02 oracleBBBB2 (LOCAL=NO) oracle 58939 1 0 Mar10 ? 00:00:20 oracleBBBB2 (LOCAL=NO) oracle 60365 1 0 Mar10 ? 00:00:00 oracleBBBB2 (LOCAL=NO) oracle 68429 1 0 Mar02 ? 00:00:00 oracleBBBB2 (LOCAL=NO) oracle 68450 1 0 Mar06 ? 00:00:00 oracleAAAA2 (LOCAL=NO) oracle 74697 1 0 Mar09 ? 00:00:01 oracleBBBB2 (LOCAL=NO) oracle 85260 1 0 Mar12 ? 00:00:00 oracleBBBB2 (LOCAL=NO) oracle 86272 1 0 Mar10 ? 00:00:01 oracleAAAA2 (LOCAL=NO) oracle 102040 1 0 Mar06 ? 00:00:20 oracleAAAA2 (LOCAL=NO) oracle 118165 1 0 Mar05 ? 00:00:02 oracleAAAA2 (LOCAL=NO) --//如果你注意观察STIME列,就可以发现我3月5号清除后,使用tcp keepalive特 性 服 务器,都是3月5号之前的连接,3月5号之后没有1个 --//链接。而使用SQLNET.EXPIRE_TIME服务器,3月5日前后的日期都有,说明我的改动使用tcp keepalive是有效的。 --//我当时严重怀疑前台接入认证的程序引起的问题。windows开机出现登录界面很快,实际上是一个假象,许多服务后台进程还没有完 --//成启动,我们登录后接入认证的程序设计根本还没来得及启动,而且这个程序设计不好,启动后会弹出一个界面,如果用户选择X而不 --//是最小化,机器无法接入网络,个人怀疑这个接入认证软件引起的问题。 --//但是明显现在看到的一些很早就已经连接服务器的连接运行也很长时间,也会出现这样的情况,原因就不是很清楚了. --//决定统一修改使用tcp keepalive特性。 1.修改/etc/sysctl.conf,加入: net.ipv4.tcp_keepalive_time = 590 net.ipv4.tcp_keepalive_intvl = 10 net.ipv4.tcp_keepalive_probes = 4 --//注解 /u01/app/oracle/product/11.2.0.4/dbhome_1/network/admin/sqlnet.ora: $ grep -i expire sqlnet.ora #SQLNET.EXPIRE_TIME=5 2.清除这些进程。 # sysctl net.ipv4.tcp_max_orphans net.ipv4.tcp_max_orphans = 262144 # sysctl -w net.ipv4.tcp_max_orphans=0 --//注选择root用户执行,不然netstat的输出看不到进程号。 # netstat -tnop 2>/dev/null | grep probe | awk '{print $7}' | cut -f1 -d"/"|xargs -IQ echo kill -9 Q | bash or # netstat -tnop 2>/dev/null | grep probe | awk '{print $7}' | cut -f1 -d"/"|xargs -IQ kill -9 Q --//等 netstat -tnop 2>/dev/null | grep probe 没有输出后,执行: --//我的测试最多等3*120秒这些连接state=FIN_WAIT1会全部消失。最后执行: # sysctl -w net.ipv4.tcp_max_orphans =262144 # sysctl net.ipv4.tcp_max_orphans net.ipv4.tcp_max_orphans = 262144 3.剩下继续观察效果。 --//2天后观察: --//使用tcp keepalive特 性 服 务器: # netstat -notp | grep probe|wc 0 0 0 --//使用SQLNET.EXPIRE_TIME服务器: # netstat -notp | grep probe|wc 2 18 252 # netstat -tnop 2>/dev/null | grep probe | awk '{print $7}' | cut -f1 -d"/" | paste -sd, | xargs ps -fp | column -t UID PID PPID C STIME TTY TIME CMD oracle 16924 1 0 Mar14 ? 00:00:00 oracleBBBB2 (LOCAL=NO) oracle 37366 1 0 Mar11 ? 00:00:23 oracleBBBB2 (LOCAL=NO) --//STIME 都是在我修改前的,估计以后会越来越少。
[20200318]生产系统网络state=ESTABLISHED和Timer=probe分析3.txt
来源:这里教程网
时间:2026-03-03 15:18:04
作者:
编辑推荐:
- [20200318]生产系统网络state=ESTABLISHED和Timer=probe分析3.txt03-03
- 14亿条记录,12c 做不到2小时内变更表结构字段类型?03-03
- 周六直播充电:探究Oracle分区表创建和使用03-03
- 19c 数据高可用实用配置 RAC + SingleADG03-03
- ORA-00742:Log read detects lost writein thread 1 sequence 1202 block 13784003-03
- Oracle 自动化运维-Python表空间邮件预警03-03
- Relationship Database Design03-03
- Find and Fix the Mismatch Between DBA_SEGMENTS and DBA_EXTENTS Views03-03
下一篇:
相关推荐
-
雷神推出 MIX PRO II 迷你主机:基于 Ultra 200H,玻璃上盖 + ARGB 灯效
2 月 9 日消息,雷神 (THUNDEROBOT) 现已宣布推出基于英
-
制造商 Musnap 推出彩色墨水屏电纸书 Ocean C:支持手写笔、第三方安卓应用
2 月 10 日消息,制造商 Musnap 现已在海外推出一款 Oce
热文推荐
- 周六直播充电:探究Oracle分区表创建和使用
周六直播充电:探究Oracle分区表创建和使用
26-03-03 - ORA-00742:Log read detects lost writein thread 1 sequence 1202 block 137840
- Oracle 自动化运维-Python表空间邮件预警
Oracle 自动化运维-Python表空间邮件预警
26-03-03 - Relationship Database Design
Relationship Database Design
26-03-03 - 数据库监控---PIGOSS BSM
数据库监控---PIGOSS BSM
26-03-03 - Oracle 自动化运维-Python监控Oracle告警日志
Oracle 自动化运维-Python监控Oracle告警日志
26-03-03 - 审计表AUD$引起system表空间异常增长
审计表AUD$引起system表空间异常增长
26-03-03 - Oracle 12C新特性-History命令
Oracle 12C新特性-History命令
26-03-03 - SQLPlus无法登录数据库提示密码不对或权限不足
SQLPlus无法登录数据库提示密码不对或权限不足
26-03-03 - Thread cannot allocate new log, sequence
