ApplicationServer vs. Tomcat

Status
Nicht offen für weitere Antworten.

Olel

Mitglied
Hallo zusammen,

ich bin gerade dabei mir eine Systemarchitektur für eine Webanwendung zu überlegen. Dabei stoße ich auf die Frage, ob es sinnvoll ist einen "echten" ApplicationServer einzusetzen (wie JBoss, Geronimo/WAS CE, Glassfish) oder ob ein "einfacher" Tomcat ausreicht.

Ich versuche mal kurz die Anwendung zu umreißen, damit man ein Bild von den Anforderungen bekommt.

Die Anwendung wird zentral auf einem Server (oder vermutlich eher auf einer Server-Farm) laufen und von schätzungsweise 10.000 Clients genutzt, wobei wir von ungefähr 1.000.000 Anfragen pro Tag ausgehen. Die Anfragen werden alle lesend sein, schreibende Zugriff werden sehr selten (ca. 10/Tag) erfolgen.

Die Anwendung soll mit Spring/Hibernate implementiert werden.
Die Anwendung ist technologisch nicht besonders anspruchsvoll; der Anspruch besteht eher darin, dass relativ hohe Zugriffszahlen erreicht werden und dabei sehr gute Anwortzeiten notwendig sind.

Ich gehe also davon aus, dass wir serverseitig einen Cluster aufbauen werden und vermutlich auch einen Datenbank-Cluster (was relativ gut skalieren müsste, da zu 99% Lesezugriffe erfolgen werden). Die Frage ist nun, ob wir für die Cluster-Lösung (oder aus anderen Gründen) auf einen "echten" ApplicationServer setzen sollten/müssen oder ob für die Anforderungen auch Tomcat ausreicht.
Tomcat ist ja sogar performanter als alle echten AppServer. Was mich stutzig macht ist, dass es z.B. hier (http://www.javaworld.com/javaworld/jw-12-2007/jw-12-appservers.html?page=1) heißt, dass Tomcat nur bedingt clusterfähig ist. Dabei ist mir bisher aber noch nicht klar geworden, wo denn nun die Grenzen liegen.

Für ein bisschen Untersützung wäre ich daher sehr dankbar.

Gruß,
Ole
 

ps

Bekanntes Mitglied
Nun.. das Tomcat performanter ist als ein "echter" Appserver bezweifle ich bei den neueren Generationen. Glassfish soll sogar einiges performanter sein als Tomcat. Die Zeit der überladenen, monolithischen Appserver ist spätestens seit GFv3 vorbei :)

Clustering ist wieder etwas komplexer - ich persönlich würde dafür auf EJB setzen. Mit einer reinen Hibernate/Spring Lösung kenne ich mich einfach zu wenig aus um dir da irgendwie weiterzuhelfen.
 

SnooP

Top Contributor
Ich kann dir nur raten und auf einen AS zu verzichten. Alles was ich bisher mit AS gesehen hab, ist doch eher unbefriedigend ;) ... EJB auch in Version 3.0 ist nicht das, was man wirklich möchte als Entwickler... alles was ein AS kann, kann man mit Spring genauso gut liefern - wie z.B. JTA. Das Clustering wird mit Load-Balancern und Tomcat ebenfalls sehr performant möglich sein - hier kann ein guter AS sicher vermutlich noch mehr tun... aber der Aufwand ist ungleich höher...
 

ps

Bekanntes Mitglied
SnooP hat gesagt.:
Ich kann dir nur raten und auf einen AS zu verzichten. Alles was ich bisher mit AS gesehen hab, ist doch eher unbefriedigend ;) ...
...
hier kann ein guter AS sicher vermutlich noch mehr tun... aber der Aufwand ist ungleich höher...

Findest du? Ich finde den Aufwand um zB. Spring zu konfigurieren um _einiges_ höher als einen AS wie glassfish zu konfigurieren. Das liegt vor allem daran das ich bei Spring unmengen an XML Dateien habe, beim AS eine hübsche Weboberfläche zum konfigurieren ;-)
 

Olel

Mitglied
Erstmal danke für die Antworten so weit, aber es ging mir hier eigentlich nur um eine Diskussion Hibernate/Spring vs. EJB 3.0 (dazu kann man hier ja auch schon genug lesen :wink:).

Das wir Hibernate und Spring verwenden werden ist bereits sicher. Aber niemand hält mich ja davon ab auch das in einem AS zu tun. Die Frage ist eher ob es notwendig ist. Dabei haben wir keine Angst vor der Konfiguration eines AS - ich habe schon einen WAS 5 und 6 konfiguriert, da werde ich mit JBoss und Konsorten schon fertig - mir geht es eher um die Frage, was ein AS und bieten kann was uns Tomcat nicht bietet und ob das auch anders ersetzt werden kann.
Und da ist mir halt im Moment insbesondere das Clustering ins Auge gefallen wegen des oben schon erwähnten Vergleichs (www.javaworld.com/javaworld/jw-12-2007/jw-12-appservers.html?page=1) in dem es heißt, Tomcat sei bedingt clusterfähig - was meint hier "bedingt"?

