Moin,
ich habe hier eine (funktionierende) Web-Anwendung, wozu es jetzt allerdings einen Destkop-Client geben soll, mit dem sich die Kernfunktionalitäten benutzen lassen. Mein Problem ist, dass dies am Anfang nicht vorgesehen war und somit bei der Entwicklung auch nicht berücksichtigt wurde. Allerdings befinde ich mich in der glücklichen Lage, dass ich genügend Zeit habe, um die Web-Anwendung grundlegend zu ändern.
Ein zweiter Punkt der hinzugekommen ist: wenn die Anwendung eh schon umgeschrieben werden soll, dann doch bitte so, dass sie auch verteilt auf mehreren Rechnern laufen kann, so dass genügend Spielraum zur Skalierung zur Verfügung steht, sollte die Web-Anwendung doch irgendwann mal ein gewisses Maß an Benutzeraktivität überschreiten.
Meine Frage ist nun: wie setze ich das am besten um?
Da die Anwendung bisher rein Servlet-basiert ist, wird bisher auch kein AS benötigt. (Als Container kommt Tomcat zum Einsatz). EJBs scheinen zwar mit der 3er Spezifikation wesentlich einfacher geworden zu sein, aber irgendwie konnte ich mich mit diesem Gedanken noch nicht ganz anfreunden (auch bezüglich der höheren Hardware-Anforderungen).
Also habe ich mir zunächst Webservices angeschaut. Besser gesagt den Platzhirschen: Axis2. Aber mein erster Versuch, einen Webservice zu basteln, der einen einfachen String zurückgibt, dauerte geschlagene 3 Stunden. Und bei meiner Suche nach einer Alternative kam auch immer wieder das Argument, dass Axis doch recht langsam sei.
Während meiner Suche bin ich dann noch auf XFire, XINS, JWSDP und JAX-WS gestolpert. Nur einen direkten Vergleich bezüglich Stärken und Schwächen konnte ich nicht finden. Zur Zeit schwanke ich irgendwie zwischen XFire und XINS. Da ich aber keine Ahnung habe, dachte ich, dass mir hier jemand vielleicht einen Rat geben kann.
Zusammenfassend suche ich eine Möglichkeit, womit ich meine Web-Anwendung skalierbar machen und die Kernfunktionalitäten anderen zur Vergügung stellen kann. Und das möglichst einfach! Zeit und Technologien spielen dabei (fast) keine Rolle (bin z.B. an keine Java-Version gebunden).
Hoffe ich bekomme hier ein paar helfende Antworten, da ich das Gefühl habe, dass SOA in aller Munde ist, aber keiner wirklich darüber bescheid weiß :-/
ich habe hier eine (funktionierende) Web-Anwendung, wozu es jetzt allerdings einen Destkop-Client geben soll, mit dem sich die Kernfunktionalitäten benutzen lassen. Mein Problem ist, dass dies am Anfang nicht vorgesehen war und somit bei der Entwicklung auch nicht berücksichtigt wurde. Allerdings befinde ich mich in der glücklichen Lage, dass ich genügend Zeit habe, um die Web-Anwendung grundlegend zu ändern.
Ein zweiter Punkt der hinzugekommen ist: wenn die Anwendung eh schon umgeschrieben werden soll, dann doch bitte so, dass sie auch verteilt auf mehreren Rechnern laufen kann, so dass genügend Spielraum zur Skalierung zur Verfügung steht, sollte die Web-Anwendung doch irgendwann mal ein gewisses Maß an Benutzeraktivität überschreiten.
Meine Frage ist nun: wie setze ich das am besten um?
Da die Anwendung bisher rein Servlet-basiert ist, wird bisher auch kein AS benötigt. (Als Container kommt Tomcat zum Einsatz). EJBs scheinen zwar mit der 3er Spezifikation wesentlich einfacher geworden zu sein, aber irgendwie konnte ich mich mit diesem Gedanken noch nicht ganz anfreunden (auch bezüglich der höheren Hardware-Anforderungen).
Also habe ich mir zunächst Webservices angeschaut. Besser gesagt den Platzhirschen: Axis2. Aber mein erster Versuch, einen Webservice zu basteln, der einen einfachen String zurückgibt, dauerte geschlagene 3 Stunden. Und bei meiner Suche nach einer Alternative kam auch immer wieder das Argument, dass Axis doch recht langsam sei.
Während meiner Suche bin ich dann noch auf XFire, XINS, JWSDP und JAX-WS gestolpert. Nur einen direkten Vergleich bezüglich Stärken und Schwächen konnte ich nicht finden. Zur Zeit schwanke ich irgendwie zwischen XFire und XINS. Da ich aber keine Ahnung habe, dachte ich, dass mir hier jemand vielleicht einen Rat geben kann.
Zusammenfassend suche ich eine Möglichkeit, womit ich meine Web-Anwendung skalierbar machen und die Kernfunktionalitäten anderen zur Vergügung stellen kann. Und das möglichst einfach! Zeit und Technologien spielen dabei (fast) keine Rolle (bin z.B. an keine Java-Version gebunden).
Hoffe ich bekomme hier ein paar helfende Antworten, da ich das Gefühl habe, dass SOA in aller Munde ist, aber keiner wirklich darüber bescheid weiß :-/