« Previous day (Apr 7, 2008) | Main | Next day (Apr 9, 2008) »
 20080408 Tuesday April 08, 2008

CORBA/IIOP - the "new" link for RIAs? It should take off in the next years ...again.

CORBA / IIOP is somehow negatively associated. This is caused probably by too many ambitious and mostly inefficient "enterprise" projects several years ago. CORBA was no only used as a protocol, but was extended to specific domains (domain facilities) and components (CORBA Component Model). Because of the mistakes in the past, many developers associate CORBA with inefficiency. The effect: IIOP almost completely disappeared from the enterprise space (it was even "forgotten" in the EJB 3.0 spec) and re-appeared in ...embedded projects. CORBA is really popular in the embedded area because of its efficiency (:-)) and interoperability. 

In my last three projects, we relied on CORBA, as a co-accident:

  1. We had to optimize SOAP and got rid of it :-). We used .net-iiop instead (a great opensource framework). We could increase the performance significantly.
  2. We used IIOP as a lightweight and portable (appserver-independent) callback mechanism. In this case we replaced JMS with CORBA.
  3. XA-transactions mostly rely on OTS (object transaction service), and so CORBA...
  4. EJB 2 used RMI-IIOP as default communication-mechanism. It worked really well - they were no problems, at least not in the communication layer :-)

IIOP can be really efficient and easy to develop and to use. The IDL definition is somehow tedious, but it could be easily replaced with annotated interfaces (this is actually a great idea for an open source project :-)). Then we could introduce a new acronym: POCO - it would stand for Plain Old Corba Object :-)
 

IIOP would be (actually is) a great extension for the "Consumer JRE" and so for desktop applications.

Gesendet von admin [Java EE 5 Architectures And Idioms] ( April 08, 2008 07:11 AM ) Permalink | Kommentare [6]
[my website] [This entry is based on / extends my books: Enterprise Architekturen, Leitfaden fuer effiziente Software-Entwicklung and: Java EE 5 Architekturen, Patterns und Idiome]




License
Creative Commons License
This work is licensed under a Creative Commons Attribution-NonCommercial-NoDerivs 2.0 License.