Kaya 发表于os2ora.com
下一个Oracle Real World Performace Group所录制的Demo视频是关于OLTP性能的。与Retail Demo对应,这个Demo内部的名字叫做Connection Demo。Retail Demo主要展现的是数据仓库的性能,而Connection Demo展现的主要是OLTP的性能。这个Demo首次出现于2010年的OOW,往事不堪回首,那段时间我刚好在Oracle总部负责这个Demo的开发工作,怀念那段与bug做斗争的日子。
这个Demo的功能比较多,录制好的视频主要有两个主题:
1. OLTP Performance – The Trouble with Parsing
这是关于Oracle 里面的no parse, soft parse 和 hard parse。
这是一个老生常谈的问题,自从有了Oracle之后。
在no parse情况下,情况很理想,响应时间1毫秒,吞吐量30,000.
在soft parse情况下,情况有点糟糕了…
在hard parse情况下,情况更糟糕了… 关于shared pool的等待事件…
另一个展示的是不使用长连接而使用短连接有什么后果。究竟频繁地执行logon -> do some stuff -> logoff会导致什么严重的后果?服务器上的SYS% CPU为何会比USER% CPU还高?
还有,EM在这三种情况下的Performance Page会有什么直观的展示?
一切尽在这个Demo中,嗯。
2. OLTP Performance – Concurrent Mid-Tier Connections
这是一个很有趣的Demo.
有多少客户的系统连接着成千上万个数据库连接?有多少个客户把实现成32000个并发连接做为系统的需求进行设计?
过度的连接会导致什么后果?
这个Demo模拟了两个应用服务器对一个数据库服务器的连接。应用会话数为9600个,使用JDBC Connection Pool连接到数据库。
开始时,Connection Pool有2048个连接。这时你会看到一个看起来非常常见的系统。CPU很忙,系统看起来很正常,等待事件看起来很多很常见。如buffer busy waits, enq: TX – index contention, log buffer space等等。嗯,DBA开始分析这些等待事件,开始调整参数。 过年过节的时间,系统变得更不稳定,DBA们开始提心吊胆渡过每一秒钟。
这个Demo起码回答了几个问题:
如果把Connection 的个数降到1024,会有什么结果?会话的等待时间会不会变得更长?吞吐量会不会下降?
如果把Connection 的个数降到96,又会有什么结果?
还有,EM在这三种情况下的Performance Page会有什么直观的展示?
看了,保证你会很惊讶。

最近评论