クラシックASPで実行されているアプリケーションがあり、接続プールを使用したいと思います。
アプリケーションは現在、これを接続文字列として使用しています。
"Provider=MSDASQL; Driver={SQL Server}; Server=db.example.com; Database=DBName; UID=Username; PWD=Password; ConnectionTimeout=15; CommandTimeout=120;"
ODBC接続プールperfmonを起動すると、プールに接続が表示されません。
私は読んだ この記事 これはHKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\W3SVC\ASP\Parametersに値を設定することを提案していますが、\ ASPキーがないため、IIS 6.0。
誰かがこの問題の経験がありますか?プーリングをオンに切り替える簡単な方法はありますか?
参照記事 (引用した記事の下部で参照)は、IIS 4.0以降の接続プールはデフォルトでオンになっています。したがって、次のことを行う必要はありません。レジストリを介して有効にします。
別から 記事 :
接続プーリングを最適に使用するには、いくつかのルールがあります。まず、接続を開き、作業を行ってから、接続を閉じます。接続を開いたままにしてさまざまな方法で渡すのではなく、必要に応じて(最適にはヒント1を適用して)、要求ごとに接続を複数回開いたり閉じたりしてもかまいません。次に、同じ接続文字列(および、統合認証を使用している場合は同じスレッドID)を使用します。ログインしたユーザーに基づいて接続文字列をカスタマイズするなど、同じ接続文字列を使用しない場合、接続プールによって提供されるのと同じ最適化値を取得できません。また、多数のユーザーになりすましているときに統合認証を使用すると、プーリングの効果も大幅に低下します。
必ず接続を閉じて、同じ接続文字列を再度使用することが、接続プールの鍵です。 IISは接続をキャッシュし、それを再利用します(基本的に)。
カウンタを起動してODBC接続プールで機能させるには、ODBCコントロールパネルでパフォーマンスモニターを有効にする必要があります: