记一次线上Oracle连接耗时过长的问题
问题现象
1、远程Oracle数据库通过IP:PORT/SERVICE_NAME连接
2、应用服务通过Docker容器部署,访问Oracle联通性测试接口,需要50s左右才能返回连接成功;
3、写了个JDBC测试程序,放在宿主机进行JDBC连接Oracle数据库测试,发现连接耗时不稳定,时快时慢,下图为宿主机连接数据库耗时截图;
4、通过Windows运维机器安装Navicat客户端,连接目标Oracle数据库,连接速度很快;
5、Linux宿主机安装SQLPLUS客户端,连接目标Oracle数据库,连接速度很快;

初步排查
看了很多技术博客,基本都是将file:/dev/random修改为file:/dev/urandom、file:/dev/./urandom、file:/dev/../dev/urandom等,实测无效,可能碰到的不是一个问题
问题定位
排查到DNS时,发现宿主机DNS配置清空后,通过JDBC连接目标Oracle数据库速度很快
进入容器中进行测试,发现清空DNS配置后连接速度也很快了,至此问题解决
清空DNS配置命令:echo > /etc/resolv.conf
记一次线上Oracle连接耗时过长的问题的更多相关文章
- 解Bug之路-记一次线上请求偶尔变慢的排查
解Bug之路-记一次线上请求偶尔变慢的排查 前言 最近解决了个比较棘手的问题,由于排查过程挺有意思,于是就以此为素材写出了本篇文章. Bug现场 这是一个偶发的性能问题.在每天几百万比交易请求中,平均 ...
- 记一次线上bug排查-quartz线程调度相关
记一次线上bug排查,与各位共同探讨. 概述:使用quartz做的定时任务,正式生产环境有个任务延迟了1小时之久才触发.在这一小时里各种排查找不出问题,直到延迟时间结束了,该任务才珊珊触发.原因主要就 ...
- 一则线上MySql连接异常的排查过程
Mysql作为一个常用数据库,在互联网系统应用很多.有些故障是其自身的bug,有些则不是,这里以前段时间遇到的问题举例. 问题 当时遇到的症状是这样的,我们的应用在线上测试环境,JMeter测试过程中 ...
- 记一次线上Curator使用过程JVM栈溢出解决
为了同学们看起来一目了,特按如下思路进行讲解. 1.出现的场景 2.分析及解决的过程 3.总结 最近公司要使用zookeeper做配置管理(后面简称ZK),然后自己就提前用虚拟机进行 ...
- 记一次线上事故的JVM内存学习
今天线上的hadoop集群崩溃了,现象是namenode一直在GC,长时间无法正常服务.最后运维大神各种倒腾内存,GC稳定后,服务正常.虽说全程在打酱油,但是也跟着学习不少的东西. 第一个问题:为什么 ...
- 记一次线上gc调优的过程
近期公司运营同学经常表示线上我们一个后台管理系统运行特别慢,而且经常出现504超时的情况.对于这种情况我们本能的认为可能是代码有性能问题,可能有死循环或者是数据库调用次数过多导致接口运行 ...
- 记一次线上由nginx upstream keepalive与http协议"协作"引起的接口报错率飙高事件
年前接到个任务,说要解决线上一些手机客户端接口报错率很高的问题.拿到了监控邮件,粗略一看,各种50%+的错误率,简直触目惊心.这种疑难杂症解决起来还是挺好玩的,于是撸起袖子action. 最终的结果虽 ...
- 记一次线上dubbo服务超时和线程池满问题排查
线上某dubbo服务A调用dubbo服务B的接口X方法,调用端A日志中出现了很多超时的情况,提供端B该接口X超时时间设置为60s: 查看提供端B的日志,报了很多线程池满的异常: Caused by: ...
- 记一次线上 OOM 和性能优化
大家好,我是鸭血粉丝(大家会亲切的喊我 「阿粉」),是一位喜欢吃鸭血粉丝的程序员,回想起之前线上出现 OOM 的场景,毕竟当时是第一次遇到这么 紧脏 的大事,要好好记录下来. 1 事情回顾 在某次周五 ...
- 记一次线上FGC问题排查
引言 本文记录一次线上 GC 问题的排查过程与思路,希望对各位读者有所帮助.过程中也走了一些弯路,现在有时间沉淀下来思考并总结出来分享给大家,希望对大家今后排查线上 GC 问题有帮助. 背景 服务新功 ...
随机推荐
- Java - ReentrantLock锁分析
Java - JUC核心类AbstractQueuedSynchronizer(AQS)底层实现 一. AQS内部结构介绍 JUC是Java中一个包 java.util.concurrent . ...
- 从 DMAIC 方法论说起,记一个长链接 bug 的排查全过程
引 本文是我在前端团队的第四次分享,在过去我曾做过一次关于 bug 排查的全流程的排查分析,文档:客户线上反馈:从信息搜集到疑难 bug 排查全流程经验分享,但这个文章更侧重我过去几年的排查经验,而非 ...
- DesignPattern-part2
title: "modern C++ DesignPattern-Part2" date: 2018-04-10T19:08:49+08:00 lastmod: 2018-04-1 ...
- MQTT vs. XMPP,哪一个才是IoT通讯协议的正解
MQTT vs. XMPP,哪一个才是IoT通讯协议的正解 这是个有趣的话题! 先来聊几个小故事. 关于我和MQTT 我在人生第一个IoT项目里,第一次接触到MQTT协议. 我很快就理解了这个协议.因 ...
- 集群部署专题之二:超高性能RPC框架Zeroc-ICE集群部署简易教程
一.前言 Zeroc ICE在简中互联网的资料十分匮乏,以至于大家线上使用时可能会有所顾虑.其实大家尽可放心,ZerocICE是一款性能和稳定性都非常优秀的RPC组件,这也是我当时选择ZerocICE ...
- ModbusTCP 转 Profinet 主站网关在博图配置案例
ModbusTCP 转 Profinet 主站网关在博图配置案例 兴达易控ModbusTCP转Profinet网关,在 Profinet 侧做为 Profinet 主站控制器,接 Profinet 设 ...
- Mysql忘记密码后如何重置密码
长时间不使用本机的Mysql后把密码忘记了咋整?直接上干货: 第一步(Mysql部署的位置,若自己能找到就忽略这一步):任务管理器中也可以找到 第二步:修改配置文件 在my.ini末尾加上 skip- ...
- Eclipse 创建OSGI项目并调试
File->new->Plug-in Project
- 使用Eclipse生成CHM帮助文档(图解)
使用Eclipse生成CHM帮助文档(图解) 博客分类: System Operate javadoc生成chm文档java生成api帮助文档api帮助文档生成工具 Eclipse JavaDoc和j ...
- Java虚拟机(JVM):第五幕:自动内存管理 - HotSpot算法细节以及低延迟垃圾收集器
一.HotSpot算法细节 1.根节点枚举:所有的收集器在根节点枚举的时候,必须暂停用户线程,同时要保证一致性的快照中得以进行.一致性:整个枚举期间执行子系统看起来就像是冻结在某一个时间点上,不会出现 ...