OCI中的会话池
会话池的应用是提供的创建和保持一组连接数据库的会话。当有客户端请求时,这些会话就转交给了客户端。如果没有可用的会话时,将有可能创建一个新的会话。当客户端携带的会话使用完毕后,客户端要把这个会话放回到会话池中。这样,会话池中的会话数量就能动态地增加。
在池中有些会话能被标记为具有某种特定属性的会话。例如,一个用户请求一个默认的会话,并在这个会话上设置了某些属性,然后打个标签或者做个标记,然后放回池中。以后这个用户或者某些别的用户就可以请求具有这些属性的会话。在一个池中可以有标记相同的好多会话。并且附加在这些会话上的标记可以被改变或者重置。代理会话也可以通过这个接口创建和保持。
当池中没有可用的会话并且已经达到设定的最大会话数量的时候,可以设定这些特性--创建一个新的会话或者返回错误,或者使这个线程阻塞直到这个会话被释放。
OCI的功能特性:
- 创建、保持、管理透明的连接池。
- 提供一组接口用来设置会话池的最小数量,最大数量和递增值。
- 提供一组接口可以用来获取或者释放池中默认的或者被用户标记的会话。
- 可以动态地改变会话数量的最大值和最小值。
- 提供了保持打开的会话数量的最优值,方法是:当创建后很长一段时间闲置时,关闭会话,当有请求时重新创建。
- 支持会话池鉴权。
同一会话池和混杂会话池
在OCI中有具有相同属性的同一会话池和具有不同权限和安全级别的会话池之说。一个会话池可以是具有相同属性的,也可以是混杂模式的。具有相同属性的会话池也就是具有相同用户名、密码和权限的会话池。混杂会话池的意思是你必须提供可靠信息才能使用,因为这些会话具有不同的安全特性和权限。
阅读(1860) | 评论(0) | 转发(0) |