Re: I've been lazy
On 15 Jul., 17:04, lewbloch <lewbl...@gmail.com> wrote:
On Jul 15, 12:59 am, Ross <rossclem...@gmail.com> wrote:
I've just written a client/server application. Usually when I do this,
I have to spend some time getting the protocols right, with hung
clients or servers being a typical alpha debugging scenario. This time
I just decided that all communications from the client were a single
string (encoded and sent encrypted with the server's public key).
Where usually I'd have a sequence of steps for operations that require
multiple bits of data, I just encoded all data into the single string,
and the server unpacks them, executes the command potentially using
unpacked data, and then replies with a single packed string. This was
much easier than having multi-step protocols.
Next time I'm defining an XML schema for requests and replies to make
this even more robust/general.
Apologies for the stream of consciousness question-less post.
This isn't a help desk but a discussion group, so your introduction of
a discussion topic is entirely appropriate. Sounds like RESTful
services or other XML-based communication protocols. Since there are
plenty of robust, standard libraries for this out there, you might
seriously want to use those. It's hard enough to master the
deployment and ops details without reinventing the programming wheels.
Another thought that came to mind when reading the original posting:
if both client and server are Java and there is zero chance that other
languages need to be supported RMI might be a good choice, too. RMI
avoids to manually do the parsing process. If other languages need to
be supported then CORBA's IIOP is also a good fit - especially since
it is less verbose than XML (and maybe also RMI). Granted, nowadays
XML and SOAP / WS are hip and there are plenty tools around (and also
debugging of ASCII based messages is easier) so that's probably the
most reasonable way to go.
Kind regards
robert