Re: Current approach to fast n tier oracle design

Dave Jones <[email protected]>
Newsgroups gmane.comp.windows.devel.dotnet.advanced
Message-ID <2081157773-1233303162-cardhu_decombobulator_blackberry.rim.net-575952135-@bxe1015.bisx.produk.on.blackberry>
If this is an internal application and you can use the binary mode of wcf and all other clients will is binary mode. Then go for it. However if you are going to be using an XML WebService and you expect it to be fast then think again. Design for n teir systems haven't changed since the 90's use binary with compression intenally and some sort of machine readable text for exports imports.  Webservices were used by one and all to provide flexibility and to be reused. Both are a joke. It's very unlikely that you will use the same data in more than one application so don't reinvent the wheel, keep the same technical structure that you have now, ignore web based solutions they take money and time to develop, use easy methods of updating your client, click once etc where you make the change in one place and it propogates out without intevention. 

And I give this answer to all my clients as the best proposal, they inevitably pick asp.net and webservices. There are the clients that are happy with a fast rich application and those who call me back because the latest patch to their browser broke some functionality. 

0.2c
Dave
Dave JONES
[email protected]
06.50.14.38.33

-----Original Message-----
From:         Fletcher's Discussion Account <[email protected]>

Date:         Thu, 29 Jan 2009 17:03:57 
To: <[email protected]>
Subject: [ADVANCED-DOTNET] Current approach to fast n tier oracle design


Hi all,

 

I have been asked to develop a spec to do something that is fairly simple.
I am just doing a quick sanity check before I start.

 

I have to replace an application that gets data from an oracle server via an
ODBC connection.  It's a read only system that people like because it's much
faster than using the actual application used to manage the data.  I program
in a number of languages and am just getting back into .NET (2008) so I am
not up to date on the best approach to use these days.

 

My plan is to create a Web Service (probably the new WCF) that can pass
queries to the SQL server.  

 

Questions:

 

1)      Is WCF the best choice given that I need speed and support for a
variety of clients (browsers and applications)

2)      What is the best (fastest) way for the web service/WCF to talk to
the oracle server (OLE DB, ODBC, Oracle's drivers, etc.)? 

3)      Which of the .NET approaches (LINQ, TableAdaptor, CreateConnection,
etc.) will get the result the fastest from Oracle to the WS?

4)      What is the best way to package the data to send back to the final
client (either a browser or application)?  My guess is that I can probably
just pass the result set from the server on to the client

5)      Is there anything I should do to the IIS server to make sure it is
supporting the applications the most efficiently?

6)      With WCF, if I define an instance of the web service, does it retain
its state until I release the instance?

 

If the difference in speed is fairly negligible, then ease of implementation
is the 2nd choice.

 

I am looking at a web service because it can serve data to any client
(browser or application).  We also have a problem with the IT people
changing the information that references the Oracle server, so I would
rather have one place to update instead of every user (which is what we have
to do today with ODBC based clients.)

 

The result sets are usually fairly small (100 rows or less) and may contain
parent-child data sets.

 

Finally, are there any gotchas in this approach that might trip me up?

 

Thanks,

 

Fletcher

 

 


===================================
View archives and manage your subscription(s) at http://peach.ease.lsoft.com/archives
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.