sql >> データベース >  >> RDS >> Oracle

Oracle:プールされていない接続とDRCPの違い

    Web層および中間層のアプリケーションには通常、多くの実行スレッドがあり、RDBMSリソースを使用して順番に実行されます。現在、マルチスレッドアプリケーションはデータベースへの接続を効率的に共有できるため、優れた中間層のスケーラビリティが可能になります。 Oracle 11g以降、アプリケーション開発者、管理者、およびDBAは、データベース常駐接続プーリングを使用して、中間層システムにまたがることができるマルチプロセスおよびマルチスレッドアプリケーション間で接続を共有することにより、このようなスケーラビリティを実現できます。

    DRCP アプリケーションがデータベース接続を取得し、比較的短時間で処理してから解放する、一般的なWebアプリケーションの使用シナリオ用にデータベースサーバーに接続プールを提供します。 DRCPは「専用」サーバーをプールします。プールされたサーバーは、サーバーのフォアグラウンドプロセスとデータベースセッションを組み合わせたものに相当します。

    DRCPは、中間層プロセスのスレッド間で接続を共有する中間層接続プールを補完します。さらに、DRCPを使用すると、同じ中間層ホスト上の中間層プロセス間、さらには中間層ホスト間でデータベース接続を共有できます。これにより、多数のクライアント接続をサポートするために必要な主要なデータベースリソースが大幅に削減され、データベース層のメモリフットプリントが削減され、中間層とデータベース層の両方のスケーラビリティが向上します。すぐに利用できるサーバーのプールがあることには、クライアント接続の作成と切断のコストを削減するという追加の利点もあります。

    DRCPは、マルチプロセスのシングルスレッドアプリケーションサーバー( PHP / Apache など)を備えたアーキテクチャに特に関係があります。 )中間層の接続プールを実行できない。データベースは、DRCPとの数万の同時接続に拡張できます。



    1. MySQL –影響を受ける行の総数に対するFOUND_ROWS()関数

    2. connection.query(...)。thenは関数ではありません

    3. mysqlをデータソースとして登録するwildfly

    4. columnA、ColumnB、またはColumnCの更新時にトリガーを起動します