Zur Performance: Im Vergleich zu Geronimo 2.0 und JBoss 4.2 gewinnt Tomcat 6 (siehe auch der Link oben) scheinbar und ob der Tatsache, dass Tomcat eben erheblich schlanker ist, würde mich das auch nicht wundern.
 

SnooP

Top Contributor
Tomcat6 ist ja auch erheblich schneller als der Tomcat 5.5 - der imho im Jboss4 eingebaut ist.. von daher ist es nur logisch, das er hier gewinnt ;) ..

das "bedingt" clusterfähig würde mich auch interessieren... - vor allem solltet ihr halt genau auf dem Punkt hin evaluieren was ihr überhaupt braucht... und dann kann man sich mit load-balancing und clustering auseinandersetzen...

ich persönlich würde so lange ich denn kann auf einen AS verzichten... - ich habe bislang noch keinen zwingenden Grund dafür gesehen - bzw. es hat mir niemand einen zeigen können.

Ich persönlich finde die xml-konfiguration von spring doch recht easy... die Konzepte hinter einem komplexen AS sind häufig schwieriger zu verstehen... vor allem hat man alles auf einmal, während du bei spring einfach komponenten hinzupacken kannst, wenn du sie brauchst...
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
M Konzeptfrage: Applicationserver, oder nicht? Allgemeines EE 4
U Groovy Scripts im ApplicationServer absichern Allgemeines EE 5
K Daten aus ApplicationServer auf Website darstellen Allgemeines EE 5
L Webanwendung oder Applicationserver Allgemeines EE 10
F Timer in einem Applicationserver laufen lassen? Allgemeines EE 4
V Unterschied zwischen Applicationserver und Servletcontainer Allgemeines EE 4
M Probleme beim Webservice Deployment(Sun ApplicationServer) Allgemeines EE 2
S Tomcat Application Path bestimmen Allgemeines EE 0
TheWhiteShadow JSF plugins für tomcat webapp Allgemeines EE 0
X Tomcat checkParachute Allgemeines EE 3
C Servlet Tomcat/Jersey findet REST-Service nicht Allgemeines EE 3
J Global JNDI Tomcat Allgemeines EE 0
N WebService WAR-File auf Tomcat-Server Allgemeines EE 1
C WebSocket in Tomcat wirft 404 Allgemeines EE 0
S Eclipse mit Tomcat und Jersey Allgemeines EE 7
S Fehlersuche in Eclipse/Tomcat -> Error-log?? Allgemeines EE 2
S Tomcat und 404 -> von jetzt auf gleich Allgemeines EE 4
L JNDI auf Tomcat mit EE Allgemeines EE 4
E Servlet Tomcat Method Signature Resolution Allgemeines EE 7
J Logging und Monitoring unter Tomcat Allgemeines EE 2
aze Tomcat:Error Pages werden nicht angezeigt Allgemeines EE 4
D JSF JSF 2.0 + ICEFaces + Tomcat 7 Allgemeines EE 3
R Sessionmanagement und Tomcat Allgemeines EE 6
W Tomcat Support mit SLA? Allgemeines EE 3
P Tomcat lädt falsche Datei obwohl richtig angegeben Allgemeines EE 11
N Tomcat funktioniert nach shutdown/startup nicht mehr korrekt Allgemeines EE 9
B Tomcat, JNDI und datasource - Konfiguartion Allgemeines EE 2
JimPanse Tomcat Fehler nach redeploy Allgemeines EE 5
A Java Tomcat findet Website nicht Allgemeines EE 8
S Anfängerfrage Eclipse/Tomcat Allgemeines EE 4
H Installer für Tomcat-Anwendung Allgemeines EE 5
A Tomcat in Eclipse Allgemeines EE 11
T Tomcat: Sessions bleiben zu lange erhalten Allgemeines EE 13
C Tomcat Zugriff auf lokale Dateien Allgemeines EE 2
A Tomcat, Exceptions beim redeploy Allgemeines EE 4
P Hilfe: Tomcat periodischer Absturz Allgemeines EE 5
MQue Tomcat reload Allgemeines EE 4
neurox Tomcat stoppen Allgemeines EE 1
S Unterschied zwischen Tomcat und Application Server? Allgemeines EE 3
MQue Tomcat PermGen Allgemeines EE 7
MQue Tomcat Methodenaufruf Allgemeines EE 3
P Eclipse Tomcat Plugin funktioniert nicht mit externem TC-Server? Allgemeines EE 4
MQue TCP- Verbindung nach Tomcat- Start (global) starten Allgemeines EE 4
reibi Tomcat Proxy eintragen Allgemeines EE 2
P CXF Project auf Tomcat laufen lassen - wie? Allgemeines EE 35
R (TOMCAT] Installation Tomcat auf WinXP Allgemeines EE 8
S Tomcat + Eclipse Allgemeines EE 6
T Security Manager in Tomcat Allgemeines EE 2
S Unterschiedliche Pfade bei Tomcat Allgemeines EE 4
ps EJB3 in Tomcat. das hat selbst mich erstaunt Allgemeines EE 18
B Tomcat Manager - .war Datei hochladen. Einfache Frage Allgemeines EE 5
G Probleme im Tomcat - loading WebappClassLoader Allgemeines EE 3
G Verbindung zu Tomcat Allgemeines EE 15
B Tomcat -> Funktions User Credentials hinterlegen Allgemeines EE 7
B fmt:setBundle => Wo liegt die Properties-Datei im Tomcat? Allgemeines EE 3
U Tomcat Compilierproblem Allgemeines EE 2
A Tomcat -- JSP: komisches Problem Allgemeines EE 11
W Speicher-Problem bei WebApp unter Tomcat, Struts, Hibernate Allgemeines EE 3
M Gelegentlicher Absturz Tomcat Anwendung: PermGen Space Allgemeines EE 6
R Error ServletContextListener auf Tomcat 6 Allgemeines EE 2
Y myFaces 1.2 und Tomcat 5.x / 6.0 Allgemeines EE 9
S tomcat session timeout - und was danach? Allgemeines EE 1
A Tomcat startet nicht, Einstellungsfehler? Allgemeines EE 3
S Auf Datei ausserhalb des Tomcat zugreifen Allgemeines EE 4
S JSP / Tomcat / Eclipse / Unable to compile class for JSP Allgemeines EE 4
E JBoss mit existierendem Tomcat nutzen? Allgemeines EE 4
M JSP: Tomcat: Serverfehler 500 nur beim IE. Allgemeines EE 2
G JSF 1.2 unter Netbeans 6 mit Tomcat 6.0 ->Navigationsprob Allgemeines EE 6
O eclipse - tomcat: Problem bei einfachem Webservice Allgemeines EE 16
L Tomcat Service mit JPDA debugging starten Allgemeines EE 2
J Tomcat: "Unable to get connection, DataSource invalid&q Allgemeines EE 8
A web.xml für Servlet in Tomcat 5.5 erstellen Allgemeines EE 2
F Tomcat: zentraler Class-Ordner? Allgemeines EE 2
A web.xml für Servlet in Tomcat erstellen Allgemeines EE 6
T Tomcat: JNDI + JDBC Problem Allgemeines EE 3
N Zugriff auf Webapp nur für localhost definieren (Tomcat) Allgemeines EE 2
byte Tomcat Deployment Problem (HTTP Status 503) Allgemeines EE 8
H Tomcat, MySQL Allgemeines EE 4
B tomcat verbergen Allgemeines EE 3
M classNotFoundexception vom tomcat Allgemeines EE 10
B Liferay + Tomcat Allgemeines EE 4
K tomcat: session-unabhängiges speichern Allgemeines EE 3
G Tomcat übersetzt nichts mehr Allgemeines EE 6
M tomcat beim booten mit starten Allgemeines EE 4
F Serverdienst in Tomcat implementieren Allgemeines EE 14
J Tomcat mit eigener Session-Implementierung Allgemeines EE 15
V tomcat 6 webserver oder was ist sein Sinn? Allgemeines EE 3
G eigener Tomcat-Connector f. propiet. Protokoll via TCP/IP Allgemeines EE 2
J wsdl-tomcat-AXIS Allgemeines EE 2
G Tomcat unter Eclipse starten Allgemeines EE 9
F Tomcat mit 128 MB Ram Allgemeines EE 9
C Unable to query Tomcat Manager: couldn't connect to host Allgemeines EE 2
A Cronjob mit Tomcat starten ? Allgemeines EE 4
B Connection Poll ohne TomCat Allgemeines EE 5
N Tomcat GWT-Anwendung - An beliebiger Stelle schreiben Allgemeines EE 2
E Tomcat Einstellungen Allgemeines EE 10
B Servlet-Api.jar auf JBoss? (Migration von Tomcat zu JBoss) Allgemeines EE 4
H Eine kurze Verständnisfrage zum Tomcat Allgemeines EE 2
S Hibernate, Tomcat und Eclipse treiben mich zum Wahnsinn. Allgemeines EE 2
F webanwendung läuft nicht auf Tomcat Allgemeines EE 2

Ähnliche Java Themen

Neue Themen


Oben