Know more about RAC GES STATISTICS

GES 全称为Global Enqueue Services是RAC中重要的全局队列锁服务,V$GES_STATISTICS 动态性能视图汇聚了主要的GES STATISTICS 统计信息。为了更好地理解GES STATISTICS ,我们可以通过下表理解这些统计项的含义:  

V$GES_STATISTICS Reference (10.2.0.1.0)

  0 messages sent directly            Incremented when any process successfully sends a message to a remote instance without being blocked and without flow control.   1 messages flow controlled                    Incremented when any process could not send a message directly because there were not enough tickets available.   2 messages sent indirectly   Incremented when any process is asked to flow-control the message (i.e. a process tried to send a message indirectly, even if a ticket was available). This can also be incremented when previous message to the same target node had failed or a GCS/GES operation is being frozen.   3 messages received logical   When LMS receives a GCS/GES message from remote or local client, this statistic is incremented.   61 messages received actual   When LMS receives a message from a remote instance, this is incremented. A single actual message can contain multiple logical messages. Note, that when remote messages are queued, because they are flow controlled or they are indirectly / intentionally queued, the LMS process tries to send them in batch instead of flushing them individually.   4 flow control messages sent 5 flow control messages received   Messages flow controlled due to lack of ticket.   6 gcs msgs received 7 gcs msgs process time(ms) 8 ges msgs received 9 ges process time(ms)   When LMS receives a message, and if the message is related to either GCS (Global Cache Service) or GES (Global Enqueue Service) activity, it is incremented. After a GCS/GES message is processed, the process (typically LMD or LMS) updates the following statistics.  
  • gcs msgs received
  • gcs msgs process time(ms)
  • ges msgs received
  • ges msgs process time(ms)
 
