[Çözüldü] Squid Website Accelerator hakkında

Başlatan ahmetkanar54, 13 Şubat 2013 - 22:29:13

« önceki - sonraki »

0 Üyeler ve 3 Ziyaretçi konuyu incelemekte.

ahmetkanar54

herkese merhaba bende debian 6 sunucu var squid proxy ile internete erişim sağlanmaktır.Bendeki squid3 transpran proxy.Bende nette biraz araştırma yaptım proxy nin web içeriğini önbellekleyip sonra daha hızlı bir şekilde geri dönüş yapma özelliğini buldum.

http://wiki.squid-cache.org/ConfigExamples#Reverse_Proxy_.28Acceleration.29
http://ubuntuforums.org/showthread.php?p=11652173

bu iki likte anlatılıyor ama bende tam anlamadım acaba squid te deneyimli bir arkadaş yardımcı olabilirmi ?

cagriemer

Sunucunuz web isteklerini sunan tarafta mi yoksa yapan tarafta mi? Sunan tarafta ise ve siz baskalarinin, sizin sundugunuz sayfaya daha hizli erismesini istiyorsaniz reverse proxy olarak adlandiriliyor. Diger turlu olunca forward proxy adi veriliyor.

Reverse proxy icin Squid wikisindeki yapilandirma ornegini bulmussunuz. Forward proxy icin de onbellekleme su sekilde yapilabilir.

cache_mem direktifi RAM'den ne kadar alani onbellekleme icin ayiracaginizi bildirir. Ontanimli 256MB idi yanlis hatirlamiyorsam. Diger bir direktif maximum_object_size_in_memory . Bu da adi uzerinde hafizada tutulan objelerin en fazla ne kadar alan kaplayabilecegini soyluyor. Varsayilani 512 KB'mis. Eger varsayilanda birakirsaniz ornegin 3MB'lik bir resim dosyasi her istek yapildigindan yeniden cagirilacaktir. Ince ayarlar icin de refresh_pattern ve negative_ttl direktiflerine goz atabilirsiniz.



ahmetkanar54

Alıntı yapılan: cagriemer - 14 Şubat 2013 - 00:38:43
Sunucunuz web isteklerini sunan tarafta mi yoksa yapan tarafta mi? Sunan tarafta ise ve siz baskalarinin, sizin sundugunuz sayfaya daha hizli erismesini istiyorsaniz reverse proxy olarak adlandiriliyor. Diger turlu olunca forward proxy adi veriliyor.

Reverse proxy icin Squid wikisindeki yapilandirma ornegini bulmussunuz. Forward proxy icin de onbellekleme su sekilde yapilabilir.

cache_mem direktifi RAM'den ne kadar alani onbellekleme icin ayiracaginizi bildirir. Ontanimli 256MB idi yanlis hatirlamiyorsam. Diger bir direktif maximum_object_size_in_memory . Bu da adi uzerinde hafizada tutulan objelerin en fazla ne kadar alan kaplayabilecegini soyluyor. Varsayilani 512 KB'mis. Eger varsayilanda birakirsaniz ornegin 3MB'lik bir resim dosyasi her istek yapildigindan yeniden cagirilacaktir. Ince ayarlar icin de refresh_pattern ve negative_ttl direktiflerine goz atabilirsiniz.



aynen dediğiniz gibi peki bunun için apache gerekmiyormu isa server kurarken ISS de kuruluyordu.Birde benim squid serverında 2 gb ram genelde 400 mb ram kullanılıyor örnek ben 1.6 gb ram versem ne olur yada nasıl bir değer vermem gerekiyor.


birde şu an ki squid.conf dosyam bu şekil

http://pastebin.com/ULv6xHAu

cagriemer

Nasil dedigim gibi, anlayamadim. Sunucu siz misiniz? Oyleyse bir web sunucuya elbette ihtiyaciniz var. Eger 400MB'in uzerine cikmadigina eminseniz 1600MB cache icin ayirmakta bir sakinca bence yok. Zaten squid sunucu dediginize gore asli gorevi bu degil mi?

Sizin ayar dosyaniza gore Squid 3128 numarali portu dinliyor. Bunu gelen istekleri dinleyecek sekilde (eger bu bir web sayfasi ise ornegin 80) degistirmelisiniz. Ornegini zaten bulmussunuz Squid wikisinden. Diger bir husus Squid ve web sunucular ayri ise web sayfasinin alanadini tutan DNS kaydini Squid sunucunun IP'sini gosterecek sekilde degistirmek isteyebilirsiniz.


ahmetkanar54

Alıntı yapılan: cagriemer - 15 Şubat 2013 - 00:16:00
Nasil dedigim gibi, anlayamadim. Sunucu siz misiniz? Oyleyse bir web sunucuya elbette ihtiyaciniz var. Eger 400MB'in uzerine cikmadigina eminseniz 1600MB cache icin ayirmakta bir sakinca bence yok. Zaten squid sunucu dediginize gore asli gorevi bu degil mi?

Sizin ayar dosyaniza gore Squid 3128 numarali portu dinliyor. Bunu gelen istekleri dinleyecek sekilde (eger bu bir web sayfasi ise ornegin 80) degistirmelisiniz. Ornegini zaten bulmussunuz Squid wikisinden. Diger bir husus Squid ve web sunucular ayri ise web sayfasinin alanadini tutan DNS kaydini Squid sunucunun IP'sini gosterecek sekilde degistirmek isteyebilirsiniz.


Evet hocam htop programı ile kontol ediyorum 400 mb yi geçmedi sunucu benim yani bütün clientlar bu serverdan nete çıkıyor varsayılanda 3128 portu ama bende transparan proxy ile nat yaparak 80 e yönlendirdim clientlarda bir ayar yapmamak için yani

cagriemer

Tamam siz reverse proxy degil forward proxy yapacaksaniz. Apache gibi bir web sunucu kurmaniza gerek yok. Ilk mesajda bahsettigim ayarlari yapilandirma dosyaniza eklemeniz istediginizi yapmanizi saglayacaktir.

ahmetkanar54

peki sizde tam uygun bir yapılandırma dosyası varmı kullandığınız ?

cagriemer

Ben siradan bir ev kullanicisiyim, vekil sunucu ihtiyaci duymuyorum. O yuzden ne yazik ki elimde hazirda bir yapilandirma dosyasi yok.

ahmetkanar54

hocam sanki cache sıkıntı var gibi herseferinde internete soruyor gibi geldi bana

cagriemer

Son haliyle yapilandirma dosyaniz nasil gozukuyor? Bir de her seferinde uzak sunucudan istek yaptigini nasil tespit ettiniz?

ahmetkanar54

son yapılandırma dosyası http://pastebin.com/NKZFk7yE
hocam mesela 8mb hız var 4 mb ile indirme başlatıyorum hep girdiğim http siteleri geç açılmaya başlıyor yani

canosayan

proxy üzerinde cache yapmanın yanlış hatırlamıyorsam bazı sıkıntıları oluyordu. mesela oturum yönetimleri. siz oturum üretilen bir sayfayı cacheleyip sunduunuzda başka kullanıcıya başka oturum sunabiliyordunuz.



Chmod bizim işimiz.

cagriemer

squidclient -p 3128 cache_object://localhost/info

Yukaridaki komutun ciktisini gorebilir miyiz?

ahmetkanar54

bu komutu nerde vericez bende debianda verdim

-bash: squidclient: command not found
bunu dedi

cagriemer

squidclient ayrica paketlenmis herhalde. Asagidaki komutla yukleyebilirsiniz. Ardindan Squid calistiran bilgisayarda bir onceki mesajda yazdigim komutu verirseniz isteklerin ne kadar onbellekten sunulmus gorebiliriz.

sudo apt-get install squidclient

squidclient ile baslayan komut uzun bir cikti verecektir. Bizim dikkat edecegimiz kisim suna benzeyecek.

Cache information for squid:
Hits as % of all requests: 5min: 1.7%, 60min: 1.6%
Hits as % of bytes sent: 5min: 10.0%, 60min: 9.6%
Memory hits as % of hit requests: 5min: 16.7%, 60min: 16.7%


Bu arada bu yukaridaki ciktiyi veren yapilandirma dosyasinda onbellekleme ile ilgili sadece su ayarlar var.

cache_mem 20 MB
maximum_object_size_in_memory 1 MB
memory_cache_mode always


Sizdeki gibi disk de kullanmiyor RAM'in yanisira.

ahmetkanar54


cagriemer

Cache information for squid:
        Hits as % of all requests:      5min: 3.7%, 60min: 6.4%
        Hits as % of bytes sent:        5min: 1.4%, 60min: 1.4%
        Memory hits as % of hit requests:       5min: 32.0%, 60min: 56.8%
        Disk hits as % of hit requests: 5min: 0.0%, 60min: 2.5%
        Storage Swap size:      2487472 KB
        Storage Swap capacity:   8.1% used, 91.9% free
        Storage Mem size:       808256 KB
        Storage Mem capacity:   52.9% used, 47.1% free
        Mean Object Size:       44.15 KB
        Requests given to unlinkd:      1608


Ciktidan Squid'in onbellekleme yaptigi goruluyor. Son 60 dakikadaki isteklerin %6.4'u onbellekten sunulmus. Daha cok istemci kullanmaya basladikca artacaktir o oran.

ahmetkanar54

peki hocam squid sadece http içinmi işe yarıyor https de işe yaramıyormu

cagriemer

Teoride HTTPS uzerinden akan veriyi vekil sunucunuzda cozup uzak sunuculara ya da istemcilere icerigini inceledikten sonra yollayabilirsiniz. Fakat bu dedigim sey burada anlatmayla olacak bir is degil. Kullanicilarinizin tarayicilarinin SSL sertifikalari ile ilgili uyari vermemeleri icin once butun istemcilere guvenilen bir sertifika yukleyeceksiniz. Daha sonra her SSL/TLS baglantisi icin vekil sunucunuz bir sertifika olusturup istemcinin trafigini kendi uzerinde sonlandiracak ve inceledikten sonra uzak sunucuya gonderecek. Sunucudan gelen trafik tekrar desifre edilip icerigine bakilacak ve sifrelenip istemciye gonderilecek. Kisaca kendi kullanicilariniza saldiracaksiniz. Illa boyle bir sey lazimsa ben yardimci olamam.

ahmetkanar54

hım anladım hocam tşk ederim yardımların için

cagriemer

Rica ederim. Sorun cozulduyse; cozuldukonusu