Apa itu PGPool-II ?

  PGPool II ini termasuk salah satu tools yang saya pergunakan di dalam arsitekture applikasi saya. Untuk performancenya, saya merasa cukup puas.  Berikut saya kutip penjelasan dari wikipedia mengenai pgpool-II ini.

PGPool-II ini adalah middleware yang bekerja diantara PostgreSQL server dan Applikasi Client. Dia memiliki kemampuan sebagai berikut :

  • Connection Pooling :
    • pgpool-II akan membuat sekumpulan koneksi ke database PostgreSQL dan tidak akan memutus / mematikan koneksi itu. Apabila applikasi anda ingin berhubungan dengan database PostgreSQL, harus melalui pgpool-II ini. Jumlah koneksi yang dibuat oleh pgpool dapat di tentukan jumlahnya, dan akan selalu tetap jumlahnya sampai pgpool-II di restart. Koneksi yang ada ini dapat dipergunakan berulang ulang pada semua koneksi client yang terhubung ke pgpool-II. Hal ini akan mengurangi pemakaian resource yang berlebih dari proses terciptanya koneksi yang berulang ulang dan meningkatkan beban data yang lewat di dalam sistem secara keseluruhan.
  • Replication :
    • pgpool-II dapat berperan sebagai alat untuk replikasi data memanfaatkan beberapa server PostgreSQL untuk menciptakan backup data secara realtime. Sehingga database akan selalu berfungsi jika terjadi kerusakan data.
  • Load Balance
    • Jika database ter-replikasi, perintah SELECT pada server manapun akan memiliki hasil yang sama. pgpool-II akan memanfaatkan kemampuan replikasinya untuk menguraki beban dari setiap server dengan cara menyebar perintah SELECT ke beberapa servernya, hal ini akan meningkatkan kemampuan sistem.  Load Balancing ini akan berfungsi dengan baik apabila terdapat banyak user yang mengeksekusi perintah sql secara bersamaan.
  • Limiting Exceeding Connections :
    • Ada pembatasan dalam membuat jumlah maksimal kumpulan koneksi ke database PostgreSQL.  Meningkatkan jumlah maksimal koneksi ini akan berbanding lurus dengan besarnya pemakaian resource dan berpengaruh terhadap kemampuan sistem. Apabila jumlah koneksi yang ada telah dipergunakan semuanya, maka koneksi baru yang ada akan masuk dalam daftar antrian.
  • Parallel Query :
    • Fasilitas ini akan memecah perintah SELECT agar dapat di eksekusi ke semua server replikasi sehingga akan mempercepat waktu pemrosesan data. Parallel Query ini baik untuk mencari data dalam skala besar.
Itu adalah kemampuan yang dimiliki oleh pgpool-II. Saya sendiri belum bisa memanfaatkan semuanya. Saat ini hanya Connection-Pooling saja yang dapat saya pergunakan. Untuk yang lainnya masih belum.
Bagaimana dengan anda ?
Enhanced by Zemanta