Avatar billede mrmox2 Nybegynder
05. november 2004 - 08:01 Der er 14 kommentarer og
1 løsning

apache vs tomcat

er det OK til mindre løsninger at tilgå tomcat direkte uden apache. jeg har hørt at tomcat ikke så godt håndtere mange brugere, og at det er en fordel at lade apache varetage dette. og i givet fald kan man så sige at ved 100+ eller 1000+ vil tomcat fungere dårligt ... eller er der intet om det. tomcat har vi brug for under alle omstændigheder da applikationen er java
Avatar billede mrmox2 Nybegynder
05. november 2004 - 08:02 #1
altså lige nu har vi tomcat-mysql, og mit spm er om det er molboagtigt og om man skal have apache-tomcat-mysql
Avatar billede arne_v Ekspert
05. november 2004 - 08:08 #2
Tomcat skal vel håndtere de mange brugere uanset om der er Apache HTTPD foran eller ej.

Det har Tomcat heller ikke nogen problemer med.

De primære grunde til at have Apache HTTPD foran er mig bekendt:
  - serve af static content er mere effektiv i Apache HTTPD
  - Apache HTTPD er mere effektiv til SSL (HTTPS)
Avatar billede mrmox2 Nybegynder
05. november 2004 - 08:12 #3
en at mine bekendte sagde bare til mig, at tomcat kunne blive ustabil (men at apache httpd ikke fik samme problemer fordi den genstarter ved x antal brugere). han sagde også at tomcat kun skulle håndtere 1 connection hvis man satte apache ind.
men mange tak for afklaringen, kan du ikke lige lægge et svar.
Avatar billede arne_v Ekspert
05. november 2004 - 08:45 #4
Tomcat vil altid lave en tråd per request den skal processe parallelt.

Tomcat skal jo også gemme session info per bruger.

Det er muligt at Apache er bedre til at håndtere HTTP connections og
at AJP er mere effektivt end HTTP i Tomcat, men jeg tror ikke at det
gør en stor forskel.

Husk: masser af memory til Tomcat !
Avatar billede arne_v Ekspert
05. november 2004 - 08:45 #5
og et svar
Avatar billede mrmox2 Nybegynder
05. november 2004 - 08:55 #6
takker igen
vi har 256 ram, og kører FC1 i runlevel 3 og det ser ganske fint ud når vi kigger på systemressoucer, men vi skal nok holde øje med den :-)
Avatar billede simonvalter Praktikant
05. november 2004 - 09:10 #7
at det kan være mere effektivt med apache->tomcat hænger vel også sammen med at du kan load-balance fra apache til flere tomcat servere med mod_jk
Avatar billede mrmox2 Nybegynder
05. november 2004 - 09:20 #8
tak til dig også simonvalter - jeg spørger jo fordi jeg er helt ny på dette felt, så det er altid rart at høre lidt så mit hjemmestrik ikke er helt ude i hampen
Avatar billede arne_v Ekspert
05. november 2004 - 09:52 #9
256MB er ikke så meget til en JSP/Servlet engine.

Men man kan selvfølgelig meget med fornuftig kode.
Avatar billede arne_v Ekspert
05. november 2004 - 09:53 #10
Normalt mener jeg at man load balancer foran Apache HTTPD med en hardware
load balanacer.
Avatar billede mrmox2 Nybegynder
05. november 2004 - 09:56 #11
har lige tjekket den. den har kørt i 17 dage siden vi sidst genstartede fordi vi lave om på opsætningen, og den har brugt det meste af de 256 ram. skal lige siges at det er er en meget lille ting vi kører på den. men tak for tippet
Avatar billede simonvalter Praktikant
05. november 2004 - 14:59 #12
har aldrig kigget nærmere på det men har læst flere steder at mod_jk kan stå for at load-balance og er det ikke også det som er vist her?
http://www.redhat.com/docs/manuals/rhaps/jonas-guide/s1-load-balancing.html
Avatar billede arne_v Ekspert
05. november 2004 - 15:15 #13
Jeg sagde ikke, at man ikke kunne.

Men det er kun relevant i konfigurationer med et forskelligt antal Apache HTTPD
og Tomcat boxe.

Ofte vil man køre både Apache HTTPD og Tomcat på hver box. Og loadbalance
foran boxene.

Eller man vil have samme antal Apache HTTPD og Tomcat boxe og have et 1:1
forhold mellem dem. Og load balance foran Apache HTTPD boxene.

Den tegning på dit link er en helt urealistisk konfiguration fordi
Apache HTTPD boxen er single point of fauilure.

Man kunne forestille sig konfigurationer med 2 Apache HTTPD boxe og
3-5 Tomcat boxe, hardware loadbanacing foran de 2 Apache HTTPD og mod_jk
load balancing mellem Apache HTTPD og Tomcat.

Jeg har bare aldrig set en sådan konfiguration i praksis.
Avatar billede simonvalter Praktikant
05. november 2004 - 15:45 #14
Det er klart at hvis der opstår fejl på din httpd så virker det bagvedliggende heller ikke men du opnår da aligevel næsten 2x den samme ydelse og minimerer risikoen for nedetid hvis en af dine servlet containere står af eller er jeg helt forkert på den?
jeg ville selvfølgelig også gå helt ud og lave dns load balancing til forskellinge linjer hvis det skal være optimalt men hvis det skal være ydelse og ikke oppetid der er vigtigt så går betyder det vel ikke det store?
Avatar billede arne_v Ekspert
05. november 2004 - 16:11 #15
Måske er jeg erhvervs skadet. Single point of failure er et fy ord med det meste
jeg arbejder med.

Hvis det kun er for at få mere CPU power til Tomcat, så kunne man godt vælge
sådan en konfiguration.

DNS load balancing kan vel også kun bruges til at forbedre ydeevne.

En hardware load balancer kan både bruges til at forbedre ydeevne og
til at sikre oppetid.

Men OK sådan er box koster selvfølgelig også (jeg aner ikke hvor meget).
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Uanset kodesprog, så giver vi dig mulighederne for at udvikle det, du behøver.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester