Subject: Re: corba or sockets?
From: Erik Naggum <erik@naggum.net>
Date: 30 Oct 2000 13:22:04 +0000
Newsgroups: comp.lang.lisp
Message-ID: <3181900924130896@naggum.net>

* Philip Lijnzaad <lijnzaad@ebi.ac.uk>
| Unless the communication involves simple but big data (kind of like ftp,
| say), use CORBA, by a very long shot.  

  Really?  I'd use CORBA for fairly simple stuff and roll my own if I
  get above a fairly low complexity threshold, but I know I'm about
  three orders of magnitude better at protocol design than the CORBA
  team could ever dream of becoming.  For instance, CORBA is a single-
  threaded protocol, with lock-step properties where you wait for the
  answer before you continue with the next transaction.  This is of
  course a consequence of serial computations and CORBA being a very,
  very slow way of doing serial computations on disjoint processes and
  processors. 

  With all this hoopla about multi-threading and other uses for real
  and pseudo-parallelism, you might expect people to think through the
  multi-threading implications of their protocols.  The hardware folks
  are gung-ho about _real_ parallelism, trying very hard to answer the
  demand for faster on-chip communication, but then what do we get in
  the software world?  People who use all this new hardware power only
  to wait for ages for incoming data before they turn around _real_
  fast to send something that did not even need to wait for that value
  and then proceed to wait for ages, again, only because the protocol
  is designed by a committee of morons?

  If you cannot deal with multiple objects "on the wire" and are not
  using the bandwidth at full throttle even while you _are_ waiting
  for something to come in, you are not programming in the dynamic,
  networked world of the new millennium.  (How's that for buzzwords?)

  E.g, how many applications do you know which continue to work just
  as well if you move one of the computers 3000 miles away?  Do you
  think CORBA handles this situation well?  From what I have seen, the
  application grinds to a virtual stand-still.  Latencies higher than
  a few millisecond cause all sorts of interesting behavior in modern
  software.  It's pretty pathetic that such things are touted as
  workable solutions.
  
#:Erik
-- 
  Does anyone remember where I parked Air Force One?
                                   -- George W. Bush