For using dolphin for developing fat clients for server apps, what options
are there available currently to connect to an esisting server side? Interesting are mainly CORBA and DCOM, although it is feasible to install a server component written in dolphin as well. In the latter case, we need only some means of high level remote communication between two dolphin processes. It should be high level, though (passing objects by ref, by value etc.). Ciao ...Jochen |
Jochen,
> For using dolphin for developing fat clients for server apps, what options > are there available currently to connect to an esisting server side? > Interesting are mainly CORBA and DCOM, although it is feasible to install a > server component written in dolphin as well. In the latter case, we need > only some means of high level remote communication between two dolphin > processes. It should be high level, though (passing objects by ref, by value > etc.). I strongly urge you to stay clear of DCOM. It seems great until you hit a real network, and then its error handling will cause you ongoing grief. I worked with at least three CORBA ORBs, and all of them shamed DCOM - even/especially the free one. The "cool" answer right now is web services and XML marshaling. They might be the right answer, but I am quite skeptical. XML is, well, not compact :) Not to impugn SIXX, but in one example I checked recently, it produced a roughly ten times longer output than Squeak's SmartReferenceStream. In an unrelated test, the latter did not compare well to Dolphin's binary filer. However, my work with SIXX and SmartReferenceStream has been limited to persisting fairly complicated objects. There is nothing distributed about the problem (it's for that MIDI thing that I've mentioned elsewhere), but the objects involved are just the kind that one would want to reference vs. send by value. That's a long way of saying that the inefficiencies of XML might not bother you, and there are (based only on casual review) some nice efforts at providing web services in both Dolphin and Squeak. Still, my long-term bet is on CORBA/IIOP, avoiding all services (except the naming service). The bad news is that we don't have a CORBA binding for Dolphin. Forgetting the complexities of an IDL parser and stubber, one might get a big boost by using ILU (or some other project's) sources to cobble together header files that could in turn yield a type library and (courtesy of the type library analyzer), structure classes. Then what? That makes two of us :) Have a good one, Bill -- Wilhelm K. Schwab, Ph.D. [hidden email] |
"Bill Schwab" <[hidden email]> wrote in message
news:aufqei$hna$[hidden email]... > Still, my long-term bet is on CORBA/IIOP, avoiding all services (except the > naming service). The bad news is that we don't have a CORBA binding for > Dolphin. Forgetting the complexities of an IDL parser and stubber, one > might get a big boost by using ILU (or some other project's) sources to > cobble together header files that could in turn yield a type library and > (courtesy of the type library analyzer), structure classes. Then what? > That makes two of us :) Bill, we run our trading system on top of CORBA orb (with private ESIOP), but unfortunatley chances of ZSE releasing it are close to zero. Maybe creating one independently would not be a bad idea if there is enough interest, but finding time to do it would be a non trivial problem :) Here is also one thing that could make it at least a bit simpler at the begining: I would, at least for the start use external idl and interface repository. There are quite a few usable ones, and some of them are free. This will simplify implementation since it would not be necessary to do idl parsing, etc.. However, I would need to see if idl pragmas necessary for smalltalk can be easily implemented in this scenario. rush -- http://www.templatetamer.org/ |
In reply to this post by Bill Schwab
"Bill Schwab" <[hidden email]> wrote in
news:aufqei$hna$[hidden email]: > Not to impugn SIXX, but in one example I checked recently, > it produced a roughly ten times longer output than Squeak's > SmartReferenceStream. That's at least partly because SIXX seems to encode very inefficiently, rather than just XML's ineffiency. Form a quick look, SIXX seems the equivalent of an ASCII encoding that uses only the letter 'A' ... P. |
In reply to this post by Bill Schwab
> That makes two of us :)
Hum, does not sound too promising ;-). The absence of a CORBA interface or at least a built in proprietary (but somewhat efficient) remote interfacing is really a pitty, as all the other features of Dolphin make it excellent for fat client development. I will play with the dolphinharbour stuff for now, as I have currently not enough time to start a project on this. Thanks for all the infos! Ciao ...Jochen |
In reply to this post by Bill Schwab
Hi Jochen,
Spray does not provide any ORB facilities; it is service based, effectively a client can only send a request to a single service object. Masashi Umezawa's SoapOpera for Squeak contains an ORB which could be ported to Spray to provide an ORB via SOAP. I recently came across some goodies from the Smalltalking group at: http://www.smalltalking.net/Goodies/Dolphin/ The Remote Smalltalk package sounds like it could do what you need. Thanks, Steve -- Steve Waring Email: [hidden email] About: http://www.dolphinharbor.org/dh/harbor/steve.html Journal: http://www.stevewaring.net/blog/home/index.html |
Hi Steve...
> The Remote Smalltalk package sounds like it could do what you need. Wow, cool! Thanks for the link :-) Ciao ...Jochen |
Free forum by Nabble | Edit this page |