Kau bisa bersembunyi dari kesalahanmu, tapi tidak dari penyesalanmu. Kau bisa bermain dengan dramamu, tapi tidak dengan karmamu.

  • About

    Seorang Teknisi Jaringan yang pernah berkecimpung di Internet Service Provider (ISP) dan akhirnya memutuskan diri untuk menjadi freelancer yang berdomisili di Solo, Surakarta Hadiningrat.

  • Services

    Melayani jasa pasang Internet berbasis Wireless maupun Fiber Optic, Jasa Pasang Tower/Pipa, Pointing Wireless, Setting Router, CCTV, Hotspot, Proxy, Web Server, Network Managed dan Monitoring

  • Contact

    Berbagai saran, kritikan, keluhan dan masukan akan sangat berarti bagi saya. Anda dapat menghubungi/whatsapp saya di nomor:08564-212-8686 atau melalui BBM:2128686

    Wednesday, April 20, 2011

    Berikut ini hanya copy paste untuk arsip pribadi,
    sumber : http://new813.wordpress.com/2009/09/05/meningkatkan-request-hit-squid/

    Setelah lama pake squid sebagai proxy server..terbersit pikiran ” Apakah Proxy Q udah menjalankan tugasnya dengan Baik yach???”setelah ngecek kinerja squid Q slama ini ternyata hanya mentok di kisaran hit 20%-25% huh sedih juga rasanya…padahal di polling forum linux.or.id ada yg bisa nyampek 70%…akhirnya ketemu juga tutorialnya yaitu proxy setan(serem juga yah namanya…)..bgini isi tutorialnya..
    Jika 1 hardisk 20 GB dibuat partisinya kira2 spt ini (ini preferensi pribadi
    berdasarkan eksperimen utk Squid saja lho). Silahkan dikomentari.


    /dev/hda1 1G /
    /dev/hda5 2G /var
    /dev/hda6 256M swap
    /dev/hda7 12G /cache
    /dev/hda8 sisanya /home


    Alasan kok /var, swap, dan /cache mengumpul ditengah, ya krn supaya ‘head’  hardisk efektif bergerak di track ‘average’ atau ditengah-tengah dg frekuensi akses tertinggi shg kira2 kalau didiagramkan distribusinya normal (Gaussian distribution atau bentuk bel). Swap hanya 256MB krn memori anda  toh 1GB (terus terang saya pribadi kalau bisa menghindari sebesar ini juga,  toh jika Squid sudah mempergunakan swap sebesar ini mestinya juga sudah melambat kok).Tapi /var agak besar supaya bisa menampung banyak log, termasuk log Squid yg kalau dirotasi sebulan sekali bisa berukuran sangat besar (dulu pernah log mesin  mencapai 1GB karena rotasinya per 3 bulan padahal bw-nya hanya 64kbps, tapi sekarang kalau tidak salah dirotasi per 2 minggu atau per bulan saja, semua ini tergantung intensitas akses pengguna dan bw yg dilanggani).

    Terus utk cache swap Squid itu sendiri kira2 70-80% dari ukuran partisinya  (12GB x 75% = 9GB). Berawal dari konfig spt ini mestinya parameter2 di squid.conf pengaruhnya sudah tidak setinggi jika cache swap atau hardisk anda terlalu penuh. Sekali lagi kita mau sekedar menghemat bw maka biasanya  cache sangat agresif dan aksesnya akan melambat jika hardisknya ‘under performance’. Spt di poll ini, harus berimbang antara kecepatan akses dan penghematan bw. Jelas dari sisi pengguna tidak akan  perduli anda mau menghemat bw atau tidak yg pasti bagi dia aksesnya harus cepat, gitu kan ya? Jadi utk 9GB cache swap jumlah L1 direktorinya 22.
    • aku pake di mesin proxy:
    Proc XEON 2.8GHz 512K HT
    HD IDE 40GB seagate 7200rpm
    HD SCSI 36GB seagate 10000rpm
    MB INTEL server HG2

    Hmmm, hardisk-nya tidak ada yg lebih kecil-kecil ya? Soalnya mending 9GB-an (kalau SCSI) 10K rpm kalikan 6 atau lebih daripada 2 yg besar-besar ini. Tapi cari hardisk kecil-kecil sekarang mestinya susah ya?, he he he

    • FC3 kernel 2.6.10 dengan patch reiser4.
    paket reiser4 dari namesys.com
    Sip, semoga opsi-opsi kompilasi di kernel-nya sudah optimum semua, alias modul yg tidak diperlukan dihilangkan saja, biar gesit (pengalaman pribadi kernel yg baik ukurannya kira-kira di bawah 1 MB tanpa mengorbankan kemampuannya).

    • semua partisi system di HD IDE, dan HD SCSI aku jadikan satu partisi untuk /cachez
    dengan alokasi 28GB memakai filesystem reiser4 metode aufs (squid).

    Jangan lupa opsi mount (di fstab) ditambahkan noatime dan notail (kalau perlu lebih aman sekalian (noexec dan tidak user mountable). Maksud anda dijadikan 1 partisi itu di-RAID mode 0-kan (striping)?? Saran saya malah jangan, jadi biarkan spindle per drive bergerak bebas mandiri tak bergantung 1 dg lainnya. Jadi mending 2 direktori saja dg mekanisme least-load atau round-robin bisa dicobakan dan dilihat efektivitasnya.Silahkan dilihat alasannya di milisnya squid-cache.org, banyak yg sudah membahas kok. Pemakaian memorinya juga harus diamati terus soalnya jika, sekali lagi, mesin anda sudah mulai swap ke hardisk ya sama saja alias kembali menjadi pelan. Intinya bgmana menghindari swap memori dipergunakan (idealnya server yg super cepat itu tidak memiliki swap memori berarti memori fisiknya harus super besar juga).

    • cache_store_log /dev/null
    cache_store_log none
    Kalau yg ini saya yakin benar kok (spt yg dikomentari Mas Firewaxx).
    Refresh_pattern diperbaiki saja krn bekerja mulai yg paling atas baru ke bawah.
    refresh_pattern .gif 4320 50% 43200
    refresh_pattern .jpg 4320 50% 43200
    refresh_pattern .tif 4320 50% 43200
    refresh_pattern ^http://www.friendster.com/.* 720 100% 4320
    refresh_pattern ^http://mail.yahoo.com/.* 720 100% 4320
    refresh_pattern ^http://mail1.plasa.com/.* 720 100% 4320
    refresh_pattern ^http://*.yahoo.*/.* 720 100% 4320
    refresh_pattern ^http://*.friendster.*/.* 720 100% 4320
    refresh_pattern ^http://www.yahoo.com/.* 720 100% 4320
    refresh_pattern ^ftp: 10080 95% 241920 reload-into-ims override-lastmod
    refresh_pattern . 180 95% 120960 reload-into-ims override-lastmod


    Komentar: sebenarnya baris paling bawah itu umum artinya selain yg di atas-nya akan kena setting ini. Yg mjd pertanyaan saya kok file image diberi setting yg berbeda? Utk email yg berbasis web mungkin ada alasannya supaya lebih cepat divalidasi lagi. Saran saya dicoba dulu 2 baris yg terakhir saja, baru jika dirasa ada kebutuhan lain baru pelan-pelan ditambahkan baris-baris sebelumnya. Jadi refresh_pattern hanya ini saja:


    refresh_pattern ^ftp: 10080 95% 241920 reload-into-ims override-lastmod
    refresh_pattern . 180 95% 120960 reload-into-ims override-lastmod

    ACL saya tinggalkan apa adanya krn ini spesifik kebutuhan anda. Utk bloking berbasis url_regex, ya kalau bisa Squid dikompilasi ulang dg opsi gnuregex supaya lebih efisien. Lihat posting sebelumnya. Paling tidak bisa diringkas lagi mjd:

    http_access deny porno !noporno

    artinya kita blok semua kata yg ada di file porno kecuali semua kata yg ada di file noporno (!=kecuali).

    • maximum_object_size 10240 KB

    Lha ini kok ukuran object yg bisa disimpan Squid hanya 10MB saja??
    Dinaikkan saja mjd mungkin 128 MB?
    maximum_object_size 128 MB
    • minimum_object_size 4 KB
    Dihilangkan saja, biarkan Squid menyimpan object terkecil pun tidak ada masalah kok.
    • logfile_rotate 0
    Dibuat logfile_rotate 1 saja, siapa tahu anda butuh melihat statistik sebelumnya.
    • forwarded_for on
    Biasanya ini di-off-kan saja supaya anonimity bisa terjaga (tapi jika memang diperlukan yg tidak apa-apa).

    ####################################


    Banyak faktor yg membuat Squid ‘overloaded’ shg saat diakses malah membuat lebih pelan:

    1. Cache di hardisk terlalu besar shg pemakaian memori terlalu besar (dan mungkin sudah mulai swap ke hardisk, silahkan dilihat via top dg rumus swap yg baik 25%an dari memori fisik, jika lebih biasanya akan pelan). Ingat per 1 GB cache di hardisk akan memakai 10MB memori lho, belum yg lain2.
    2. Hardisk terlalu pelan (krn cache terlalu besar itu tadi), shg saat mencari object lama menemukannya. Berapa besar cache anda di hardisk?, saya menduga mesti lebih dari 10an GB ya??
    3. Browser/klien yg berusaha memanfaatkan Squid terlalu banyak shg antrian yg berebut utk minta layanan Squid terlalu panjang walaupun toh akhirnya akan mengakses situs yg belum pernah dikunjungi sebelumnya (yg kalau Squid-nya pintar bisa membedakan saat akan diantrikan, mestinya?). Silahkan dilihat stats via cachemgr.cgi, saya ada kecurigaan di i/o queue-nya sudah terlalu panjang.
    4. Mesin server terlalu banyak melayani user atau utk layanan yg lain. Dari pengalaman, mesin dg 256MB dan beberapa layanan, mail server agent, web server dan Squid dg cache di hardisk 6GB plus sekitar 10 PC klien saja sudah lumayan mepet kinerjanya kok. Perlu diingat Squid butuh memori yg besar tidak prosesor yg cepat plus hardisk yg super cepat. Ini belum ditambahi layanan yg lain-lain
    lho. Intinya idealnya utk Squid mesin server seharusnya terdedikasi (layanannya hanya Squid). Saran utk mencoba mengidentifikasi kelambatan Squid krn defisiensi memori.

    1. Ganti memori tambahan, minimal 256MB dan dicobakan di mesin anda. Jika ternyata tambah cepat berarti ya ‘obat’nya ini yg berarti sudah saatnya meng’upgrade’ mesin anda.
    2. Squid saat di-reconfigure (squid -k reconfigure) mjd lebih cepat kembali.
    3. Terjadi perbedaan kecepatan akses saat jumlah browser yg terbuka berbeda, tetapi ini bisa juga disebabkan pipa yg anda langgani (bandwidth) sudah diambang batas kelayakan.
    Saran utk mencoba mengidenfikasi kelambatan Squid krn kinerja hardisk yg kurang baik.

    1. LED indikator hardisk ‘nyaris’ tak henti-hentinya hidup (bukan nyaris tak terdengar ya?), krn selalu terjadi proses i/o ke sana. Inilah yg membedakan hardisk dg cache h/w yg kecil dan besar (dan yg membedakan harganya juga). Carilah hardisk yg berkinerja agak hebat (cache 4MB, seektime 8ms, rpm 10k, idealnya) dan jangan terlalu besar ukurannya (jadi kecil-kecil tapi banyak). Tapi itu tadi, sulit sekarang mencari hardisk ukuran kecil di pasaran (kalau tidak salah utk SCSI UW2-160-an, 9.1GBan masih ada).
    2. Coba ditambahkan (atau dipinjamkan) hardisk 1 lagi dan direktori cache anda dibagi ke hardisk yg baru ini dg L1 direktorinya dibagi 2 juga (dg ukuran separuhnya juga). Jadi misalnya awal /cache 12000 28 256 dibagi mjd 2, /cache1 6000 14 256 dan /cache2 6000 14 256.
    Begitu dan jangan lupa jangan pernah memakai semuanya spt ukuran partisinya (ingat idealnya antara 70%an kapasitas partisi maksimalnya), supaya saat akan menulisi hardisk, tempat kosongnya lebih mudah ditemukan (kalau sudah terlalu penuh akan sulit dan lama menemukan dan boleh jadi terfragmentasi tempatnya).

    Saran terpenting:
    Squid agresif itu utk kondisi di Indonesia menurut saya sangat cocok (mungkin utk negara maju malah diprotes ya, krn bw sudah sangat murah dan hr tenaga teknisnya utk ngoprek terlalu mahal). Tetapi yg perlu diingat adalah semuanya itu ada batasnya ibarat sepeda motor itu kalau di’gas’ penuh mendadak terkadang malah mati mesinnya. Jadi agresif yg agresif tapi jangan terlalu ambisius dan harus optimal sesuai kemampuan baik mesin maupun bw yg dilanggani.

    ########################################

    • /cache 45000 16 256
    45GB adl suatu ukuran yg ‘rruuarr biasa’ besarnya utk single spindle. Pengalaman saya selama kutak-katik Squid yg terbesar saya pernah tahu utk hardisk tunggal (single spindle) itu hanya sekitar 16an GB (80% hdd 20GB). Jadi saya jadi yakin sekarang bottleneck Squid anda ada di sini. Belum lagi ditambah swap memori yg utk indeks object Squid saja sudah 450an MB, belum yg lain-lain (kalau tidak salah memori fisik anda 256MB ya?). Jadi jelas swap memori anda mestinya juga sudah lumayan besar shg semakin memperparah kondisi mesin server ini. Sekali lagi contoh-contoh konfigurasi mesin (dan skalabilitasnya) dari ircache rata2 memori 512 MB s/d 2 GB dg minimal 6 hardisk SCSI (kalau tidak salah per cache direktori 6GB-an krn dari ukuran hardisk 9GB), sekedar gambaran saja. Jadi di sini tujuan menghemat bandwidth tercapai tetapi tujuan mempercepat akses internet tidak tercapai.
    • b/w nya terlalu kecil dimana 96 kbps yg aku punya untuk melayani 20 pc
    Secara teoritis 96kbps/20pc = 4.8kbps/pc dan menurut suatu survei kepuasan pengguna akses internet yg layak itu hanya membutuhkan kecepatan akses minimal 5kbps kontinu (yg setiap saat diperoleh secara terus menerus dan tidak pernah kurang). Dibantu Squid dg hit rate 50% maka angka 4.8kbps ini akan naik mjd 9.6an kbps saat tjd lonjakan permintaan (burstiness rate). Belum lagi jika perilaku per user yg jarang download file berukuran besar dan hanya mengambil halaman2 web setelah itu membaca (berhenti download), katakanlah dg suatu nilai kebolehjadian 50%, maka kecepatan akses akan naik lagi mjd 19.2an kbps. Memang inilah yg paling sering kita alami baik di tingkat rumahan atau komersial (warnet) dan inilah ukuran kelayakan di Indonesia (atau strategi penghematan perusahan2 penyedia jasa internet ya??). Saya yakin bw yg kita miliki tidak akan cukup jika semua pengakses internet men-download file yg berukuran besar pada saat yg bersamaan dalam periode yg panjang. Baik memang sebenarnya Squid sudah mencadangkan 30720KB memori tetapi ternyata kebutuhannya hingga 32510KB (yg sudah melewati cadangan itu tadi) sehingga boleh jadi memori swap ke hardisk sudah mulai aktif (jika ternyata memori totalnya tidak cukup). Silahkan dilihat ulang via top. Tetapi jika ternyata memori totalnya (fisik) masih cukup dan belum swap Squid akan terus memperbesar ‘cadangan’ ini (total space in the arena) hingga semua kebutuhan Squid terpenuhi (ingat 10MB per 1GB cache di hardisk ditambah yg lain2). Ini efek jika opsi memory_pools off (jika di-on-kan batasannya jadi kaku dan terkadang kita tidak tahu seberapa sih harus dicadangkan, dan ruginya sudah dicadangkan ttp belum tentu dibutuhkan krn tidak tahu saja berapa yg harus dicadangkan itu tadi).

    Solusi paling sederhana stl pengamatan adalah dg mengurangi ruang cache di hardisk, misalnya dikurangi per 2 GB (mis. dari awal 12GB jadi 10GB terus diamati lagi, tentunya L1 direktori juga disesuaikan lho), dan seterusnya sampai Squid sudah tidak mengaktifkan memori swap (atau user sudah tidak bisa membedakan kelambatan yg terjadi walaupun sudah swap sedikit). Solusi berikutnya ya dg mengaktifkan batasan memori yg akan dipakai oleh Squid via memory_pools on dan memory_pools_limit xx MB. XX inilah yg agak sulit ditentukan krn kebutuhan Squid yg dinamis ini (tapi bisa dikira-kira dan didekati kok). Jadi misalnya Squid dg
    cache swap 12 GB butuh memori 190-an MB tapi kita batasi hanya 80 MB, ya boleh jadi cache swap maksimal akan terisi hanya 6an GB krn utk indeks saja kira-kira bisa hanya separuhnya. Jadi tidak terus kita asal punya hardisk besar tanpa perhitungan resource yg dimiliki langsung dipakai semuanya. Tapi metode ‘trial and error’ memang pendekatan yg tercepat sambil mencari pengalaman mengamati dan men’tuning’ Squid lebih jauh. Rumus umum dan kasar sbg pendekatan awal biasanya spt di bawah:

    mtot x 25% / 10 x 1 GB= ruang cache swap di hardisk awal dg mtot=memori fisik total.
    Contoh jika memori fisik 512MB:
    512MB x 25% / 10 x 1 GB = 12.5GB ruang cache swap di hardisk.
    Tapi ini rumusan yg aman dan mesin Squid terdedikasi. Ada yg lebih ekstrim dan berani menaikkan hingga 16an GB dan mungkin memori swap ke hardisk sudah aktif tetapi kecepatan akses Squid masih terjaga (mungkin jumlah kliennya sedikit dan hardisknya cepat) ya tidak apa-apa. Mestinya angka-angka ini mjd lebih kecil jika mesin dipakai bersama utk layanan yg lain. Sekali lagi kondisi dan kebutuhan berbeda-beda belum sifat kedinamisan si Squid itu sendiri. Kalau tidak salah antar Squid yg berbeda versi saja sifat2-nya juga berbeda walaupun mungkin sedikit saja perbedaannya.

    Pertama yg harus kita pahami adalah:
    1. Tidak semua halaman web bisa disimpan (di’cache’) Squid
    2. Banyak situs yg memang berusaha halaman2 mereka tidak bisa di’cache’ krn ada keperluan utk statistik mereka (iklan, visit/hit rate, dll) via ‘pragma no-cache’ atau metode yg lain 
    3. Ingat Squid memang tidak akan menyimpan alamat url selama ada karakter ? atau cgi-bin krn ini secara mendasar tidak diijinkan disimpan (masalah keamanan), belum yg lain-lain.
    4. Halaman web bisa terdiri atas banyak object, mungkin ada sebagian yg
    memang ‘dinamis’ alias setiap saat berubah hingga tidak bisa disimpan. Jadi memang di internet itu selalu terjadi ‘tarik-ulur’ antara yg mau menghemat dg yg tidak mau dihemat, yg jahat dg yg baik, yg konstruktif dg yg destruktif, dll. Jika anda mau jadi ‘Squid ekstrimis’, ya pakai saja off-line mode. Artinya Squid tidak akan perduli object2-nya valid atau tidak, kedaluarsa atau tidak, semuanya akan dipaksa disimpan (sama kalau di browser IE mode offline). Saya jamin kecepatan Squid anda akan tinggi dg hit rate tinggi dan bw anda sangat irit pula tetapi paling sebentar saja akan diprotes oleh user2 anda, Memang sudah ada beberapa usaha supaya ‘pragma no-cache’ ini tidak mdj halangan halaman2 utk di’cache’ kan dg cara halamannya di’rewrite’ (tulis ulang) dan menghilangkan opsi di atas tsb. Tetapi dari sisi legalitasnya bagaimana? Ada yg mengatakan, lha saya yg mengakses dan membutuhkan kok tidak boleh di’cache’? Tapi dari sisi penyedianya mengatakan, lha kalau tidak mau mengikuti yg saya inginkan ya jangan mengakses situs saya kan?? Jadi artinya di sini jika sudah diberi ‘pagar’ atau ‘pengumuman’ ya mestinya harus diikuti aturannya, jangan terus malah dilanggar Ini opsi-2 konfigurasi utk kompilasi Squid khusus utk Linux.
    ./configure
    –enable-gnuregex
    –enable-async-io=24
    –with-aufs-threads=24
    –with-pthreads
    –with-aio
    –with-dl
    –enable-storeio=aufs
    –enable-removal-policies=heap
    –enable-icmp
    –enable-delay-pools
    –disable-wccp
    –enable-snmp
    –enable-cache-digests
    –enable-default-err-languages=English
    –enable-err-languages=English
    –enable-linux-netfilter
    –disable-ident-lookups
    –disable-hostname-checks
    –enable-underscores
    Silahkan disesuaikan

    ## Jika ada beberapa situs terdekat yg mungkin hanya 1 hop, di-by pass saja supaya kerja Squid benar-benar utk yg jaraknya jauh

    1. Situs-situs yg membutuhkan login di-’direct’ via always_direct dan jangan disimpan via hierarchy_stoplist cgi-bin ? namasitus dan acl QUERY urlpath_regex cgi-bin ? namasitus. Diusahakan namasitus sangat spesific soalnya jika misalnya hanya yahoo.com ya semua yahoo.com akan kena alias mem-’by-pass’ Squid. Jadi bisa misalnya mail.yahoo.com saja.
    2. Via hierarchy_stoplist cgi-bin ? namasitus dan acl QUERY urlpath_regex cgi-bin ? jika alamat mengandung misalnya halaman2 java applet/script ekstensi .awt, .js, dst-nya.
    3. Refresh_pattern minimalnya dikurangi, sekali lagi konfigurasi 180 (atau 3 jam) bagi beberapa keperluan tidak cocok. Silahkan dicoba misalnya hanya 10 menitan dan diamati.
    4. Terakhir, mungkin ie_refresh harus diaktifkan dan biasanya dg menekan tombol refresh/reload, Squid akan ‘terpaksa’ memvalidasi halaman tersebut (bisa beberapa kali refresh/reload terkadang utk proses cek validasi ini)
    hierarchy_stoplist cgi-bin ? localhost domain-anda.com isp-anda.com domainku.web.id
    acl QUERY urlpath_regex cgi-bin ? localhost domain-anda.com isp-anda.com domainku.web.id
    no_cache deny QUERY


    ## Dari pengalaman 6 MB akan lebih cepat dan biarkan Squid bekerja lebih keraslagi jika cache_mem diperbesar efeknya adalah pengaksesan obyek lebih lembam (atau pelan dalam pencarian di mesin lokal, tetapi begitu ketemu ya cepat aksesnya) dan dg cache_mem 6 MB kita rasakan paling responsif. Dari banyak forum dan user group rumus umum cache_mem adalah 1/3 atau 1/4 dari total memori fisik (benar ya?). Tapi default 8 MB saya pikir sudah pas dan disarankan oleh si Henrik Nordstrom.Kenapa kok batasan minimum 98 dan maksimum 99 alasannya supaya proses store and purge obyek tidak sporadis jalannya.
    cache_mem 6 MB
    cache_swap_low 98
    cache_swap_high 99

    ## Maksimum obyek di hardisk dan di memori diupayakan lebih besar shg byte hit lebih tinggi (bisa dinaikkan lagi jika hardisk berkecepatan tinggi dan jumlahnya banyak dg memori yg lebih besar pula)
    maximum_object_size 128 MB
    maximum_object_size_in_memory 32 KB

    ## Jika memori 512 MB atau lebih besar silahkan cache diperbesar
    ipcache_size 2048
    ipcache_low 98
    ipcache_high 99

    ## Utk heap replacement saya memakai LFUDA utk cache hardisk dan GDSF utk cache memori dg alasan di hardisk diprioritaskan obyek yg ukuran besar-besar dan di memori obyek yg ukurannya kecil-kecil utk disimpan cache_replacement_policy heap LFUDA
    memory_replacement_policy heap GDSF

    ## Idealnya ruang di hardisk yg anda pakai hanya sekitar 70% dari total krn semakin penuh Squid akan semakin pelan mencari tempat kosong, mis. utk cache 1 GB maka yg dipakai hanya 700MB (jangan 1GB dipakai semuanya). Jangan lupa hanya 1 direktori per drive krn faktor penghambat adalah kecepatan spindle hardisk lho, bukan terus dg memperbanyak direktori pada 1 hd akan mempercepat (hd orde milidetik, memori orde nanodetik). Jadi mending hardisknya banyak tapi ukurannya kecil-kecil daripada hanya 1 berukuran besar. Terus jika OS-nya Linux pakailah FS-nya Reiser (versi 4 tercepat) dg metode akses aufs. Diskd optimal di FreeBSD tetapi tidak di Linux lho. Jangan lupa di partisi tsb noatime dan notail diaktifkan spy tidak menambah ekstra write saat menulis atau membaca. Intinya hardisk adalah faktor penghambat terbesar di Squid.

    ## saran kira2 70% dari 16GB
    cache_dir aufs /cachez 12000 28 256
    atau (utk ruang 4GB-an per hardisk)
    cache_dir aufs /cachehardisk1 3000 8 256
    cache_dir aufs /cachehardisk2 3000 8 256
    cache_dir aufs /cachehardisk3 3000 8 256
    cache_dir aufs /cachehardisk4 3000 8 256
    atau minimal di bawah ini supaya modifikasi tidak terlalu jauh
    cache_dir diskd /cachez 12000 28 256 Q1=72 Q2=88

    ## Log utk info yg vital saja dan diusahakan file-file log ada di hardisk tersendiri spy tidak mempengaruhi kecepatan direktori cache utamanya
    log_fqdn off
    log_icp_queries off
    cache_log none
    cache_store_log none

    ## Dg ‘menipu’ dan memaksa sedikit supaya akses obyek lebih intensif di lokal Squid dan waktu simpan ditambah sebelum proses validasi terjadi (mis. validasi terjadi per 3 jam dg penyimpanan obyek terlama 3 bulan, utk ftp bisa lebih lama lagi)

    refresh_pattern ^ftp: 10080 95% 241920 reload-into-ims override-lastmod
    refresh_pattern . 180 95% 120960 reload-into-ims override-lastmod

    ## Toleransi aborting dihilangkan saja
    quick_abort_min 0
    quick_abort_max 0
    quick_abort_pct 98

    ## Mematikan dan merekonfigurasi Squid jangan terlalu cepat krn bisa mengakibatkan integritas file kacau
    shutdown_lifetime 10 seconds

    ## tidak perlu reservasi memori
    memory_pools off

    ## Penting utk relasi dg sibling dg mengukur respons-nya via ICP dan ICMP (tapi ada isp yg tidak mengijinkan lho)

    icp_hit_stale on
    query_icmp on

    ## Penting utk meningkatkan refresh pattern lebih lanjut
    reload_into_ims on
    pipeline_prefetch on
    vary_ignore_expire on

    ## Sekali lagi Squid diperlukan utk mengambil yg jaraknya jauh, jarak dekat langsung saja
    acl local-dst dst semuaalamatlokal semuaalamatipygdekat
    acl local-domain dstdomain localhost domain-anda.com isp-anda.com domainku.web.id
    always_direct allow localhost local-dst local-domain
    always_direct deny all

    ## Tidak begitu diperlukan
    ##ie_refresh on

    Contoh Konfigurasi :

    # --------------------------
    # LOGFILE PATHNAMES AND CACHE DIRECTORIES
    # --------------------------
    cache_dir diskd /cache/squid 1000 8 256 # << Sesuaikan dengan kebutuhan anda
    access_log /cache/access.log squid
    cache_log /cache/cache.log
    log_fqdn off
    buffered_logs off

    # OPTIONS FOR TUNING THE CACHE
    # —————————————————————————–
    refresh_pattern /.gif 4320 50% 43200
    refresh_pattern /.jpg 4320 50% 43200
    refresh_pattern /.jpeg 4320 50% 43200
    refresh_pattern /.png 4320 50% 43200
    refresh_pattern ^http://www.friendster.com/.* 720 100% 10080
    refresh_pattern ^http://mail.yahoo.com/.* 720 100% 10080
    refresh_pattern ^http://*.yahoo.*/.* 720 100% 7200
    refresh_pattern ^http://*.google.com/.* 720 100% 10080
    refresh_pattern ^http://www.telkomspeedy.com/.* 720 100% 28800
    refresh_pattern ^http://*.blogsome.com/.* 720 80% 10080
    refresh_pattern ^http://*.wordpress.com/.* 720 80% 10080
    refresh-pattern ^http://detik.com/.* 720 90% 2880
    refresh_pattern ^ftp: 14400 90% 43200 reload-into-ims
    refresh_pattern ^gopher: 1440 0% 1440
    refresh_pattern . 0 20% 4320 reload-into-ims

    quick_abort_min 0 KB
    quick_abort_max 0 KB
    quick_abort_pct 95

    # ACCESS CONTROLS
    # —————————————————————————–
    acl my_network src 192.168.1.0/24
    acl SSL_ports port 443 563
    #acl Safe_ports port 280 # http-mgmt
    acl Safe_ports port 443 563 # https
    #acl Safe_ports port 488 # gss-http
    #acl Safe_ports port 591 # filemaker
    #acl Safe_ports port 777 # multiling http
    http_access allow manager localhost my_network
    http_access allow my_network

    acl download url_regex -i .mp3
    acl download url_regex -i .3gp
    acl download url_regex -i .avi
    acl download url_regex -i .mpg
    acl download url_regex -i .mpeg
    acl download url_regex -i .wav
    acl download url_regex -i .flv
    acl download url_regex -i .swf

    # DELAY POOL PARAMETERS (all require DELAY_POOLS compilation option)
    # —————————————————————————–
    delay_pools 2
    delay_class 1 3
    delay_parameters 1 -1/-1 -1/-1 8000/8000
    delay_access 1 allow my_network download
    delay_access 1 deny all
    delay_class 2 2
    delay_parameters 2 -1/-1 -1/-1
    delay_access 2 allow my_network
    delay_access 2 deny all

    # ADMINISTRATIVE PARAMETERS
    # —————————————————————————–
    cache_effective_user squid

    # MISCELLANEOUS
    # —————————————————————————–
    logfile_rotate 5
    reload_into_ims on
    store_dir_select_algorithm round-robin

    # ADMINISTRATIVE PARAMETERS
    # —————————————————————————–
    cache_mgr youremail@host.com
    visible_hostname localhost

    0 comments:

    Post a Comment