Oracle的共享服务器进程

Oracle的共享服务器进程
一、 共享服务器初始化参数
 
 
    DISPATCHERS:配置调度程序进程
    MAX_DISPATCHERS:指定同时运行的调度程序进程最大数目
 
    用于设置调度程序的起始数目,初始化文件可以指定多个DISPATCHERS参数,但必须是彼此相邻的。Oracle内部为每个DISPATCHERS参数分配一个INDEX索引值,以方便之后使用ALTER SYSTEM语句时明确引用某个DISPATCHERS参数。
 
    对一般系统来说,每1000个连接分配1个调度程序,运转好的话再多一些。太多的调度程序会降低系统性能,所以要实现估计好连接数。
 
    举例:
    DISPATCHERS = "(PROTOCOL = TCP)" --基本参数
    DISPATCHERS = "(ADDRESS = (PROTOCOL = TCP)(HOST = 10.2.1.81)) (DISPATCHERS = 2)" --强调IP
    DISPATCHERS = "(ADDRESS = (PROTOCOL = TCP)(PORT = 5000))" --强调端口
 
 
 
    SHARED_SERVERS:指定启动实例时可创建的共享服务器进程数
    MAX_SHARED_SERVERS:指定可以同时运行的共享服务器进程最大数目
 
    指定了启动时希望创建的共享服务进程的数目。Oracle会在SHARED_SERVERS和MAX_SHARED_SERVERS之间的数目中,根据请求队列的长度动态调整共享服务器的数目。一般来说,10个连接分配一个共享服务器。
 
    MAX_SHARED_SERVERS是一个静态初始参数,但SHARED_SERVERS是动态参数,可以使用ALTER SYSTEM语句修改。
 
    CIRCUTTS:进出网络会话时可以利用的虚拟回路总数
 
    SHARED_SERVER_SESSIONS:用户会话允许的共享服务器总数,可以为专门服务器保留用户会话
 
    LARGE_POOL_SIZE:指定大型存储池分配字节大小
 
    SESSIONS:系统可创建的最大会话数目
 
 
二、修改调度程序和服务器进程
 
 
    1、调度进程
 
    可通过V$QUEUE、V$DISPATCHER、V$DISPATCHER_RATE来查看
 
    通过ALTER SYSTEM修改DISPATCHERS参数值
 
    ALTER SYSTEM SET DISPATCHERS =
    '(PROTOCOL = TCP)(DISPATCHERS = 5)(INDEX = 0)',
    '(PROTOCOL = TCPS)(DISPATCHERS = 2)(INDEX = 1)';
 
    注1:DISPATCHERS:是参数;DISPATCHERS=5 才是调度进程个数;
    注2:INDEX用于识别DISPATCHERS参数,从0到n依次排列,即V$DISPATCHER中的CONF_INDX值
 
 
    2、关闭调度进程
 
    首先要查询到DISPATCHERS的NAME:
 
    SELECT NAME,NETWORK FROM V$DISPATCHER;
 
    然后关闭调度进程:
 
    ALTER SYSTEM SHUTDOWN IMMEDIATE 'D000';
 
    更改共享服务器进程最少数目:
 
    ALTER SYSTEM SET SHARED_SERVERS = 2;
 
 
    3、监视共享服务器
 
    V$DISPATCHER:提供有关调度程序进程的信息;
    V$DISPATCHER_RATE:提供调度程序进程的速率统计表;
    V$QUEUE:包含有关共享服务器的消息队列的信息;
    V$SHARED_SERVER:包含有关共享服务器进程的信息;
    V$CIRCUIT:包含有关虚拟回路的信息;
    V$SHARED_SERVER_MONITOR:包含协调共享服务器的信息;
    V$SGA:包含各个系统全局区(SGA)组的容量信息;
    V$SGASTAT:关于DGA的详细统计信息,用于协调共享服务器;
    V$SHARED_POOL_RESERVED:共享存储池的信息
 
 
 




-The End-

你可能感兴趣的:(Oracle的共享服务器进程)