Fungsi
dasar yang ketiga dan sangat penting dari suatu proxy server adalah caching.
Proxy server memiliki mekanisme penyimpanan obyek-obyek yang sudah pernah
diminta dari server-server di internet, biasa disebut caching. Karena itu,
proxy server yang juga melakukan proses caching juga biasa disebut cache
server.
Mekanisme caching
akan menyimpan obyek-obyek yang merupakan hasil permintaan dari dari para
pengguna, yang didapat dari internet. Karena proxy server bertindak sebagai
perantara, maka proxy server mendapatkan obyek-obyek tersebut lebih dahulu dari
sumbernya untuk ekmudian diteruskan kepada peminta yang sesungguhnya. Dalam
proses tersebut, proxy server juga sekaligus menyimpan obyek-obyek tersebut
untuk dirinya sendiri dalam ruang disk yang disediakan (cache).
Dengan
demikian, bila suatu saat ada pengguna yang meminta suatu layanan ke internet
yang mengandung obyek-obyek yang sama dengan yang sudah pernah diminta
sebelumnya, yaitu yang sudah ada dalam cache, maka proxy server akan dapat
langsung memberikan obyek dari cache yang diminta kepada pengguna, tanpa harus meminta
ulang ke server aslinya di internet. Bila permintaan tersebut tidak dapat
ditemukan dalam cache di proxy server, baru kemudian proxy server meneruskan
atau memintakannya ke server aslinya di internet.
Proses caching ini juga tidak kelihatan bagi
pengguna (transparan), karena bagi pengguna tidak tampak siapa sebenarnya yang
yang memberikan obyek yang dimintanya, apakah proxy server yang mengambil dari
cache-nya atau server asli di internet. Dari sisi pengguna, semua akan nampak
sebagai balasan langsung dari internet.
Salah satu proxy yang paling banyak dibahas
dan digunakan secara luas adalah HTTP proxy atau Web proxy. HTTP proxy server
merupakan proxy yang berdiri diantara alokasi web pengguna misalnya web browser
dan web server atau HTTP server.
Ketika pengguna
membuka browser dan mengetikkan URL, maka content yang diminta URL tersebut
dinamakan “Internet Object”. Pertama dia akan bertanya terlebih dahulu ke
sebuah DNS (Domain Name Server). DNS akan mencari IP Address dari URL tersebut
dalam databasenya dan memberi jawaban kepada browser tersebut kembali. Setelah
browser mendapatkan IP Address, maka ia akan membuka hubungan ke port http web
server tujuan. Web server akan mendengarkan adanya permintaan dari browser lalu
memberikan content yang diminta tersebut. Seteleh browser menerima content maka
hubungan dengan web server bias diputus. Content lalu ditampilkan dan disimpan
didalam hardisk.
Content yang
disimpan didalam hardisk biasanya disebut cache object yang natinya akan
digunakan jika pengguna kembali mengunjungi site yang sama, misalnya dengan
mengklik tombol back atau melihat history. Dalam kunjungan berikutnya, browser
akan memeriksa validasi content yang disimpannya, validasi ini dilakukan dengan
membandingkan header content yang ada pada cache object dengan yang ada pada
web server, jika contect belum expired (kadaluwarsa) maka contect tadi akan
ditampilkan kembali ke browser.
Cache object
yang disimpan dalam hardisk local ini hanya bias dipakai oleh pengguna
sendirian, tidak bias dibagi dengan pengguna yang lainnya, lain hal jika
content tersebut disimpan pada sebuah server, dimana semua computer terhubung
dengan server tersebut, maka cache object tersebut bias dipakai bersama-sama,
server tersebutlah yang nantinya akan dinamakan cache server atau proxy server.
Cache server
diletakkan pada titik diantara klien dan web server . Pada contoh diatas klien
akan meminta content dari suatu web server ke cache server, tidak langsung ke
web server tujuan. Cache server inilah yang bertanggung jawab untuk mendownload
content yang diminta dan memberikannya pada klien. Content tadi disimpan pada
hardsik local cache server. Lain waktu, ada klien yang meminta content yang
sama, maka cache server tidak perlu mengambil langsung dari server tujuan tapi
tinggal memberikan content yang sudah ada. Disinilah letak optimasi cache
server tersebut.
Ada dua jenis
metode caching, yaitu pasif dan aktif. Seperti telah kita ketahui, object yang
disimpan bisa saja mencapai expired, untuk memeriksanya dilakukan validasi.
Jika validasi ini dilakukan setelah ada permintaan dari klien, metode ini
disebut pasif. Pada caching aktif, cache server mengamati object dan pola
perubahannya. Misalkan pada sebuah object didapati setiap harinya berubah
setiap jam 12 siang dan pengguna biasanya membacanya jam 14, maka cache server
tanpa diminta klien akan memperbaharui object tersebut antara jam 12 dan 14
siang, dengan cara update otomatis ini waktu yang dibutuhkan pengguna untuk
mendapatkan object yang fresh akan semakin sedikit.
0 comments:
Post a Comment