Win a copy of The Little Book of Impediments (e-book only) this week in the Agile and Other Processes forum!
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic

general architecture question

 
Walter Vetrivel
Ranch Hand
Posts: 80
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
An application accepts input from a user and invokes a function on a server. The client knows where the server resides and the client can be implemented on any platform. The client cannot continue processing until the server has returned. Application development productivity is more of a concern than end user application performance. The server code is implemented in C. What middleware solution BEST fits this situation?

a) Servlets

b) CORBA

c) RMI

d) EJBs
 
John Wetherbie
Rancher
Posts: 1449
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
I'd say b, CORBA. At least that's what I remember choosing when I took the ICE test.
John
 
Vishakha Ahuja
Ranch Hand
Posts: 191
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Hi John,
Can you please give a reason as to why you chose b.
 
Danl Thompson
Ranch Hand
Posts: 93
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
B is the right answer here. The server code is written in C and the clients can be implemeneted on any platform.
Clearly an RMI solution will not fly when talking to a server written in C. RMI requires java on both sides.
Likewise EJB would like to talk to other java clients via RMI-IIOP, and will have trouble talking to the server.
Servlets are interesting, but again, won't talk directly to a legacy server written in C.
CORBA is a solution for integrating heterogeneous systems.
dan'l
 
John Wetherbie
Rancher
Posts: 1449
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Dan'l covered it very well.
John
 
Mark Donaghue
Greenhorn
Posts: 29
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
An interesting subtlety here is you could suggest that since the you're using IIOP as the underlying transport protocol, why shouldn't the client be able to talk the C code on the server? After all, isn't the point of moving from RMI-JRMP to RMI-IIOP to allow a pure java solution to talking with non-java code? Unfortunately, RMI-IIOP supports only a subset of IIOP and so doesn't necessarily provide whatever piece of IIOP that particular client needs to run as a distrubted service. A good link explaining this is at: http://www.javaworld.com/javaworld/jw-12-1999/jw-12-iiop_p.html
Regards,
Mark


[This message has been edited by Mark Donaghue (edited April 27, 2001).]
 
Danl Thompson
Ranch Hand
Posts: 93
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
You're right. In a two tier solution, I suppose it could. But the question asks for a middleware solution.
 
Giri Prasad
Ranch Hand
Posts: 56
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Hi
This is an interesting post
After reading this and the article mentioned in java world I have a question.
What if the given question has Java IDL as one of it's options? Do u guys say saying CORBA or JAva IDL is the same as Java IDL is nothing but an ORB or do one has advantage over other(interms of client being a java etc)?
Thanks
 
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic