RSS

Internet Object Caching [Squid]

Internet Object caching adalah suatu cara untuk menyimpan hasil permintaan internet-object. (seperti, data yang ada dari HTTP, FTP, dan ghoper) untuk membuat sistem dekat dengan permintaan daripada ke sumber aslinya.

Squid adalah high-performance proxy caching server, squid sudah mendukung HTTP, FTP, Gropher. Squid menangani semua permintaan tunggal, non-blocking, I/O-driven proses. Squid melakukan penyimpanan seperti hot object di RAM, menyimpan DNS lookups, non-blocking DNS lookups, dengan implementasi negative-caching jika terjadi kegagalan permintaan.

dalam kasus ini saya menggunakan ubuntu 8.4 server squid 2.6 dengan berbagai referensi yang saya dapat dari internet diantaranya, http://endyk.ppkia.ac.id,

http://aa.cakralintas.net.id.
saya mengucapkan terimasih.

saya berasumsi bahwa kita sudah melakukan instalasi squid dengan benar saya sarankan untuk filesystem yang digunakan adalah RaiserFS karena menurut refernsi yang saya dapat bahwa filesystem yang paling baik squid bekerja secara optimal adalah RaiserFS, Harddisk SCSI, Memory yang agak besar

kita masuk ke file konfigurasi squid (/etc/squid/squid.conf) lihat beberapa baris seperti dibawah ini:

http_port 3128 transparent
Option ini akan menentukan di port berapa squid akan berjalan (biasanya di port 3128 dan 8080)

cache_replacement_policy heap LFUDA
Pada saat sebuah objek tidak ditemukan pada cache, statement ini menggambarkan objek mana dari cache yang harus diganti. Setting optimum yang dapat diterapkan adalah heap LFUDA (Last Frequently Used with Dynamic Aging), karena objek yang paling sering diakses akan dipertahankan dengan memperhatikan ukuran file yang ada. Opsi ini akan menguntungkan kita untuk object berukuran besar, agar tidak selalu diambil ke situs yang bersangkutan. Setting tersebut berhubungan dengan setting “maximum_object_size”.

maximum_object_size 32 MB
Jika kita menggunakan heap LFUDA, kita harus menaikkan nilai pada setting maximum_object_size diatas 1024 KB (default). Saya rekomendasikan untuk tidak terlalu besar, karena lebih baik melakukan proses cache pada objek kecil namun sering diakses oleh user, daripada menyimpan objek besar namun hanya diakses oleh 4 orang user.

hosts_file /etc/hosts
Perlu penulisan host domain local untuk mempercepat akes ke local domain

maximum_object_size_in_memory 32 KB
Jika Anda ingin mendukung file berukuran besar dari memori, direkomendasikan untuk memberikan nilai rendah. File berukuran besar akan menghabiskan sumberdaya RAM Anda, dengan memberikan ukuran byte yang tepat akan dapat memudahkan situasi swap-in dan swap-out antara cache pada memori dan disk.

cache_dir aufs /cache/squid 2000 4 256
Rekomendasi yang sangat saya sarankan adalah menggunakan “aufs“, dengan format ini cache akan menggunakan format standar squid “ufs“, namun ditambahkan fasilitas async-I/O.
Ukuran cache pada server kami (storage size limit) adalah 10GB, dengan kedalaman folder sebanyak 16 dan 256 file cache untuk setiap folder.

cache_mem 64 MB
Squid akan mempergunakan maximum RAM untuk memberikan kepuasan pada request yang muncul setiap kali dari user. Ukuran 100 MB ini akan memberikan ruang pada memori fisik untuk terus menempatkannya pada memori sampai kondisi penuh. Jika kondisi telah mencapai puncaknya, maka squid akan memilih pada lokasi memori yang akan di-swap pada harddisk. Ukuran besar pada cache_mem akan mengurangi waktu ‘hold’ transit pada request, namun akan mengurangi memori komputer Anda. Jadi berhati-hatilah untuk memanfaatkannya. Maksimum saya sarankan dibawah 10% dari ukuran RAM Anda, karena operasional Squid lain juga membutuhkan bagian pada RAM.

cache_swap_low 90
Setting ini akan membuat masa untuk Squid melakukan pembersihan cache. Jika Anda memiliki cache pada harddisk berukuran 10 GB, pada penggunaan 9 GB squid akan melakukan pembersihan cache.

cache_swap_high 95
Jika setting ini akan membuat sisi agresif Squid akan bekerja. Begitu mencapai kondisi nilai 95% dari kapasitas, maka squid akan melakukan pembersihan cache. Disarankan untuk tidak disetting diatas 95%, karena Anda kecepatan Squid dalam melakukan proses dan banyaknya user akan dengan cepat membanjiri cache. Capaian 100% limit storage bisa muncul dengan cepat. Nilai 94% atau 95% adalah kondisi toleransi yang lebih baik selama ini dari pengalaman saya.

memory_pools off
Reservasi memory, pada saat rutinitas squid menurun, squid akan melepaskan object yang tersimpan pada RAM untuk diletakkan pada storage.

quick_abort_min 0 KB
Dengan setting 0KB ini akan memberikan optimasi squid lebih baik bagi user yang tiba-tiba membatalkan request. Dengan memberikan nilai 0KB akan menon-aktifkan pengiriman data pada jaringan yang akhirnya dapat mengoptimalkan bandwidth.

quick_abort_max 0 KB
User yang tidak sabar pada proses request akan dengan cepat membatalkan prosesnya, baik itu browsing maupun downloading. Dengan memberikan setting 0KB akan menghentikan Squid untuk tidak melanjutkan prosesnya pada situs yang diminta.

log_icp_queries off
Dengan kondisi “on” berarti Squid akan memberikan ekstra I/O threads untuk mengamati user yang sedang melakukan koneksi peer-to-peer.

client_db off
Squid dapat melakukan proses perhitungan statistik pada akses user. Layanan ini berguna bagi Anda yang ingin membatasi jumlah request pada klien yang melakukan request.

buffered_logs on
Buffer akan ditulis pada file Log, selain akan mempermudah akses berikutnya, juga memberikan optimasi kepada server squid lebih baik

half_closed_clients off
Squid akan menonatifkan koneksi pada klien yang lama tidak melakukan request.

Optimasinya dengan membuka file ‘ip_local_port_range‘ yang terletak pada folder ‘/proc/sys/net/ipv4‘. Tambahkan perintah ‘1024 65000‘.


oleh : http://mylo.stikom-bali.ac.id/?p=39

  • Digg
  • Del.icio.us
  • StumbleUpon
  • Reddit
  • RSS

1 komentar:

Anonim mengatakan...

Nice info gan, thanks

Posting Komentar