Common Gateway Interface (CGI) merupakan salah satu protokol gateway yang pertama diciptakan, dan tersukses untuk menghubungkan web server dan aplikasi. CGI adalah aplikasi eksternal standard yang menghubungkannya dengan informasi server, seperti HTTP atau web server.
CARA KERJA CGI - Perhatikan gambar di bawah ini :
- Aplikasi CGI yang berupa file skrip, diletakkan di lokasi direktori yang dapat diakses oleh web server.
- Jika ada permintaan terhadap aplikasi dari klien, web server akan membaca skrip dan menjalankan program.
- Web server memberi program ini masukan (termasuk masukan yang diberikan klien) dari masukan standar (stdin) serta beberapa environment variable.
-
Web server menunggu program berjalan hingga selesai lalu menangkap keluaran standar program (stdout), keluaran inilah yang diberikan kepada klien.
KELEBIHAN CGI
- Kelebihan yang dimiliki CGI antara lain :
Skrip CGI dapat ditulis dalam bahasa apa saja, namun barangkali sekitar 90% program CGI yang ada di tulis dalam Perl - Protokol CGI yang sederhana
- Kefasihan Perl dalam mengolah teks, menjadikan menulis sebuah program CGI cukup mudah dan cepat.
- Meski tertua hingga saat ini menurut survey dari Netcraft sekitar 70% aplikasi di web masih menggunakan CGI. Ini berarti, lebih dari separuh situs Web dinamik yang ada dibangun dengan CGI.
KELEMAHAN CGI
Salah satu kelemahannya ialah kecepatan yang rendah. Untuk menghasilkan keluaran program CGI, overhead yang harus ditempuh cukup besar, Dalam kasus CGI Perl, prosesnya sebagai berikut :
- Web server terlebih dahulu akan menciptakan sebuah proses baru dan menjalankan interpreter Perl.
- Perl kemudian mengkompilasi script CGI tersebut, baru kemudian menjalankan skrip.
Keseluruhan siklus ini terjadi untuk setiap request. Dengan kata lain, terlalu banyak waktu yang dibuang untuk menciptakan proses dan tidak ada cache skrip yang telah dikompilasi.
Namun demikian, mungkin ini tidak lagi menjadi kendala di saat teknologi hardware untuk server sudah sedemikian maju; kecepata prosesor saat ini sudah cukup tinggi. Jika situs web menerima kurang dari sepuluh hingga dua puluh ribu hit CGI per hari, rata-rata mesin web server UNIX yang ada sekarang ini mampu menanganinya dengan baik.
Semoga Bermanfaat.