TECHNOLOGIES
FORUMS
JOBS
BOOKS
EVENTS
INTERVIEWS
Live
MORE
LEARN
Training
CAREER
MEMBERS
VIDEOS
NEWS
BLOGS
Sign Up
Login
No unread comment.
View All Comments
No unread message.
View All Messages
No unread notification.
View All Notifications
Answers
Post
An Article
A Blog
A News
A Video
An EBook
An Interview Question
Ask Question
Forums
Monthly Leaders
Forum guidelines
Niels_H
NA
5
0
Remoting: Serializing datasets (or datatables for that matter)
May 24 2005 3:44 PM
Hi ! I'm new to .NET so please forgive my possible misunderstandings. I have made a remoting service, supporting a MarshalByRefObject which delivers a datatable I(or dataset) from an ODBC connection to a Progress database. This works fine, but the overall performance makes me wonder about the serialization process, and if I'm setting things up correctly. I have compared the service to both a ASP.NET based service (providing the exact same data, using the exact same connection etc) and to a direct client connected ODBC, again with the same database logic. What confuses me a bit, is that where the client connected version gives a much better response than the ASP.NET (not surprisingly) it seems that the remoting version only gives a slightly better performance than the ASP.NET. This is a surprise to me, as the ASP.NET service spends a lot of networking ressources, transmitting an XML serialization of the dataset, whereas the remoting version shoul stay inside the binary domain, thus expectedly working much faster. (I use the tcp channel and a BinaryChannelServer- (and client-) SinkProvider. What even confuses me more is that Progress' Open Edge (the 4GL of Progress) offers me the opportunity to make a proxy, based on some native Progress code running on an AppServer, providing the exact same data once again as a .NET datset. Given that the ODBC connection itself works (almost) as fast as the native progress dataretrieval (which it does), the performance of the Proress Proxy should compare to the remoting, as they both do almost the same thing (the Progress Proxy is a DLL that you use as a reference in your project, the same way you use a .NET remoting proxy) but the Progress proxy more than halves the responsetime compared to the remoting service. I have tried to use the [serialiable()] option and even tried implementing the ISerializable interface on the MarshalByRefObject but it changes nothing. Am I overlooking some serialization/deserialization issue here ? Thanx in advance
Reply
Answers (
0
)
close 'X' button event question
Display information