Performance dog

  • Thread starter Thread starter Guest
  • Start date Start date
G

Guest

I am using .net remoting and IIS to get datasets back from the database. For each listbox on a form that is filled with code values, the process takes ~1 second per listbox. The performance is significantly better (about 1 second to load the form with all the data) by using a dataconnection and datasets from a form but I'm concerned about scaliblity issues later on. Does anyone have any advice or an article, book, that I can get to do a better guide? I have been researching and reading .net remoting, IIS, NT services but for every one solution there's 500 other articles that makes it difficult to find a common thread. I am writing the system in C# with Sqlserver and Window forms. Thanks

Kevin
 
Remoting? Like, remoting to old ADO and interoping with recordsets and
the like?

Anyway, if you're worried about the overhead of datasets and want speed,
use a SqlDataReader.

-----
Aaron Lewis
GuildPortal.com Development
www.guildportal.com

Kevin said:
I am using .net remoting and IIS to get datasets back from the database. For each listbox on a form that is filled with code values, the process takes ~1 second per listbox. The performance is significantly better (about 1 second to load the form with all the data) by using a dataconnection and datasets from a form but I'm concerned about scaliblity issues later on. Does anyone have any advice or an article, book, that I can get to do a better guide? I have been researching and reading .net remoting, IIS, NT services but for every one solution there's 500 other articles that makes it difficult to find a common thread. I am writing the system in C# with Sqlserver and Window forms. Thanks

Kevin

--
 
Hi Kevin,

One problem is certainly that DataSet is always serialized to xml (never to
binary format).
There you get big hit on performance when serializing and when transfering
data over net.
You might consider transfering the data in some other way (collections or
something).
However, if you don't mind (datatier on server) the direct access (your
later solution) is just good enough.

--
Miha Markic - RightHand .NET consulting & development
miha at rthand com
www.rhand.com

Kevin Cabral said:
I am using .net remoting and IIS to get datasets back from the database.
For each listbox on a form that is filled with code values, the process
takes ~1 second per listbox. The performance is significantly better (about
1 second to load the form with all the data) by using a dataconnection and
datasets from a form but I'm concerned about scaliblity issues later on.
Does anyone have any advice or an article, book, that I can get to do a
better guide? I have been researching and reading .net remoting, IIS, NT
services but for every one solution there's 500 other articles that makes it
difficult to find a common thread. I am writing the system in C# with
Sqlserver and Window forms. Thanks
 
Hello Kevin

Remoting through IIS, while easier to sucure than direct TCP/IP remoting is
drastically slow compared to direct connections. Are you working across a
secure network? If you are then get away from IIS and use Direct TCP/IP
remoting instead. If you are going to go across the Internet with your
remoting then you wil have to provide some security of your own devising.
The performance curve compared to what you are now using is quite
signifigant. If you have to stay with IIS hosted remoting, then use
ws_HTTP_Binary. Again, more work on your part, but some perfomance gain
over (I hope you are avoiding) the SOAP protocols.

If it's raw performance in a remoting environment that you need, then TCP
Remoting is it. Read this article:
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dndotnet/html/introremoting.asp

There are some performance charts that might interest you.


--
Ibrahim Malluf
http://www.malluf.com
==============================================
MCS Data Services Code Generator
http://64.78.34.175/mcsnet/DSCG/Announcement.aspx
==============================================
Pocket PC Return On Investment Calculator
Free Download http://64.78.34.175/mcsnet/kwickKalk1.aspx


Kevin Cabral said:
I am using .net remoting and IIS to get datasets back from the database.
For each listbox on a form that is filled with code values, the process
takes ~1 second per listbox. The performance is significantly better (about
1 second to load the form with all the data) by using a dataconnection and
datasets from a form but I'm concerned about scaliblity issues later on.
Does anyone have any advice or an article, book, that I can get to do a
better guide? I have been researching and reading .net remoting, IIS, NT
services but for every one solution there's 500 other articles that makes it
difficult to find a common thread. I am writing the system in C# with
Sqlserver and Window forms. Thanks
 
Aaron,

a) A DataReader is not necessarily faster. It depends on how efficiently you
can load and use the data. The DataSet appears slower because is loads the
data manages relations, etc. If you reproduce the full behavior yours will
probably be slower. With even partial behavior home grown solutions that
support random access (loading to a structure) are sometimes slower. I use a
DataReader partially for performance, but that's because I use the ideas of
someone who spent considerable time on the problem and we fought over this
issue for a long time before giving up most DataSet capabilties and rewrote
others. The larger reason I use a DataReader is if you're doing single pass
processing or loading into business objects. What you say is true, but needs
this caveat.

b) You don't use a DataReader with remoting.

Kathleen


Aaron Lewis said:
Remoting? Like, remoting to old ADO and interoping with recordsets and
the like?

Anyway, if you're worried about the overhead of datasets and want speed,
use a SqlDataReader.
For each listbox on a form that is filled with code values, the process
takes ~1 second per listbox. The performance is significantly better (about
1 second to load the form with all the data) by using a dataconnection and
datasets from a form but I'm concerned about scaliblity issues later on.
Does anyone have any advice or an article, book, that I can get to do a
better guide? I have been researching and reading .net remoting, IIS, NT
services but for every one solution there's 500 other articles that makes it
difficult to find a common thread. I am writing the system in C# with
Sqlserver and Window forms. Thanks
 
Back
Top