Connection Pool
4453 ワード
Connection Pool
データベースに関連付けられた接続を事前に作成し、プールに格納します.
これは、必要に応じてコネクタを取得および書き込みし、プールに戻すことができることを意味します.
プールによるインタフェース インタフェース を使用戻りプール接続 は事前に構築するため、接続の作成に要する時間X である.インタフェースの繰り返し使用により、生成されたインタフェースは 少ない.インタフェースの作成とシャットダウン時間が短縮されるため、アプリケーションの実行速度が速くなります. は、一度にどれだけの接続を作成できるかを決定することができるので、同時に接続するユーザー数が多すぎても、Webアプリケーションがダウンタイムしにくい
コネクタプールで作成するコネクタの数は、 のみです.が同時に増加する接続数は、残りの接続がないことを意味し、クライアントは待機状態 に移行する.インタフェースを返すと、 が待機順に提供される.
接続プールは複数のプロパティで設定できます context.xmlファイル にコードを追加
データベースが提供するDBConnectionクラスを使用してデータベース に接続するダイレクトコードにid、pw、ipなどを入力コネクタオブジェクトを作成し、これらのコネクタ制御データベース を使用する.
は、直接コードでデータベースに接続するのではなく、WASで接続し、WASで接続する接続 を使用する. WAS起動時にDBConnectionオブジェクトを作成して書き込みます. データ・ソース(Oracle) を使用 WASが確立したインタフェースにはそれぞれ1つの名前がある.
データベースに関連付けられた接続を事前に作成し、プールに格納します.
これは、必要に応じてコネクタを取得および書き込みし、プールに戻すことができることを意味します.
使用順序
特長
コンカレントコネクタの処理方法
接続プールのプロパティ
接続プールは複数のプロパティで設定できます
maxActive: 커넥션 풀이 제공할 수 있는 커넥션의 갯수
whenExhaustedAction: 커넥션 풀에서 가져올 수 있는 커넥션이 없을 때 어떻게 동작할 지를 설정하는 속성, 0일 경우 에러발생, 1일 경우 maxWait 속성에서 지정한 시간만큼 커넥션을 얻을 때까지 기다림, 2일 경우 일시적으로 커넥션을 생성해서 사용
maxWait whenExhaustedAction 속성의 값이 1일 때 사용되는 대가시간을 지정, 단위 1/1000초, 0보다 작을 경우 무한대기
maxIdle: 사용되지 않고 풀에 저장될 수 있는 최대 커넥션의 갯수(음수일 경우 제한 없음)
minIdle: 사용되지 않고 풀에 저장될 수 있는 최소 커넥션의 갯수
testOnBorrow: true일 경우 커넥션 풀에서 커넥션을 가져올 때 커넥션의 유효성 여부를 검사
接続プールを使用するには、「猫」コンテナを設定します。
<Context>
<Resource
auth = "Container"
driverClassName = "oracle.jdbc.driver.OracleDriver"
url = "jdbc:oracle:thin:@localhost:1521:xe"
username = "test"
password = "1234"
name = "jdbc/Oracle11g"
type = "javax.sql.DataSource"
maxActive = "50"
maxWait = "1000"
/>
</Context>
Javaからデータベースに接続する方法
1.JDBCの使用(ConnectionPoolBeanの使用)
2.WASが提供する接続プールを使用する
Context 객체 생성
lookup 메서드를 이용해서 매칭되는 커넥션을 찾는다
DataSource.getConnection()을 이용해서 커넥션 확보
Reference
この問題について(Connection Pool), 我々は、より多くの情報をここで見つけました https://velog.io/@mandarinduk/Connection-Poolテキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol