Strona 1 z 2 12 OstatniOstatni
Pokaż wyniki od 1 do 10 z 17
  1. #1
    Obserwator
    Dołączył
    February 04
    Postów
    826
    Siła Reputacji
    0


    Twoja ocena: Yes No

    Squid - limit połączeń jednego usera

    Witam.

    Potrzebuj zrobi co takiego:
    Jest sobie x serwerw z Apache'ami i Squidami. Obcienie serwerw jest due i trzeba by zrobi ma kontrol, czy aby uytkownicy na serwer nie zapuszczaj jakich skryptw tudzie nie prbuj pobiera caych witryn.

    Moje pytanie brzmi:
    Czy da si w Squidzie zrobi co takiego, e jeli jest zbyt duo pocze od jednego uytkownika (IP), to np. zmniejsza mu si transfer? W dokumentacji Squida i na Googlach nic takiego nie znalazem, ale nie wiem, czy przypadkiem nie bdzie jakiego dodatku/plug-inu, ktry tak rzecz umoliwi. Nie wiem za bardzo jak i czego szuka. jeli kto ma jakie pomysy, to z chci wysucham
    Moe jest jakie dodatkowe oprogramowanie, ktre takie rzeczy umoliwi. Podobno co takiego potrafi Apache, ale w tym przypadku indianin dostaje adres Squida, a nie klienta, wic to jest bez sensu - w Apache'u nie da si kontrolowa ktre i ile pocze jest od ktrego klienta.

  2. #2
    Obserwator
    Dołączył
    August 03
    Postów
    668
    Siła Reputacji
    0


    Twoja ocena: Yes No

    ---------- 14:42 18.09.2006 ----------

    Cytat Napisał krYsti
    Witam.

    Potrzebuj zrobi co takiego:
    Jest sobie x serwerw z Apache'ami i Squidami. Obcienie serwerw jest due i trzeba by zrobi ma kontrol, czy aby uytkownicy na serwer nie zapuszczaj jakich skryptw tudzie nie prbuj pobiera caych witryn.

    Moje pytanie brzmi:
    Czy da si w Squidzie zrobi co takiego, e jeli jest zbyt duo pocze od jednego uytkownika (IP), to np. zmniejsza mu si transfer? W dokumentacji Squida i na Googlach nic takiego nie znalazem, ale nie wiem, czy przypadkiem nie bdzie jakiego dodatku/plug-inu, ktry tak rzecz umoliwi. Nie wiem za bardzo jak i czego szuka. jeli kto ma jakie pomysy, to z chci wysucham
    Moe jest jakie dodatkowe oprogramowanie, ktre takie rzeczy umoliwi. Podobno co takiego potrafi Apache, ale w tym przypadku indianin dostaje adres Squida, a nie klienta, wic to jest bez sensu - w Apache'u nie da si kontrolowa ktre i ile pocze jest od ktrego klienta.
    Hola, hola... Ale co ma squid do apacha. Wielkie nic. Chyba, e ja czego nie rozumiem.

    Zdalny klient -> Jaki SQUID -> INTERNET -> apache

    Jako, e SQUID nie jest w Twojej jurysdykcji to nic na nim nie zrobisz.

    No chyba, e zarwno squidy jak i apacze Twoje (cao sytuacji w jednej sieci). W tym przypadku ja bym stara si przekierowania odpowiednie na transparent proxy porobi w firewallu. Konkretniej zamiast:

    Kod:
    /sbin/iptables -t nat -A PREROUTING -p tcp -s 192.168.0.5 --dport 80  -j DNAT --to 192.168.0.1:8080
    Dabym co a'la:

    Kod:
    /sbin/iptables -t nat -A PREROUTING -p tcp -s 192.168.0.5 -d ! adres_serwera_ktory_ma_byc_bez_squida --dport 80  -j DNAT --to 192.168.0.1:8080
    Jak poczenia do Twojego apacza szy by bezporednio to nie trzeba by si martwi o zmiany w squidzie. Teraz tylko dokompilowa do apacza mod_cband i masz problem rozwizany.

    ---------- 14:48 ----------

    Jest te w sumie w squidzie dyrektywa maxconn. Osobicie nie testowaem:

    Kod:
    acl someuser src 1.2.3.4
    acl twoconn maxconn 5
    http_access deny someuser tw
    http_access allow !twoconn

  3. #3
    Obserwator
    Dołączył
    August 06
    Postów
    47
    Siła Reputacji
    0


    Twoja ocena: Yes No

    squid moźe działać jako loadbalancer/akcelerator - tuź przed kilkoma apaczami.

    O ile wiem to squid jako-taki nie ma takiej moźliwości (ale mogę się mylić) natomiast apacz ma moduł do ograniczania pasma per ip.

  4. #4
    Obserwator
    Dołączył
    August 03
    Postów
    668
    Siła Reputacji
    0


    Twoja ocena: Yes No

    Do load balancingu to si powinno tak naprawd stosowa DNS'y round robinowe a nie jakie magiczne mutacje indian z omiornicami.

  5. #5
    Obserwator
    Dołączył
    February 04
    Postów
    826
    Siła Reputacji
    0


    Twoja ocena: Yes No

    Cytat Napisał piotrg
    No chyba, źe zarłwno squidy jak i apacze Twoje (całość sytuacji w jednej sieci).
    Całość (Squidy i Apacze) są w jednej sieci. Jest to sieć w mojej firmie. Apacze są schowane za Squidami, ktłre słuźą do buforowania ruchu z mojej sieci na zewnątrz (odciąźenie serwerłw z Apaczami i bazami danych).

    Cytat Napisał piotrg
    Jest teź w sumie w squidzie dyrektywa maxconn
    Jest, działa całkiem przyzwoicie, ale nie do końca rozwiązuje młj problem. maxconn ogranicza ilość jednoczesnych połączeń z jednego adresu IP, natomiast w sytuacji, gdy jakiś klient zapuści np. oprogramowanie do pobierania całych witryn, to robi to nie za pomocą jednego połączenia, tylko iluśtam następujących bardzo krłtko po sobie. Podobnie będzie, gdy ktoś odpali jakiegoś robota. Obecnie na serwerze jest kilka tysięcy subdomen linkujących do siebie nawzajem, baza artykułłw zajmuje dobrze ponad 0,5 GB. W takim układzie juź same roboty wyszukiwarek robią bardzo duźy ruch na serwerach.

    Nie mogę klientom zabronić pobierania całych witryn, nie mogę teź ograniczać dostępu rłźnym robotom (warunki licencji na zawartość witryny są takie, źe kaźdy moźe sobie ją ściągnąć w dowolny sposłb i w dowolny sposłb wykorzystać). Jednak potrzebowałbym mieć moźliwość automatycznego ograniczania pasma dla uźytkownika, ktłrego ilość zapytań (nie jednoczesnych, ale wielu jeden po drugim w ktłrkim okresie czasu) przekracza pewien poziom, aby jeden uźytkownik nie zamulał serwerłw i łącza, bo będzie to uciąźliwe dla inych.

    Cytat Napisał miron73
    apacz ma moduł do ograniczania pasma per ip
    Ma, ale Apacz dostaje zapytanie juź od pośrednika (Squid), a nie bezpośrednio od klienta. Adresem IP pytającego jest więc adres Squida, a nie adres klienta, ktłry włączył przeglądarkę/program/skrypt na swoim komputerze.

    Problem polega na tym, źe w tej dziedzinie specjalistą nie jestem, a dostałem zadanie, z ktłrego muszę się wywiązać.

  6. #6
    Obserwator
    Dołączył
    August 06
    Postów
    47
    Siła Reputacji
    0


    Twoja ocena: Yes No

    Hmmm... o ile pamiętam, to squid ma moźliwość przekazywania informacji w czyim imieniu zapytuje.

  7. #7
    Obserwator
    Dołączył
    August 03
    Postów
    668
    Siła Reputacji
    0


    Twoja ocena: Yes No

    ---------- 16:49 18.09.2006 ----------

    Round robin DNS - trudne w realizacji bo apacze musz synchronizowa content, bazy danych te. Samo odpalenie round robina do 20 sekund ale podne rozwizanie synchronizacji to do powane wyzwanie. No bo tak naprawd pod uwag trzeba wzi to, e zmiana contentu na jednym serwerze musi wymusi aktualizacj na reszcie (najlepiej to natychmiastow) - a to w praktyce oznacza dyski SCSI, poczenia midzy serwerami najlepiej 1Gbit eby ta synchronizacja sprawnie przebiegaa.

    Mona by te wywali te squidy w cholere (moim zdaniem s potrzebne jak umaremu kadzido). Serwery na ktrych stoj squidy (o ile to s fizycznie oddzielne maszyny) zamieni na Apacze. Load na kadym serwerze spadnie, atwo bdzie klientw przycina standardowymi rozwizaniami.

    W tym momencie - ja nie bardzo widz sposb poza pisaniem wasnych moduw do Squida czy Apacza.

    ---------- 16:50 ----------

    Cytat Napisał miron73
    Hmmm... o ile pamitam, to squid ma moliwo przekazywania informacji w czyim imieniu zapytuje.
    Chodzi Ci o PHP'ow zmienn X_FORWARDED_FOR?

  8. #8
    Obserwator
    Dołączył
    February 04
    Postów
    826
    Siła Reputacji
    0


    Twoja ocena: Yes No

    Dzięki, będę gadał z szefostwem, niech podejmą decyzję.

  9. #9
    Obserwator
    Dołączył
    August 06
    Postów
    47
    Siła Reputacji
    0


    Twoja ocena: Yes No

    Cytat Napisał piotrg
    Round robin DNS - trudne w realizacji bo apacze musz synchronizowa content, bazy danych te. Samo odpalenie round robina do 20 sekund ale podne rozwizanie synchronizacji to do powane wyzwanie. No bo tak naprawd pod uwag trzeba wzi to, e zmiana contentu na jednym serwerze musi wymusi aktualizacj na reszcie (najlepiej to natychmiastow) - a to w praktyce oznacza dyski SCSI, poczenia midzy serwerami najlepiej 1Gbit eby ta synchronizacja sprawnie przebiegaa.
    Zawierz - roundrobin to najprostsze rozwizanie (cho nie jedyne). Bdnie zakada, e obcienie wywoywane przez kady request jest takie same. Statystycznie to jest prawda, tyle tylko, e ma si nijak do rzeczywistoci. S metody pozwalajce na przekierowywanie ruchu na mniej obciony serwer (chocia, przyznaj, nigdy tego nie robiem na squidzie). A synchronizacja kontentu w wypadku odpowiedniego sprztu/oprogramowania to kaszka z mleczkiem.
    Cytat Napisał piotrg
    Mona by te wywali te squidy w cholere (moim zdaniem s potrzebne jak umaremu kadzido). Serwery na ktrych stoj squidy (o ile to s fizycznie oddzielne maszyny) zamieni na Apacze. Load na kadym serwerze spadnie, atwo bdzie klientw przycina standardowymi rozwizaniami.
    No nie zupenie - wyobra sobie dynamicznie generowane strony, ktre jednak w do regularny sposb si powtarzaj (np. cennik sklepu, cho to akurat banalny przykad). Squid moe je pokeszowa i tylko w predefiniowanym interwale odpytywa rzeczywiste serwery o zmiany. Do tego dochodzi moliwo filtrowania kontentu po stronie squida... zastosowa jest wiele.
    Cytat Napisał piotrg
    Cytat Napisał miron73
    Hmmm... o ile pamitam, to squid ma moliwo przekazywania informacji w czyim imieniu zapytuje.
    Chodzi Ci o PHP'ow zmienn X_FORWARDED_FOR?
    Nie. Chodzi mi o klauzul forwarded_for ze squid.conf. Na PHP to si nie znam

  10. #10
    Obserwator
    Dołączył
    August 03
    Postów
    668
    Siła Reputacji
    0


    Twoja ocena: Yes No

    Cytat Napisał miron73
    Cytat Napisał piotrg
    Round robin DNS - trudne w realizacji bo apacze musz synchronizowa content, bazy danych te. Samo odpalenie round robina do 20 sekund ale podne rozwizanie synchronizacji to do powane wyzwanie. No bo tak naprawd pod uwag trzeba wzi to, e zmiana contentu na jednym serwerze musi wymusi aktualizacj na reszcie (najlepiej to natychmiastow) - a to w praktyce oznacza dyski SCSI, poczenia midzy serwerami najlepiej 1Gbit eby ta synchronizacja sprawnie przebiegaa.
    Zawierz - roundrobin to najprostsze rozwizanie (cho nie jedyne). Bdnie zakada, e obcienie wywoywane przez kady request jest takie same. Statystycznie to jest prawda, tyle tylko, e ma si nijak do rzeczywistoci. S metody pozwalajce na przekierowywanie ruchu na mniej obciony serwer (chocia, przyznaj, nigdy tego nie robiem na squidzie). A synchronizacja kontentu w wypadku odpowiedniego sprztu/oprogramowania to kaszka z mleczkiem.
    Cytat Napisał piotrg
    Mona by te wywali te squidy w cholere (moim zdaniem s potrzebne jak umaremu kadzido). Serwery na ktrych stoj squidy (o ile to s fizycznie oddzielne maszyny) zamieni na Apacze. Load na kadym serwerze spadnie, atwo bdzie klientw przycina standardowymi rozwizaniami.
    No nie zupenie - wyobra sobie dynamicznie generowane strony, ktre jednak w do regularny sposb si powtarzaj (np. cennik sklepu, cho to akurat banalny przykad). Squid moe je pokeszowa i tylko w predefiniowanym interwale odpytywa rzeczywiste serwery o zmiany. Do tego dochodzi moliwo filtrowania kontentu po stronie squida... zastosowa jest wiele.
    Cytat Napisał piotrg
    Cytat Napisał miron73
    Hmmm... o ile pamitam, to squid ma moliwo przekazywania informacji w czyim imieniu zapytuje.
    Chodzi Ci o PHP'ow zmienn X_FORWARDED_FOR?
    Nie. Chodzi mi o klauzul forwarded_for ze squid.conf. Na PHP to si nie znam
    Co do Round Robina - napisaem, e sam round robin to 20 sekund roboty. Nie musisz mi tumaczy jakie to proste. Ale implementacja tego tak, eby wszystko dziaaa nie jest ju taka prosta - a bo to sprztu trzeba, a to trzeba jakie skrypty snychronizujce klepn, kable wymieni na cat 6 eby ten Gbit poszed, do tego switcha dokupi. Robi si z tego cakiem spora operacja.

    Co do tych squidw. Wytumacz mi co to za dynamiczny kontent ktry jest statyczny? Jak dla mnie to mierdzi to straszn bezwadnoci. We sobie sytuacj wyobra - to forum przechodzi przez takiego squida. I niech ten squid odwiea cache co 15 minut. Ostatnie odwieenie to 19.00. Gdy pisz tego posta na zegarku mam 19.03. Post trafia do bazy, po czym znika w nicoci na cae 12 minut - a squid cache znowu nie odwiey. Totalna bzdura. Przykad cennika te jest kulawy - na choler komu nieaktualny cennik? Jak si czujesz gdy sprawdzasz na stronie sklepu cene jakiego stuffu, przyjedzasz - a tu cena zupenie inna?

    A co do forwarded_for - jak ustawisz sobie forwarded_for na on - to wtedy nagwek HTTP (i zmienna PHP) X-Forwarded-For zawiera adres klienta proxy. Jak dasz na off - to nie ma tej zmiennej. Ale uycie tego raczej wymagao by klepnicia moduu do apacha - a to jest strzelanie do wrbli z armaty.

Informacje o temacie

Users Browsing this Thread

Aktualnie 1 użytkownik(ów) przegląda ten temat. (0 zarejestrowany(ch) oraz 1 gości)

Zakładki

Zakładki

Uprawnienia

  • Nie możesz zakładać nowych tematów
  • Nie możesz pisać wiadomości
  • Nie możesz dodawać załączników
  • Nie możesz edytować swoich postów
  •  

Jak czytać DI?

Powered by  
ATMAN EcoSerwer