Re: Storing data periodically on remote server
- From: Lew <noone@xxxxxxxxxxxxx>
- Date: Tue, 07 Oct 2008 22:31:54 -0400
Peter D. wrote:
I don't know if connecting to the DB directly is a good idea. I would
recommend creating a web service to accept the data instead. The
client will connect to the web service and send the info. The server
side web service will then connect to the DB and do what it needs to
do.
With a web service you can even give your clients the option of coding
their own solutions with any language. Also, it gives you free reign
on your DB server since the web service will abstract it from the
users. If you want to change DBMS you just need to modify the web
service and not every single client.
I think providing a standard web service interface is the way to go.
I started reading this dubiously, but came around as I pondered.
Web services are a little tricky. I've worked on some Axis + Java projects, and it can get quite sophisticated if you let it. One needn't let it. Develop simple, straightforward services, at least at first, specified nicely in WSDL. You'll need to learn a little about XSD schema, but not much more than to declare namespaces everywhere and use the standard schema types.
There definitely is a learning curve, although Axis at least tries to make the entry barrier quite low. The benefit of thinking of your system as a group of services is incalculable. Never mind the "web" part, the cooperating-service model is good to know.
While 100 clients pulsing once every ten seconds is not actually a very demanding scenario, it still benefits from a web-service architecture, properly constructed. I don't even think it's much harder to conceive than a more monolithic local app would be.
For example, Peter's suggested data-delivery service would be quite monomaniacal. It would understand the data needs, in terms of the problem domain of course, but only as relevant data. It wouldn't care what the client code logic does with that data. Just concentrate on how to get to the data store and construct the desired response. The clients would remain ignorant of the dirty details - as Peter says, they have been abstracted.
Application development shifts to a mentality of pulling needed action or information from services that are lying around awaiting activation.
Web services are a relatively easy way to get into service architecture, not only as a programmer but in that you can deploy on as little as Tomcat.
Deployment turns out to be the bitch.
--
Lew
.
- Follow-Ups:
- Re: Storing data periodically on remote server
- From: Arne Vajhøj
- Re: Storing data periodically on remote server
- References:
- Storing data periodically on remote server
- From: carmelo
- Re: Storing data periodically on remote server
- From: Peter D.
- Storing data periodically on remote server
- Prev by Date: Re: Java quick starter
- Next by Date: Re: Java quick starter
- Previous by thread: Re: Storing data periodically on remote server
- Next by thread: Re: Storing data periodically on remote server
- Index(es):
Relevant Pages
|