热门标签 | HotTags
当前位置:  开发笔记 > 运维 > 正文

Oracle等待事件DFSlockhandle

在做性能压力测试,测试结果不能通过,获取现场一个小时的AWR报告,发现大量的等待事件,数据库是RAC,版本是Oracle11.2.0.4.0。

在做性能压力测试,测试结果不能通过,获取现场一个小时的AWR报告,发现大量的等待事件,数据库是RAC,版本是Oracle 11.2.0.4.0。

在做性能压力测试,测试结果不能通过,获取现场一个小时的AWR报告,发现大量的等待事件,数据库是RAC,版本是Oracle 11.2.0.4.0。

Snap IdSnap TimeSessionsCursors/SessionInstances

Begin Snap: 1607 21-10月-14 20:00:03 560 67.9 2

End Snap: 1608 21-10月-14 21:00:11 573 12.4 2

Elapsed: 60.13 (mins)

DB Time: 2,090.75 (mins)

EventWaitsTotal Wait Time (sec)Wait Avg(ms)Wait Class

rdbms ipc reply 32,876,281 44.9K 1 35.8 Other

DB CPU 21.3K 17.0

direct path read 435,808 18.8K 43 15.0 User I/O

DFS lock handle 4,204,866 7977.9 2 6.4 Other

log file sync 8,541 252.7 30 .2 Commit

1. 排在第一的等待事件是rdbms ipc reply , 解释是The rdbms ipc reply Oracle metric event is used to wait for a reply from one of the background processes.说明lgwr,dbwr等后台进程空闲,等待前台进程给予他们的工作任务。DFS lock handle这个等待事件很可疑,官方解释是:

The session waits for the lock handle of a global lock request. The lock handle identifies a global lock. With this lock handle, other operations can be performed on this global lock (to identify the global lock in future operations such as conversions or release). The global lock is maintained by the DLM.

大致意思是无法获得global cache lock的handle时候所记录的等待事件。

2. 在网上看了下大家的处理方式,序列的cache过小,数据库服务器CPU过高,做过相应的调整和监控,,都不解决问题。在做性能测试的时候,

select chr(bitand(p1,-16777216)/16777215) || chr(bitand(p1, 16711680)/65535) "Lock",

to_char(bitand(p1, 65536)) "Mode",

p2, p3 , seconds_in_wait

from v$session_wait

where event = 'DFS lock handle';

发现了BB锁,意思是:2PC distributed transaction branch across RAC instances DX Serializes tightly coupled distributed transaction branches。

大致意思是分布式事务两个RAC实例中across。我随即做出调整,将weblogic连接改为只是连接一个RAC节点,再进行测试。测试结果如下:

Snap IdSnap TimeSessionsCursors/SessionInstances

Begin Snap: 1680 24-10月-14 12:00:13 864 9.5 2

End Snap: 1681 24-10月-14 13:00:17 863 9.9 2

Elapsed: 60.07 (mins)

DB Time: 80.28 (mins)

EventWaitsTotal Wait Time (sec)Wait Avg(ms)Wait Class

DB CPU 2335.6 48.5

rdbms ipc reply 5,326,201 645.6 0 13.4 Other

gc buffer busy acquire 39,052 226.7 6 4.7 Cluster

DFS lock handle 672,757 225.8 0 4.7 Other

DFS lock handle减少了非常多,但还是存在,不过性能测试结果好了很多。

3. 如何彻底解决呢?先说下DFS lock handle,说简单一点就是一个object在不同的实例中DML,每个实例在自己处理自己的object。这是一个权衡的问题,如果weblogic动态连接实例,就无法保证每次处理自己的object,但这样可以容灾,其他的实例挂了也没问题;如果是指定单独的实例,相对于动态是优、缺点是反的。还有一种说法是metalink中有关于DFS lock handle的都是bug,目前尚不清楚数据库升级后是不是会好一点。

Oracle 11g下重现library cache lock等待事件

Oracle 11g等待事件:db file async I/O submit

[Oracle] 常见的等待事件

oracle Log Buffer内部机制以及常见等待事件

RAC数据库中的'log file sync'等待事件

Oracle Tuning Log File Sync 等待事件的几种策略

Oracle等待事件详细分析


推荐阅读
  • Docker的安全基准
    nsitionalENhttp:www.w3.orgTRxhtml1DTDxhtml1-transitional.dtd ... [详细]
  • MySQL缓存机制深度解析
    本文详细探讨了MySQL的缓存机制,包括主从复制、读写分离以及缓存同步策略等内容。通过理解这些概念和技术,读者可以更好地优化数据库性能。 ... [详细]
  • 网络运维工程师负责确保企业IT基础设施的稳定运行,保障业务连续性和数据安全。他们需要具备多种技能,包括搭建和维护网络环境、监控系统性能、处理突发事件等。本文将探讨网络运维工程师的职业前景及其平均薪酬水平。 ... [详细]
  • 随着网络安全威胁的不断演变,电子邮件系统成为攻击者频繁利用的目标。本文详细探讨了电子邮件系统中的常见漏洞及其潜在风险,并提供了专业的防护建议。 ... [详细]
  • 探讨如何真正掌握Java EE,包括所需技能、工具和实践经验。资深软件教学总监李刚分享了对毕业生简历中常见问题的看法,并提供了详尽的标准。 ... [详细]
  • 探讨架构师在项目中应如何平衡对产品的关注和对团队成员的关注,以实现最佳的开发成果。 ... [详细]
  • 本文探讨了如何在日常工作中通过优化效率和深入研究核心技术,将技术和知识转化为实际收益。文章结合个人经验,分享了提高工作效率、掌握高价值技能以及选择合适工作环境的方法,帮助读者更好地实现技术变现。 ... [详细]
  • 深入理解一致性哈希算法及其应用
    本文详细介绍了分布式系统中的一致性哈希算法,探讨其原理、优势及应用场景,帮助读者全面掌握这一关键技术。 ... [详细]
  • 本文探讨了2012年4月期间,淘宝在技术架构上的关键数据和发展历程。涵盖了从早期PHP到Java的转型,以及在分布式计算、存储和网络流量管理方面的创新。 ... [详细]
  • 本文介绍了如何使用 Spring Boot DevTools 实现应用程序在开发过程中自动重启。这一特性显著提高了开发效率,特别是在集成开发环境(IDE)中工作时,能够提供快速的反馈循环。默认情况下,DevTools 会监控类路径上的文件变化,并根据需要触发应用重启。 ... [详细]
  • 计算机网络复习:第五章 网络层控制平面
    本文探讨了网络层的控制平面,包括转发和路由选择的基本原理。转发在数据平面上实现,通过配置路由器中的转发表完成;而路由选择则在控制平面上进行,涉及路由器中路由表的配置与更新。此外,文章还介绍了ICMP协议、两种控制平面的实现方法、路由选择算法及其分类等内容。 ... [详细]
  • 数据库内核开发入门 | 搭建研发环境的初步指南
    本课程将带你从零开始,逐步掌握数据库内核开发的基础知识和实践技能,重点介绍如何搭建OceanBase的开发环境。 ... [详细]
  • 深入解析Spring Cloud Ribbon负载均衡机制
    本文详细介绍了Spring Cloud中的Ribbon组件如何实现服务调用的负载均衡。通过分析其工作原理、源码结构及配置方式,帮助读者理解Ribbon在分布式系统中的重要作用。 ... [详细]
  • 该平台旨在为大型企业提供一个高效、灵活且可扩展的分布式微服务架构解决方案。它采用模块化、微服务化和热部署的设计理念,结合当前最先进且无商业限制的主流开源技术,如Spring Cloud、Spring Boot2、MyBatis、OAuth2和Element UI,实现前后端分离的系统管理平台。 ... [详细]
  • 深入解析:阿里实战 SpringCloud 微服务架构与应用
    本文将详细介绍 SpringCloud 在微服务架构中的应用,涵盖入门、实战和案例分析。通过丰富的代码示例和实际项目经验,帮助读者全面掌握 SpringCloud 的核心技术和最佳实践。 ... [详细]
author-avatar
Edison小磊
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有