使用 Pinned-To-Thread 属性提高性能
要将应用程序保留数据源中数据库连接耗费的时间缩到最短,以及避免线程争用数据库连接,可将 Pinned-To-Thread 属性添加到数据源的“连接属性”列表中,然后将其值设置为 true。
启用Pinned-To-Thread 后,WebLogic Server 将在应用程序首次使用线程保留连接时将数据源中的一个数据库连接固定到此执行线程。应用程序使用完该连接并调用 connection.close()(此方法在其他情况下将把连接返回数据源)时,WebLogic Server 将把该连接留给执行线程,不会将其返回数据源。当应用程序随后使用同一执行线程请求连接时,WebLogic Server 将提供该线程已保留的连接。多个线程尝试同时保留一个连接时,数据源中不会发生锁定冲突,尝试在数量有限的数据库连接中保留同一连接的线程之间也没有冲突。
注意: 在此版本中,Pinned-To-Thread 功能对多数据源、Oracle RAC 和 IdentityPool 无效。如果出现连接故障,或连接标识不匹配,则这些功能依赖于将连接返回连接缓冲池后再重新将其获取的能力。
特别需要注意的是,采用这种方式,可能使数据库产生很多inactive连接,影响数据库的性能!
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/29371470/viewspace-1975196/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/29371470/viewspace-1975196/