Laden...

Interop .NET Java, Java .NET

Erstellt von KRAFT vor 18 Jahren Letzter Beitrag vor 18 Jahren 2.810 Views
K
KRAFT Themenstarter:in
14 Beiträge seit 2005
vor 18 Jahren
Interop .NET Java, Java .NET

Ich möchte mich darüber schlau machen, allerings habe ich nicht geringsten Schimmer wo nach ich googlen muss:

Gibt es Tools/Lösungen um (quasi wie eine ActiveX-Komponente) Java in .NET einzubetten, bzw. umgekehrt.
Mir schwebt etwas vor, das die Interaktion zweier Applikationen ermöglicht, allerings performanter ist als Webservices. 8o

Es wäre super wenn mir jemand ein paar Stichwörter zuwirft, bzw. sagt, dass es sowas garnicht gibt 😜

Erfahrungen?

S
8.746 Beiträge seit 2005
vor 18 Jahren

Das Stichwort dazu heisst CORBA.

Da gibt es auch Komponenten, Discovery Services, Verschlüsselung, Transactions, etc.!

Läuft auf so gut wieder jeder Plattform und ist im Vergleich zu WebServices eine schwergewichtige Lösung. Performt deutlich besser als WebServices, weil binär serialisiert wird.

Es gibt für .NET wohl eine freie Implementierung , von Borland gibt es eine .NET-Bridge (Janeva).

Unter Java können Corba-Komponenten in den allermeisten J2EE-Servern gehostet werden. Unter Windows brauchst du spezielle Corba-Server, ggf. gibt es aber auch Implementierungen, die das als COM+-Objekte hosten. Da kenne ich mich aber nicht aus.

Nachteil von Corba: Geht nicht über Port 80 (weil kein HTTP), sondern einen anderen Port. Das bringt in Unternehmensnetzwerken u.U. Firewall-Probleme mit sich (müssen freigeschaltet werden, wogegen sich IT-Abteilungen IMMER sperren).

WebServices ist u.a. deswegen entstanden, weil mit Corba dieses Problem nicht aus dem Weg zu schaffen war.

Mit WebServices kann man dagegen jede Firwall-Security einfach aushebeln. Deswegen sind sie so beliebt. 🙂

Aber eines sei gesagt: Es handelt sich hier NICHT um visuelle (clientseitige) Komponenten, sondern serverseitige Komponenten.

Für visuelle Komponenten gibt es sowas, wie du es dir wünschst NICHT.

Mit Corba implementiert man Geschäftslogik auf Applikationsservern. Es wird in 3+-Architekturen eingesetzt.

K
KRAFT Themenstarter:in
14 Beiträge seit 2005
vor 18 Jahren

Ich danke Dir! 👍

S
8.746 Beiträge seit 2005
vor 18 Jahren

Wenn Performance eine wichtige Rolle spielt, dann suche mal nach Vergleichen. Wir haben damals in einem Projekt extra den Borland-ORB eingesetzt. Der konnte in gleicher Zeit dreimal so viele Methoden transportieren wie alle anderen ORBs auf dem Markt. Ansonsten sollte man schauen, dass die Infrastruktur, die der ORB bereitstellt zur Anwendung paßt. Wenn du z.B. eine hochskalierbare Lösung brauchst, dann sollte der ORB bereits Lastverteilungsmechanismen haben (der ORB startet dann mehrere Komponenten parallel). Wenn du im J2EE-Umfeld hostest, dann geschieht das aber transparent durch den J2EE-Server. Schön ist auch, wenn der ORB Fail-Over-Mechanismen unterstützt.

Angeblich soll es sogar jetzt Real-Time-Corba geben. Für manche Anwendung auch recht ineressant (Telekom-Vermittlungsstellen oder so).

Bei der Architektur gilt im Prinzip gleiches wie bei WebServices: Greife niemals auf Attribute eines Objektes zu (performt nicht), sondern übertrage immer das ganze Objekt und arbeite dort mit der Kopie.

Schön ist auch, wenn der ORB Services bietet wie Messaging und Events/Notification.

Und noch eins: Gute ORB machen das IPC zwischen zwei lokalen Prozessen transparent über Shared Memory (o.ä.). Das steigert die Performance gegenüber IP natürlich enorm. Sollte der ORB ebenfalls unterstützen.

K
KRAFT Themenstarter:in
14 Beiträge seit 2005
vor 18 Jahren

Das klingt sehr interessant. In diese Richtung muß ich unbedingt weiter lesen ...
Danke sehr!

Ich möchte mich erstmal nur allgemein informieren, da die Anforderungen noch nicht ganz klar sind. Jetzt werde ich in all diese Richtungen googlen!

S
8.746 Beiträge seit 2005
vor 18 Jahren

Noch eins: Achte darauf, dass dein ORB Corba 3.0 vollständig implementiert. Erst dann bekommst du bestimmte QoS auf denen deine Applikation sicher aufsetzen kann und vor allem das Komponentenmodell mitgeliefert, welches für die nahtlose Integration in J2EE-Server notwendig ist. Ansonsten ist die Integration in Server proprietär und du bekommst Probleme, wenn du den ORB oder den J2EE-Server austauscht.