ROFL, did you copy/paste this from a Slasdot post or something?
'M$', indeed.

Signature
Klaus H. Probst, MVP
http://www.simulplex.net/
> Hi all,
>
[quoted text clipped - 46 lines]
>
> Chaz
Chaz - 09 Dec 2005 10:40 GMT
I wish, spent 40minutes typing up that mail :) I also read SlashDot a bit
;)
Any ideas on how I can move forward with choosing my technology Klaus or
anyone else ?
Chaz
> ROFL, did you copy/paste this from a Slasdot post or something?
>
[quoted text clipped - 50 lines]
>>
>> Chaz
Hi Chaz,
>> Ive used Web Services in anger for over 4 years since M$ SOAP Toolkit v1,
>> Ive never used remoting
The first "real" argument... use the technology you (and your team) feel
comfortable with.
> Web Service Downs...Remoting Ups
>> Compared to Remoting Im told they are slower (serialise and deserialise I
>> guess) and have seen a few Microsoft articles that state the difference
>> is actually negligable
Do you have performance related acceptance criteria? How do these measure up
against these two technology options?
>> Web Services are Stateless, as I understand it it would be much easier
>> for our developers to have Stateful remoting objects as our application
>> is highly object driven and complex as well as data centric
Stateful designs requires server resources, how many concurrent users do you
have? Stateful doesn't work well in server farms and for this reason doesn't
scale up/out well. You should prefer a stateless design server-side.
> The general advice seems to be that if you are controlling the desktop use
> remoting, otherwise use web services, but which is going to best for
> moving to Indigo ?
Web Service Enhancements (WSE) 3.0 offers the migration path towards Indigo.
> I was also planning to use custom objects and collections rather than
> datasets, then a colleague told me about using binary XML datatables,
> apparently they are a good DTO if you are using web services.
You should prefer XML since it offers maximal interoperability. Share schema
and contract, not class (do not put a System.Data.DataTable type on the
wire). To efficiently transport high volume XML over the wire, use MTOM.
MTOM enables interoperable solutions to transmit binary data as part of a
SOAP message.
Best regards,
Paul Gielens
Visit my blog @ http://weblogs.asp.net/pgielens/
###
Chaz - 11 Dec 2005 16:01 GMT
First of all thankyou for your insights Paul, your comments are very
valuable to me.
> Do you have performance related acceptance criteria? How do these measure
> up against these two technology options?
Not as such, although our software is used in a call centre environment
where every second counts to the operators in that environment.
> Stateful designs requires server resources, how many concurrent users do
> you have? Stateful doesn't work well in server farms and for this reason
> doesn't scale up/out well. You should prefer a stateless design
> server-side.
Is it fair to say that using stateful designs is always a big no-no,
regardless of whether I select the remoting or web service options, does
that include any use of ASP Session State in the case of Web Services ? -
If thats the case doesnt that mean much more data has to pass between the
server and client to maintain state between operations ?
> Web Service Enhancements (WSE) 3.0 offers the migration path towards
> Indigo.
I was hoping you would say that, I have just started playing with WSE 3 and
am looking at MTOM
Thanks again for you advice Paul, can you recommend any good source code
examples of using these technologies the way you describe in a SmartClient
environment, I already have TaskVision, IssueVision and some of the M$ 24/7
series but find them pretty hard to follow.
Chaz
=========================================================
> Hi Chaz,
>
[quoted text clipped - 43 lines]
> Visit my blog @ http://weblogs.asp.net/pgielens/
> ###
Paul Gielens - 11 Dec 2005 20:32 GMT
Hi Chaz,
> First of all thankyou for your insights Paul, your comments are very
> valuable to me.
Thanks!
>> Stateful designs requires server resources, how many concurrent users do
>> you have? Stateful doesn't work well in server farms and for this reason
[quoted text clipped - 4 lines]
> regardless of whether I select the remoting or web service options, does
> that include any use of ASP Session State in the case of Web Services ?
It's always a tradeoff. With a stateless design you need to decide where to
persist state outside of the service so that it can be retrieved on a per
request basis, typically a database.
> If thats the case doesnt that mean much more data has to pass between the
> server and client to maintain state between operations ?
Yes. How does the data volume messure up against the server-side
computing/processing cost? This also depends on the service- and
datacontract... fine/coard grained.
> Thanks again for you advice Paul, can you recommend any good source code
> examples of using these technologies the way you describe in a SmartClient
> environment, I already have TaskVision, IssueVision and some of the M$
> 24/7 series but find them pretty hard to follow.
Actually (unfortunately no example code) I used Neo
(http://neo.codehaus.org) in a smart client application. Neo stores the
context of your application, how obvious, in a ObjectContext object. The
ObjectContext can work disconnected and be serialized to XML. You can then
send the whole context as XML across the wire and let the service persist it
in a data store. An alternative is to map the context to data transfer
objects (DTO) consumed by the service. I know ThoughtWorks (the creators of
Neo) have experience building smart client application with Neo. Please ask
your questions here user@neo.codehaus.org. To subscribe send an empty mail
to user-subscribe@neo.codehaus.org and follow the instructions.
Best regards,
Paul Gielens
Visit my blog @ http://weblogs.asp.net/pgielens/
###
Chaz - 12 Dec 2005 17:55 GMT
Funny you should mention NEO its one I have had a play with, I have looked
at many ORM frameworks including NEO, but have so far found IDEABLADE
DevForce to be one of the most feature rich environments, Im having trouble
finding out how much it costs though.. Stangely enough it seems to use
Remoting as its preferred Internet connectivity.
> Hi Chaz,
>
[quoted text clipped - 44 lines]
> Visit my blog @ http://weblogs.asp.net/pgielens/
> ###
sdurity@cornercap.com - 20 Dec 2005 19:02 GMT
I agree. Take a look at DevForce from IdeaBlade (www.ideablade.com).
They have have put lots of work into the remoting aspect of their
framework. And it can work in a disconnected state (and then
replicate), if that matters for your application. I use the ORM and
DataBinding parts of the framework which have been very helpful. Smart
folks over there.
Pricing is pretty reasonable on a developer basis. Server-based pricing
is still evolving, IMO, so work with them on it.