.NET Webアプリは接続にODP.NETを使用し、データベースに接続するためのOracleユーザーは「webuserOracle」です。そのWebアプリは常に接続を閉じ、接続を破棄します。
ただし、Oracle 10gデータベースでは、Oracleユーザー「webuserOracle」のセッションとプロセスの値は、閉じたり停止したりしないため、常に高いことがわかります。
接続時間を最大5分に制限するために、「webuserOracle」のOracleプロファイルを設定することにしました。
CREATE PROFILE profile_webuserOracle LIMIT CONNECT_TIME 5;
ALTER USER webuserOracle PROFILE profile_webuserOracle;
質問:
Webアプリの場合、接続を5分に制限すると、ユーザーはWebアプリを2時間操作できるようになります。5分の制限は、データベースに接続するためにトリガーされたイベント(ボタンのクリックなど)のみです。Con.OpenとCon.Disposeの間で発生したすべてのことについて5分:
Dim con As OracleConnection = oraConexion()
con.Open()
''' There'll be a limit of 5 minutes to run the code here
con.Close()
con.Dispose()