10 msgs causing lmd to send msgs  11 lmd msg send time(ms) 65 msgs causing lms to send msgs  66 lms msg send time(ms)   Incremented when the LMD/LMS processes a GCS/GES message and it causes LMD/LMS to send one or more messages. For example, if LMS receives a message, and as part of processing it sends four more messages, the statistic will be incremented by 1, not 4. In order to get the exact number of messages sent by LMS, the session statistic ‘gcs messages sent’ and ‘ges messages sent’ needs to be retrieved for the session running LMS (from V$SESSTAT).   12 gcs side channel msgs actual 13 gcs side channel msgs logical   'side channel msgs logical' indicates the number of blocks shipped from this node to other nodes. 'side channel msgs actual' indicates the actual number of messages sent to other nodes. When CR blocks or current blocks are sent to a remote node, the sender actually sends another reliable message to the requestor, because the CR block or current block being shipped could be lost. For example, a node sends 100 CR blocks to another node (logical number of messages). The sender node then may send a message saying 'I've sent 100 blocks' in a single message (actual number of messages). The init.ora parameter '_side_channel_batch_size' defines the number of side channel messages to be sent in a single message.  With reliable IPC technology such as RSM and HyperFabric, we do not need side channel messages, and this value should be 0. With non-reliable IPC technology like UDP, these should be increased.   14 gcs pings refused   Incremented when the master node sends a BAST to a holder node, and the holder node is not able to service the BAST for some reason (typically because the block is not present or the ping queue is full).   15 gcs writes refused   Same as above, except that this is for Writes. In RAC if the blocks are globally dirty the writes are mediated by the GCS.   16 gcs error msgs   Certain race conditions in the GCS this statistic to be updated. It usually involves sending some extra messages to resolve the race through the use of error messages.   17 gcs out-of-order msgs   With direct sends, it is possible for two messages, which are sent from the same instance, to be received out-of-order at the master node. This statistic is updated whenever that happens.   18 gcs immediate (null) converts   Incremented when NULL lock can be granted immediately   19 gcs immediate cr (null) converts   Incremented when NULL lock for CR request can be granted immediately   20 gcs immediate (compatible) converts   Incremented when shared lock can be granted immediately   21 gcs immediate cr (compatible) converts   Incremented when shared lock for CR request can be granted immediately   22 gcs blocked converts   Incremented when the lock cannot be granted immediately. The lock is on the head of the convert queue.   23 gcs queued converts   Incremented when the lock cannot be granted immediately, and there is a conflicting lock in the convert queue ahead of this lock.   24 gcs blocked cr converts   Incremented when a CR request cannot be granted a lock because the lock is already being converted or the lock is in exclusive mode   25 gcs compatible basts   Number of BAST’s sent to holder node of a compatible lock.   26 gcs compatible cr basts (local)   CR request can be granted a lock, and BAST is sent to holder node. The lock is in local role.   60 gcs compatible cr basts (global)   This is incremented when the lock request is compatible but we can’t read from disk because the block is globally dirty.   27 gcs cr basts to PIs   CR request is sent to an instance that has a PI buffer that satisfies this CR request.   28 dynamically allocated gcs resources 29 dynamically allocated gcs shadows   Number of gcs resources / shadows dynamically allocated after the startup of instance. We should not see these increasing at all.  _gcs_resources and _gcs_shadows could be used to change the default number of these resources to avoid dynamic allocation, but we should treat it as a bug (the default should be enough or it could be memory leak.).   30 gcs recovery claim msgs   Number of recovery claim messages processed by this instance.   31 gcs indirect ast   AST is sent to LMS instead of foreground process.  
32 gcs dbwr write request msgs 33 gcs dbwr flush pi msgs 34 gcs lms write request msgs 35 gcs lms flush pi msgs 36 gcs write notification msgs   Messages related to flushing dirty XCUR / PI buffers. To flush PI buffers, request master node to write the most recent copy of the block in the global cache, which is ‘write request msgs’. Once the most recent copy of the block in the global cache is written to disk, PI buffers in the global cache can be purged, which is ‘flush pi msgs’. Once the most recent copy is written to disk, ‘write notification’ message is sent to the master node.   37 gcs retry convert request   Convert request had to be retried due to some race conditions.   38 gcs regular cr   CR for data blocks   39 gcs undo cr   CR for undo blocks   40 gcs assume no cvt   Assume was processed when the convert q is empty.   41 gcs assume cvt   Assume was processed when the convert q is non-empty.   42 broadcast msgs on commit(actual)   MCPD=0, number of messages sent to update the SCN.   43 broadcast msgs on commit(logical)   Same as 42, but logical (because the update may have been piggybacked).   44 broadcast msgs on commit(wasted)   Update SCN mesage is sent, but it is potentially a waste because receiver may have already updated the SCN.   45 acks for commit broadcast(actual) 46 acks for commit broadcast(logical)   Same as 42, 43 except that it applies to the receiving instance.   47 false posts waiting for scn acks   We posted LGWR because we thought MCPD broadcast completed, but it didn’t.   48 gcs forward cr to pinged instance   CR request is forwarded to the instance that is currently converting the GCS resource   49 gcs cr serve without current lock   CR block is served by the instance that does not have the current lock.   50 msgs sent queued 51 msgs sent queue time (ms)   Number of logical messages sent through send queue and their queuing time. Queuing time for queued messages: ‘msgs sent queue time (ms)’ / ‘msgs sent queued’  à Average message queuing time for flow controlled or indirectly sent messages. Note: this is calculated at ‘kjct’ layer (GCS/GES communication layer).   52 msgs sent queued on ksxp 53 msgs sent queue time on ksxp (ms)   Number of messages queued, and queuing time on ksxp layer. This includes all types of GCS/GES messages sent by any Oracle processes (foreground and background processes). Note: ‘msgs sent queued’ is a statistic from the kjct layer where we know if the messages are directly sent or indirectly sent.   54 msgs received queue time (ms) 55 msgs received queued   Elapsed time that a message is actually received until it is processed. Number of messages received  (logical). The ratio ‘msgs received queue time (ms)’ / ‘msgs received queued’ gives us the average queuing time between message arrival and start processing.   56 implicit batch messages sent 57 implicit batch messages received   Number of messages sent/received that are batched implicitly. Note: messages that are queued because of flow control or because of indirect messages, can be batched.   58 gcs refuse xid   Number of lock request received but refused to process by this instance, because index split is in progress (new in Oracle9i Release 2)   59 gcs ast xid   Number of lock request canceled because of index split   62 process batch messages sent 63 process batch messages received   Number of messages sent/received in batch.  When LMS receives multiple remote messages at a time, it processes all of them first, and then sends messages in batch as a result, instead of sending the result for each request individually.   64 messages sent pbatched   This is the number of messages being sent through process batching. This is the logical number whereas "process batch messages sent" is the actual number of messages sent out. Process batching in 10g is used for multi-block read, newing, receiver direct send (LMD0, LMS*, LMON) and fusion write (DBW*).  
67 global posts requested   AQ requested that a global post be delivered to another instance   68 global posts dropped   Post was dropped because there was no buffer space.   69 global posts queued   A post was queued to be sent to another instance   70 global posts sent   A post was actually sent to another instance   71 global posts queue time   Time difference between enqueuing and sending the post.   72 messages sent not implicit batched   This is the number of indirect sent messages not get any batching done from the send proxies due to various reason. For example, the message is big enough or is defined as non-batch type.   73 messages queue sent actual   Actual number of messages sent indirectly by send proxies.   74 messages queue sent logical   Logical number of messages sent indirectly by send proxies including the number of embedded message batched either through process batching or batching done in send proxies.   实际V$GES_STATISTICS的信息来源于X$KJISFT内部视图

转载于:https://www.cnblogs.com/macleanoracle/archive/2010/09/08/2967534.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/423077.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【剑指offer - C++/Java】5、用两个栈实现队列

学习交流加 个人qq: 1126137994个人微信: liu1126137994学习交流资源分享qq群: 962535112 牛客网题目链接:用两个栈实现队列 文章目录1、题目分析2、代码Java代码:C代码3、总结题目描述: 用两个栈来实现一…

【剑指offer - C++/Java】6、旋转数组的最小数字

题目链接:旋转数组的最小数字 文章目录1、题目描述2、题目分析3、代码3.1 Java代码3.2、C代码4、总结1、题目描述 把一个数组最开始的若干个元素搬到数组的末尾,我们称之为数组的旋转。 输入一个非减排序的数组的一个旋转,输出旋转数组的最小…

求一个有限长度字符串 最长的有序可重复字符串长度

求一个有限长度字符串 最长的有序可重复子串package acm;/*** author qxl*/ public class SequenceCharMax {/*** 输入一可重复的整数数组,求最长升序数组长度** 比如:* 输入:[1, 2, 3, 4]* 输出:4* 输入:[1, 5, 2, 3,…

发消息给非windows窗体程序

unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls; var WM_SHUTDOWN_THREADS: Cardinal; //无符号32位 type TForm1 class(TForm) Button1: TButton; Button2: TButton; Memo1: TMem…

设计模式-责任链模型

责任链模式场景: OA审批系统 CEO 审批项目 经费 500万<x ≤\leq≤ 1000万总监 审批的经费 300万 < x ≤\leq≤ 500万总监秘书 审批的经费 100万< x ≤\leq≤ 300万研发经理 审批的经费 50万 <x ≤\leq≤ 100万 传统方式 是 (接收到请求后&#xff0c;根据相应金额&…

【OS学习笔记】三 计算机的启动过程

学习交流加 个人qq&#xff1a; 1126137994个人微信&#xff1a; liu1126137994学习交流资源分享qq群&#xff1a; 962535112 上一篇文章迈进了汇编的大门&#xff0c;点击链接查看上一篇文章&#xff1a;汇编语言和汇编软件 上一篇文章大概学会以下内容&#xff1a; 了解汇编…

sm115

sm115 sm115 for firefox 作者: clowwindy版本: 0.4安装地址: https://addons.mozilla.org/zh-CN/firefox/addon/235279/ 使用说明: Firefox安装本扩展后&#xff0c;115在高峰时段也会直接显示下载链接&#xff0c;不需要使用优蛋。 点击“继续提取”按钮&#xff0c;可以再…

从zip中读取文件 合并到指定的文件中

从zip中读取文件 合并到指定的文件中引入 commons-io 版本可以选择更高的版本 <dependency><groupId>commons-io</groupId><artifactId>commons-io</artifactId><version>2.4</version></dependency>具体代码如下&#xff1a;…

【OS学习笔记】四 什么是虚拟机

虚拟机是软件 对于第一次听说虚拟机&#xff08;Virtual Machine&#xff0c;VM&#xff09;的人来说&#xff0c;可能以为还要再花钱买一台计算机&#xff0c;这恐怕是他们最担心的。所谓虚拟机&#xff0c;就是在你的计算机上再虚拟出另一台计算机来。这台虚拟出来的计算机&…

TCP/IP协议族之运输层(TCP流量控制和拥塞控制 [1])

TCP的流量控制 1. 利用滑动窗口实现流量控制 如果发送方把数据发送得过快&#xff0c;接收方可能会来不及接收&#xff0c;这就会造成数据的丢失。所谓流量控制就是让发送方的发送速率不要太快&#xff0c;要让接收方来得及接收。 利用滑动窗口机制可以很方便地在TCP连接上实现…

英语词源记忆法

英语词源记忆法后续持续更新中

【OS学习笔记】五 VirtualBox的下载、安装和配置

上一篇文章学习了&#xff1a;计算机的启动过程&#xff08;点击链接查看上一篇文章&#xff09; 今天来接着上一篇文章&#xff0c;解决我们学习中的实验环境问题。 参考&#xff1a;X86汇编语言-从实模式到保护模式。作者李忠。纯学习笔记。如有侵权请联系我删除 1、下载O…

iframe透明

<iframe allowtransparency"true" src"A.html"></iframe> A.html body { background-color:transparent; } 转载于:https://www.cnblogs.com/mattins/archive/2010/10/13/1850098.html

spring体系思维导图

spring体系思维导图1. spring 思维导图2. springboot 思维导图3. springcloud 思维导图之前整理的&#xff0c;后续持续更新中1. spring 思维导图 2. springboot 思维导图 3. springcloud 思维导图

【数据结构与算法-java实现】一 复杂度分析(上):如何分析、统计算法的执行效率和资源消耗?

今天开始学习程序的灵魂&#xff1a;数据结构与算法。 本文是自己学习极客时间专栏-数据结构与算法之美后的笔记总结。如有侵权请联系我删除文章。 我们都知道&#xff0c;数据结构和算法本身解决的是“快”和“省”的问题&#xff0c;即如何让代码运行得更快&#xff0c;如何…

sleep和wait的区别

考中2次了&#xff0c;再错第三次&#xff0c;我改姓&#xff01;天天笔试面试连轴转&#xff0c;查错的心情都没有&#xff01;不能再笨下去了&#xff01; from&#xff1a;http://nneverwei.javaeye.com/blog/494280 http://zhidao.baidu.com/question/75503928.html?frala…

idea模板

idea模板1.类注解模板2.方法注解模板3.自定义代码生成模板每次下载新版本的idea 或者换笔记本都需要重新&#xff0c;配置注解&#xff0c;而且从网上找了很多都或多或少有问题&#xff0c;每次要花费一些时间配置&#xff0c;这里整理一下。自定义代码生成模版&#xff0c;设置…

【OS学习笔记】六 实模式:编写主引导扇区代码

上一篇文章学习了&#xff1a;计算机的启动过程&#xff08;点击链接查看上一篇文章&#xff09; 这篇文章学习记录为&#xff1a;编写主引导扇区代码。 参考&#xff1a;《X86汇编语言-从实模式到保护模式》-李忠。纯学习笔记&#xff0c;更详细内容请阅读正版书籍。如有侵权…

秘罗地伤痕 -- 暂存小说草稿

六月的山城重庆热的让人发疯&#xff0c;远远看去&#xff0c;好像路上的青条石都要融化了似的。树梢也一动不动&#xff0c;似乎 在守卫着什么&#xff0c;坚定的站在自己的位置上。倒是走在这条路上的行人很是奇怪。这四个黑衣人&#xff0c;每人穿 一身高档礼服呢的西装&…