# Eine Frage zum Thema Applikationsaufbau



## pricey (19. Okt 2007)

Hallo,
ich beschäftige mich seit kurzem mit J2EE Architekturen und bin nun auf eine Frage gestoßen, die ich nicht wirklich mit Erfahrung beantworten kann.
Die Frage vorweg: Kann es sinn machen Teile meiner Applikation als natives Java und nicht im APplication copntainer laufen zu lassen? Entstehen dabei Vor-/ Nachteile?

Nun zur Architektur:
Ich habe ein Frontend, dass in einem Application Server (Tomcat) läuft, die Web-Applikation beinhaltet auch die UI Services. Diese sind mit dem Spring wiring ans Backend gekopplet, und das Frontend kommuniziert also mit dem Backend über RMI.

So mal ganz kurz zu meinen Gedanken. Die kleine Demo-Applikation läuft so eigentlich hervorragend, aber nun frägt sich aus was passiert, wenn hohe Last zu erwarten ist. hat da das native Java Backend Nachteile gegenüber einer J2EE Applikation. Was ist noch am gewählten Ansatz kritisch? Als Vorteil sehe ich klar die portierbarkeit, das backend läuft auf jedem System, dass eine JRE installiert hat.
Wäre nett, wenn Ihr mir ein paar Einschätzungen geben könntet.
pricey


----------



## ms (19. Okt 2007)

Was macht das Backend genau? Datenbankzugriffe? (Transaktionen?)
Was für Mechanismen hat deine Applikation in Bezug auf Lastverteilung?
Und was verstehst du unter Portierbarkeit?
Was für Gründe sprechen dafür, dass das Backend nicht in einem Applikationserver laufen soll?

ms


----------



## pricey (19. Okt 2007)

Hi again,
das Backend beinhaltet die ganze Logik der Webapplikation und greift über eine Hibernate auf eine Datenbank zu. Wenn ich ehrlich bin habe ich mir über Lastverteilung noch keine große Gedanken gemacht, ist aber ein gutes Stichwort und ich werde erst mal etwas googlen. Wenn es zu einem Clustering kommen würde, würde ich es auf JVM Ebene mit Terracotta machen.


> Was für Gründe sprechen dafür, dass das Backend nicht in einem Applikationserver laufen soll?


Dies ist ja auch meine Frage. Vielleicht gibt es Gründe bezüglich Performance, Overhead, ... die Applikation eben nicht im Application Server laufen zu lassen.
Grüße
pricey


----------



## Ralf Ueberfuhr (21. Okt 2007)

Prinzipiell ist es eher andersherum. Der Application Server stellt Dienste bereit, die deine Anwendung nutzen kann. Somit kannst du die Enterprise-Kriterien einfacher erfüllen.
Allerdings ist TomCat kein Application Server, sondern nur ein Webcontainer.


----------

