/ Forside / Teknologi / Operativsystemer / Linux / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
Linux
#NavnPoint
o.v.n. 11177
peque 7911
dk 4814
e.c 2359
Uranus 1334
emesen 1334
stone47 1307
linuxrules 1214
Octon 1100
10  BjarneD 875
Squid 2.5 og OpenBSD 3.3 filedescriptors
Fra : John Nielsen


Dato : 30-07-03 18:33

Jeg får følgende advarsel når jeg kører squids ./configure:

Maximum number of filedescriptors we can open... 128
WARNING 128 may not be enough filedescriptors if your
cache will be very busy

Nu er jeg ikke den største haj til det her, så jeg har ikke
noget forhold til hvor meget 128 er.
Squiden skal gerne kunne klare 50-75 samtidige brugere.
Er de 128 filedescriptors så nok?

--
John Nielsen


 
 
Kent Friis (30-07-2003)
Kommentar
Fra : Kent Friis


Dato : 30-07-03 19:57

Den Wed, 30 Jul 2003 19:32:48 +0200 skrev John Nielsen:
>Jeg får følgende advarsel når jeg kører squids ./configure:
>
>Maximum number of filedescriptors we can open... 128
>WARNING 128 may not be enough filedescriptors if your
>cache will be very busy
>
>Nu er jeg ikke den største haj til det her, så jeg har ikke
>noget forhold til hvor meget 128 er.
>Squiden skal gerne kunne klare 50-75 samtidige brugere.
>Er de 128 filedescriptors så nok?

Uden at vide noget specifikt om squid, vil jeg mene du skal regne med
~3 filedescriptors pr. connection:

- connection til klient
- connection til server
- IO til cache

Derudover skal du regne med flere connections pr bruger, Opera står
fx default til max 20 connections.

Så hvis du har 50 brugere der surfer, og browseren henter hvert billede
i en separat connection (eller de åbner flere sider ad gangen), så er
det worst case 1000 connections. Gange med 3 fd'er pr. connection =
3000.

Hvor mange brugere har du ialt, siden du forventer 50-75 samtidig? Hvis
ikke forbindelsen er alt for overbelastet, skulle det gerne være en
brøkdelen af tiden der bliver brugt på at hente - det meste af tiden
skulle gerne bruges på at læse de sider man har hentet, inden man
clicker videre. I hvert fald indtil brugerne finder ud af at man kan
åbne flere sider ad gangen, så maskinen henter imens man læser.

Mvh
Kent
--
A Elbereth Gilthoniel, silivren penna míriel
o menel aglar elenath! Na-chaered palan-díriel
o galadhremmin ennorath, Fanuilos, le linnathon nef aear, sí nef aearon!
- Tolkien, "The Lord of the Rings"

John Nielsen (30-07-2003)
Kommentar
Fra : John Nielsen


Dato : 30-07-03 22:13

"Kent Friis" <leeloo@phreaker.net> wrote in message news:bg94e5$60k$1@sunsite.dk...

> Uden at vide noget specifikt om squid, vil jeg mene du skal regne med
> ~3 filedescriptors pr. connection:
>
> - connection til klient
> - connection til server
> - IO til cache

Det lyder umiddelbart rimeligt nok - måske fstat kan give en idé herom?

> Derudover skal du regne med flere connections pr bruger, Opera står
> fx default til max 20 connections.
>
> Så hvis du har 50 brugere der surfer, og browseren henter hvert billede
> i en separat connection (eller de åbner flere sider ad gangen), så er
> det worst case 1000 connections. Gange med 3 fd'er pr. connection =
> 3000.

Hmm...er det så når vi snakker *nøjagtig* samtidig?
Jeg er lidt i tvivl om hvornår i browsesekvensen fd'en bliver frigivet...
Hvis det er en simpel hjemmeside frigives den vel ved fuldendt overførsel?
Men hvad med chat og multimedie eller reklame/bannere for den sags
skyld?

> Hvor mange brugere har du ialt, siden du forventer 50-75 samtidig?

Jeg har 100 undervisningsmaskiner i 5 lokaler der ofte er fuldt besat.
Og der er ingen tvivl om hvad de mest bruger maskinerne til
Jeg har dagligt gennemsnitligt 30-40 brugere der surfer samtidigt.
De 50-75 er worst case...

> Hvis ikke forbindelsen er alt for overbelastet, skulle det gerne være en
> brøkdelen af tiden der bliver brugt på at hente - det meste af tiden
> skulle gerne bruges på at læse de sider man har hentet, inden man
> clicker videre. I hvert fald indtil brugerne finder ud af at man kan
> åbne flere sider ad gangen, så maskinen henter imens man læser.

Det kan jeg kun give dig ret i. Desværre bruges det tit at sidde og
høre musik/radio via internettet samtidig med man browser, læser post
eller chatter.

Mvh John


Kent Friis (30-07-2003)
Kommentar
Fra : Kent Friis


Dato : 30-07-03 22:29

Den Wed, 30 Jul 2003 23:13:27 +0200 skrev John Nielsen:
>"Kent Friis" <leeloo@phreaker.net> wrote in message news:bg94e5$60k$1@sunsite.dk...
>
>> Uden at vide noget specifikt om squid, vil jeg mene du skal regne med
>> ~3 filedescriptors pr. connection:
>>
>> - connection til klient
>> - connection til server
>> - IO til cache
>
>Det lyder umiddelbart rimeligt nok - måske fstat kan give en idé herom?

Nærmere en ls /proc/<pid>/fd

>> Derudover skal du regne med flere connections pr bruger, Opera står
>> fx default til max 20 connections.
>>
>> Så hvis du har 50 brugere der surfer, og browseren henter hvert billede
>> i en separat connection (eller de åbner flere sider ad gangen), så er
>> det worst case 1000 connections. Gange med 3 fd'er pr. connection =
>> 3000.
>
>Hmm...er det så når vi snakker *nøjagtig* samtidig?

Ikke i præcis samme øjeblik, men indenfor den tid det nu tager at
hente en webside. Google tager kun et øjeblik, men kommer man ud på
de mere suspekte sites, kan det sagtens tage lang tid.

Er det en ISO der downloades, er de FD'er optaget i time- eller dagevis.

>Jeg er lidt i tvivl om hvornår i browsesekvensen fd'en bliver frigivet...
>Hvis det er en simpel hjemmeside frigives den vel ved fuldendt overførsel?

Nærmere 10-15 sekunder senere, de fleste browsere bruger http keepalive,
så de sparer at åbne en ny connection, hvis næste link fører til
samme site.

>Men hvad med chat og multimedie eller reklame/bannere for den sags
>skyld?

Bannerreklamer er typisk bare en animeret GIF, dvs. helt det samme
som ethvert andet billede.

chat er typisk enten reload af siden, som så giver det samme som når
siden hentes på normal vis. Eller noget java, som kører helt udenom
http, og dermed squid.

>> Hvor mange brugere har du ialt, siden du forventer 50-75 samtidig?
>
>Jeg har 100 undervisningsmaskiner i 5 lokaler der ofte er fuldt besat.
>Og der er ingen tvivl om hvad de mest bruger maskinerne til
>Jeg har dagligt gennemsnitligt 30-40 brugere der surfer samtidigt.
>De 50-75 er worst case...

Så ville jeg nok i første omgang regne med 4 connections pr bruger
(ialt 300 connections), nogen vil nok ligge meget højere, men der
er også nogen der giver sig tid til at læse de sider de er inde på.

>> Hvis ikke forbindelsen er alt for overbelastet, skulle det gerne være en
>> brøkdelen af tiden der bliver brugt på at hente - det meste af tiden
>> skulle gerne bruges på at læse de sider man har hentet, inden man
>> clicker videre. I hvert fald indtil brugerne finder ud af at man kan
>> åbne flere sider ad gangen, så maskinen henter imens man læser.
>
>Det kan jeg kun give dig ret i. Desværre bruges det tit at sidde og
>høre musik/radio via internettet samtidig med man browser, læser post
>eller chatter.

internet-radio kører typisk udenom http.

Mvh
Kent
--
Those who write "Optimized for Netscape" og "Best viewed with MSIE"
never figured out the difference between the WWW and a
Word Perfect 4.2 Document.

John Nielsen (30-07-2003)
Kommentar
Fra : John Nielsen


Dato : 30-07-03 23:21

"Kent Friis" <leeloo@phreaker.net> wrote in message news:bg9da2$c4p$1@sunsite.dk...

> >> Uden at vide noget specifikt om squid, vil jeg mene du skal regne med
> >> ~3 filedescriptors pr. connection:
> >>
> >> - connection til klient
> >> - connection til server
> >> - IO til cache
> >
> >Det lyder umiddelbart rimeligt nok - måske fstat kan give en idé herom?
>
> Nærmere en ls /proc/<pid>/fd

Ok, det vil jeg prøve

[snip - en masse andre gode brugbare svar]

> chat er typisk enten reload af siden, som så giver det samme som når
> siden hentes på normal vis. Eller noget java, som kører helt udenom
> http, og dermed squid.

> internet-radio kører typisk udenom http.

Jeg havde forestillet mig kun at tillade internetadgang via http (og ftp)
og kun gennem Squid'en...så jeg skal vel regne med et øget behov for
fd'er når alt skal køre via http?

> >Jeg har 100 undervisningsmaskiner i 5 lokaler der ofte er fuldt besat.
> >Og der er ingen tvivl om hvad de mest bruger maskinerne til
> >Jeg har dagligt gennemsnitligt 30-40 brugere der surfer samtidigt.
> >De 50-75 er worst case...
>
> Så ville jeg nok i første omgang regne med 4 connections pr bruger
> (ialt 300 connections), nogen vil nok ligge meget højere, men der
> er også nogen der giver sig tid til at læse de sider de er inde på.

Så vil jeg nok satse på at øge de nuværende 128
Jeg vil nok i første omgang gå efter 1024 og så følge loggen nøje.

Mvh. John


Kent Friis (31-07-2003)
Kommentar
Fra : Kent Friis


Dato : 31-07-03 08:38

Den Thu, 31 Jul 2003 00:21:15 +0200 skrev John Nielsen:
>"Kent Friis" <leeloo@phreaker.net> wrote in message news:bg9da2$c4p$1@sunsite.dk...
>
>
>> internet-radio kører typisk udenom http.
>
>Jeg havde forestillet mig kun at tillade internetadgang via http (og ftp)
>og kun gennem Squid'en...så jeg skal vel regne med et øget behov for
>fd'er når alt skal køre via http?

Jeg ville nærmere regne med brok fra brugerne over at deres favorit-
internet-radio ikke virker mere.

Men ok, på en undervisningsinstitution kan man jo gøre præcis som man
har lyst til... Dengang jeg gik i skole var det i hvert fald ikke
elevernes ønsker der blev lyttet til (og slet ikke, når det var ting der
ikke var relevante for undervisningen).

Mvh
Kent
--
A Elbereth Gilthoniel, silivren penna míriel
o menel aglar elenath! Na-chaered palan-díriel
o galadhremmin ennorath, Fanuilos, le linnathon nef aear, sí nef aearon!
- Tolkien, "The Lord of the Rings"

Alex Holst (31-07-2003)
Kommentar
Fra : Alex Holst


Dato : 31-07-03 06:54

John Nielsen <mcpist@dontspamme.get2net.dk> wrote:
> Jeg får følgende advarsel når jeg kører squids ./configure:
>
> Maximum number of filedescriptors we can open... 128
> WARNING 128 may not be enough filedescriptors if your
> cache will be very busy

Har Squid dokumentation ikke en uddybning af hvad 'very busy' daekker
over? 128 er root's limit for antallet af aabne file descriptors:

priceless# limit
cputime unlimited
filesize unlimited
datasize 1048576 kbytes
stacksize 8192 kbytes
coredumpsize unlimited
memoryuse 53324 kbytes
memorylocked 18157 kbytes
maxproc 532
openfiles 128

Du kan haeve vaerdien af openfiles i /etc/login.conf hvis det er
noedvendigt. Det skal goeres for det userid som Squid koerer under til
daglig, og muligvis for root mens du compiler Squid. Jeg ved ikke om
Squid hardcoder antallet af available fd's paa dette tidspunkt.

--
I prefer the dark of the night, after midnight and before four-thirty,
when it's more bare, more hollow. http://a.mongers.org

John Nielsen (01-08-2003)
Kommentar
Fra : John Nielsen


Dato : 01-08-03 05:56

"Alex Holst" <a@mongers.org> wrote in message news:ognmv-a0t.ln1@miracle.mongers.org...

> Har Squid dokumentation ikke en uddybning af hvad 'very busy' daekker
> over?

Jeg har ikke haft held til at finde noget uddybende hverken i faq'en
eller user guiden (der iøvrigt virker temmelig ufærdig)
Jeg har heller ikke været i stand til at finde noget på google.
Så det ser ud til at jeg må samle mine egne erfaringer hen ad vejen.

> Du kan haeve vaerdien af openfiles i /etc/login.conf hvis det er
> noedvendigt. Det skal goeres for det userid som Squid koerer under til
> daglig, og muligvis for root mens du compiler Squid. Jeg ved ikke om
> Squid hardcoder antallet af available fd's paa dette tidspunkt.

Jeg har hævet root's openfiles til 1024 og tilføjet squid's
cache_effective_user til en ny login class med openfiles sat til 1024.
..\configure accepterer uden bemærkninger og squids cache.log
siger :

Starting Squid Cache...
With 1024 file descriptors available

Så den skulle vist være god nok.

Tak for hjælpen!

Mvh. John


Jesper Louis Anderse~ (04-08-2003)
Kommentar
Fra : Jesper Louis Anderse~


Dato : 04-08-03 10:01

On Wed, 30 Jul 2003 19:32:48 +0200,
John Nielsen <mcpist@dontspamme.get2net.dk> wrote:

> Jeg får følgende advarsel når jeg kører squids ./configure:
>
> Maximum number of filedescriptors we can open... 128
> WARNING 128 may not be enough filedescriptors if your
> cache will be very busy
>
> Nu er jeg ikke den største haj til det her, så jeg har ikke
> noget forhold til hvor meget 128 er.
> Squiden skal gerne kunne klare 50-75 samtidige brugere.
> Er de 128 filedescriptors så nok?
>

OpenBSD kommer i en meget konservativ konfiguration mht fildescriptors,
memory use og andet for at en enkelt person ikke kan exhauste maskinens
resourcer og derved på maskinen til at dø. Du skal kigge i

/etc/login.conf (man login.conf)

limit/ulimit (man csh, man ksh alt efter hvad du benytter).

Og så ellers bumpe tallet passende op.


--
Jesper

Søg
Reklame
Statistik
Spørgsmål : 177554
Tips : 31968
Nyheder : 719565
Indlæg : 6408852
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste