oracle调优 浅析“会话管理开销”
调优之浅析“会话管理开销”
【简单介绍】
在调优的过程中,对于会话的管理是比較普遍的问题,由于维护会话的开销相对是比較高的。
【过程表现例如以下】
客户请求(sid)→监听接收到→监听派生出新的进程(systemprocess id)→客户进程
凝视:
SPID:system process id。表示该serverprocess在OS层面的Process ID(操作系统进程ID);
PID:oracle process id。能够理解为Oracle自身使用的进程ID;
SID:session标识,在连接其他列时使用
【操作过程】
SQL> select sid from v$mystat whererownum=1;
--当前会话的sid
SID
----------
159
SQL> select p.spid
2 from v$process p,v$session s
3 where p.addr=s.paddr ands.sid=159;
--通过sid(session标识)找到对应的serverprocess
--spid(system process id)serverprocess在OS层面的Porcess ID,即操作系统进程ID
--pid(oracle process id)oracle进程ID
--查询条件为进程地址等于会话里的进程地址,而且会话sid为159
--查询出为sid159服务的system processid为426192
SPID
------------
426192
$ps -ef |grep 426192|grep -v grep
--查看system process id(serverprocess id)为426192的进程,而且把grep进程本身排除掉
oracle 426192 303338 0 09:29:21 - 0:02 oraclemetro (DESCRIPTION=(LOCAL=YES)(ADDRESS=(PROTOCOL=beq)))
--查看到spid为426192的oracle进程。这是一个专有模式连接的进程
--以上查询表明维护一个会话的开销是比較高的
【情景举例】
如果操作人员登陆一个系统时。会将sql发送给应用server。符合验证后会反馈回来,此时数据库链接断掉。一段时间后操作人员想依据ID查询对应数据时,会又一次发送一个链接,这次把信息返回后,又会断掉。这就是一个比較糟糕的会话链接,循环往复,由于在不停的创建链接、终结链接、创建链接、终结链接......将这样的情况体如今oracle上面,成本就会比較高了。
在实际生产环境下,对于应用server(B\S结构)会建立长链接(或链接池)以解决前面的问题。比方说,以weblogic作为应用server。创建了很多链接对象连接到oracle数据库,连上以后就不再断开了。之后。前端的应用须要使用数据库的时候,会先连接到应用server,应用server分配一个链接池里的空暇链接给这个应用请求使用。这个链接用完之后不会中断,而是把它变成空暇的状态再放回链接池。这个过程就是有效的降低了会话的数量。
oracle调优 浅析“会话管理开销”的更多相关文章
- oracle调优 浅析有效的游标管理
浅析有效的游标管理 [思路分析] 能够把游标理解成共享的运行计划,当sql不被共享时.常规的解决思路有两个方向: 1.调整共享池的尺寸(共享池的库缓存区中共享运行计划): 2.sql书写时尽量重用绑定 ...
- oracle调优 浅析关联设计
浅析关联设计 [范式] 比較理想的情况下,数据库中的不论什么一个表都会相应到现实生活中的一个对象,如球员是一个对象,球队是一个对象,赛程是一个对象,比赛结果又是一个对象等等,则就是范式. [关联设计] ...
- Oracle调优总结(经典实践 重要)
转载:http://langgufu.iteye.com/blog/1974211 Problem Description:1.每个表的结构及主键索引情况2.每个表的count(*)记录是多少3.对于 ...
- Oracle调优总结
Oracle调优总结(经典实践 重要) https://blog.csdn.net/dtjiawenwang88/article/details/74892245 https://www.cnblog ...
- Oracle调优之buffer pool相关
一个oracle block与data buffer中的一个buffer对应.用户进程(server process)负责读取磁盘上的block到data buffer cache中,DEWn进程负责 ...
- Oracle调优之看懂Oracle执行计划
@ 目录 1.文章写作前言简介 2.什么是执行计划? 3.怎么查看执行计划? 4.查看真实执行计划 5.看懂Oracle执行计划 5.1 查看explain 5.2 explain执行顺序 5.3 访 ...
- ORACLE调优深入理解AWR报告(转)
AWR报告分析可从以下几点入手: (1).Oacle主机资源开销分析及负载情况 (2).oracle top信息分析 Top 10 Foreground Events by Total Wait Ti ...
- (转) 【oracle调优】优化全表扫---cache整张表或索引
情景分析: 1)某查询必须要走全表扫描 2)该查询执行的频率相当高 3)对执行时间的要求也相当苛刻的话 4)数据库的IO比较吃紧 5)数据库的内存比较宽松 6)该表的大小没有大到离谱 以上情况下,可以 ...
- JAVA程序性能分析及调优浅析
1.性能分析本质 寻找系统的性能瓶颈(木桶理论/短板效应),并处理系统的性能瓶颈 2.性能分析主要指标负载.响应和服务器CPU\MEM等的使用率 3.性能分析主要工具 LoadRunner Visua ...
随机推荐
- cf 834 E. Ever-Hungry Krakozyabra
cf 834 E. Ever-Hungry Krakozyabra(爆搜+数位dp) 题意: 定义一种inedible tail为一个数把每一位数字按不降的顺序排列后,去掉前导0组成的序列 比如570 ...
- php中json_encode和json_decode的用法
1.json_encode基本用法:数组转字符串 <?php $arr = array ('a'=>1,'b'=>2,'c'=>3,'d'=>4,'e'=>5); ...
- 关于Bootstrap 利用radio实现tab切换的一个问题
1.html代码 <div class="col-sm-10 nav nav-tabs" id="typelist" role="tablist ...
- 百度经验:Win10查看已存储WiFi密码的两种方法
方法一:网络和共享中心查询 具体步骤可以参考:Win10查看WIFI密码的方法 方法二:命令提示符查询 1.右键单击开始按钮,选择“命令提示符(管理员)” 2.输入如下命令(下图①号命令): nets ...
- UVALIVE 3031 Cable TV Network
题意:求点联通度 首先看了别人的题解还是不晓得只枚举汇点的原因觉得行不通 关于求点联通度的建图方法 转自http://hi.baidu.com/lerroy312/item/5a5f36f2f5bba ...
- urllib url解析学习
#!/usr/bin/env python # encoding: utf-8 from urllib.parse import * #urlparse:解析url分段 #urlsplit:类似url ...
- python--jinja2
from jinja2 import Template # 创建一个Template模板去渲染它 s = "my name is {{mashiro}}" t = Template ...
- C3P0连接池工具类使用
c3p0的基本连接配置文件 c3p0-config.xml <c3p0-config> <default-config> <property name="dri ...
- 【原创】DataPackage-数据库、表的区域设置和系统不一致导致处理失败
问题描述: 最近学习Datapackage,创建完之后,部署处理但总是提示某某字段的区域设置和目标字段的区域设置不一致,具体如图: 测试发现其它的数据库表又没有这类的问题发生,甚是苦恼,搜寻了好久,后 ...
- Python的并发并行[2] -> 队列[0] -> queue 模块
queue 模块 / queue Module 1 常量 / Constants Pass 2 函数 / Function Pass 3 类 / Class 3.1 Queue类 类实例化:queue ...