Database Connection Pooling

Halo teman-teman, disini pasti sudah terbiasa dong membuat aplikasi atau website yang dinamis menggunakan database ? Sebenarnya sudah teknik lama yang akan saya bahas ini yaitu Pooling Connection, tetapi alangkah baiknya saya tulis di blog saya agar saya pribadi tidak lupa, dan semoga bermanfaat untuk pengunjung yang belum mengetahui teknik Pooling database ini.

Jika kita memiliki aplikasi atau website yang menggunakan database sebagai tempat penyimpanan datanya, sudah otomatis kalian akan terus menjaga agar aplikasi tersebut tetap terkoneksi bukan ? apabila koneksinya terputus pastinya aplikasi kalian akan mengalami error connection yang menyebabkan aplikasi tidak bisa melakukan Read dan CRUD data.

Connection Pooling adalah suatu metode untuk menjaga supaya koneksi database terbuka sehingga dapat digunakan kembali, karena membuka koneksi ke database adalah proses yang “Mahal”, jadi pooling menjaga koneksi tetap aktif.

Keuntungan Connection Pooling :

  • Mempercepat response time (pada saat membuka koneksi)
  • Penggunaan kembali resource database
  • Penggunaan memory lebih hemat

Karena saya programmer python saya ingin memberikan contoh script database menggunakan pooling dan yang biasa dengan menggunakan koneksi database postgresql dan menggunakan library psycopg3

perbedaannya adalah jika pooling menggunakan :

import psycopg2
from psycopg2 import pool

Sedangkan koneksi biasa tanpa pooling hanya import psycopg2

Dan untuk baris koneksinya jika menggunakan pooling adalah

postgreSQL_pool = psycopg2.pool.SimpleConnectionPool(1, 20,user = “users”,
password = “password”,
host = “localhost”,
port = “5432”,
database = “dbname”)

Sedangkan tanpa pooling adalah

connection = psycopg2.connect(user = “users”,
password = “password”,
host = “localhost”,
port = “5432”,
database = “dbname”)

Selain itu saya juga menggunakan teknik pool untuk wordpress yang terhubung dengan MySQL, pada bagian wp-config.php kalian hanya tinggal ubah baris ini menjadi seperti dibawah ini :

define( ‘DB_HOST’, ‘localhost’ );

Tanpa Pool

define(‘DB_HOST’,’p:localhost:3306′);

Dengan Pool

Semoga catatan saya bermanfaat

Author: Hafid

Hi! My name is Hafid and I'm Indonesian DKI Jakarta. Here's my profile www.mhafid.com. In here, I share a lot of information about programming and linux there.

Leave a Reply

Your email address will not be published. Required fields are marked *