[AWR报告]Latch Hit %
时间:2022-07-23
本文章向大家介绍[AWR报告]Latch Hit %,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
从这期开始讲解awr报告的部分,上期说的是awr整体的部分,今天开始对里面的细节说起
这期针对Instance Efficiency Percentages 部分做说明
理论上说上述比例应接近100%
Latch Hit % 该指标指的是latch不需要等待即可获取的比例
计算公式为:
SELECT (1 - (Sum(misses) / Sum(gets))) * 100 FROM v$latch;
v$latch
可以从v$latch视图获取相关信息,下图为几个重要栏位的讲解
- GETS:以 willing-to-wait 模式请求latch的次数
- MISSES:以 willing-to-wait 模式请求latch但是需要等待的次数
- SLEEPS:以 willing-to-wait 模式请求latch需要等待并且超时的次数
- IMMEDIATE_GETS:以no-wait模式请求latch的次数
- IMMEDIATE_MISSES:以no-wait模式请求latch且失败(miss)的次数
- SPIN_GETS:以willing-to-wait模式请求latch需要等待,但是在spin中获得的次数
latch获取过程 latch 是Oracle的一种轻量级的锁,用于保护共享内存,如确保一个数据块同一时间只能被一个session访问等等
Cache Buffer Chains Redo Copy Latch
latch获取有2种方式
willing-to-wait no-wait
willing-to-wait模式 大部分latch采用如下模式,若第一次未取得latch时采用等待的方法,具体如下图:
no-wait模式 少部分latch采用这种模式,当第一次获取不到该latch时就不进行等待,直接进入sleep状态
如何处理
如此指标低于90%则说明latch等待严重,可查看awr报告的等待事件部分
如上图表明library cache存在冲突,具体如何调优latch的部分不在此次做解释
下期预告
Parse CPU to Parse Elapsd %
- 神经网络-感知器
- NSNotificationCenter 通知的使用方法详解你要知道的KVC、KVO、Delegate、Notification都在这里
- Protocol与Delegate 使用方法详解你要知道的KVC、KVO、Delegate、Notification都在这里
- iOS多线程——你要知道的GCD都在这里你要知道的iOS多线程NSThread、GCD、NSOperation、RunLoop都在这里
- NSCopying和NSCoding对象序列化反序列化基础详解你要知道的NSCopying、NSCoding协议及对象序列化和反序列化都在这里
- KVO 正确使用姿势进阶及底层实现你要知道的KVC、KVO、Delegate、Notification都在这里
- iOS多线程——你要知道的NSOperation都在这里你要知道的iOS多线程NSThread、GCD、NSOperation、RunLoop都在这里
- iOS多线程——你要知道的NSThread都在这里你要知道的iOS多线程NSThread、GCD、NSOperation、RunLoop都在这里
- KVO、Delegate、Notification 区别及相关使用场景你要知道的KVC、KVO、Delegate、Notification都在这里
- Core ML简介及实时目标检测及Caffe TensorFlow coremltools模型转换
- iOS网络——NSURLSession详解及SDWebImage源码解析你要知道的NSURLSession都在这里
- BZOJ3585: mex(主席树)
- 01.LoT.UI 前后台通用框架分解系列之——小图片背景全屏显示(可自动切换背景)
- 02.LoT.UI 前后台通用框架分解系列之——灵活的菜单栏
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- php 多继承的几种常见实现方法示例
- PHP中通过getopt解析GNU C风格命令行选项
- laravel高级的Join语法详解以及使用Join多个条件
- laravel实现图片上传预览,及编辑时可更换图片,并实时变化的例子
- 使用laravel的Eloquent模型如何获取数据库的指定列
- php 使用 __call实现重载功能示例
- laravel excel 上传文件保存到本地服务器功能
- PHP用swoole+websocket和redis实现web一对一聊天
- Yii框架布局文件的动态切换操作示例
- 关于laravel 子查询 & join的使用
- PHPUnit + Laravel单元测试常用技能
- php接口隔离原则实例分析
- laravel实现按月或天或小时统计mysql数据的方法
- laravel model模型处理之修改查询或修改字段时的类型格式案例
- 对laravel的session获取与存取方法详解