By using this site, you agree to our updated Privacy Policy and our Terms of Use. Manage your Cookies Settings.
424,972 Members | 901 Online
Bytes IT Community
+ Ask a Question
Need help? Post your question and get tips & solutions from a community of 424,972 IT Pros & Developers. It's quick & easy.

Need Help

P: n/a
Friends,
Please provide suggestions to improve the performance of webservices?

The current architecture and problems : -
The webservices are installed on Server1, the database server is also on
Server1,
But the database for authentication is on Server2 and authorization
webservice is on server2.
client is Winform Application.

The authentication database server has to be different than the company
database.
Currently every time a web service is called on server1 the authorization is
checked.
As there are no. of webservice called from Windows Client, every time the
call is made the
authorization webservice at server2 is called, This is making the response
time so long.

I have following options -
1. Maintainig a session between client and server.
And the authorization will be done only once between the session.

Is this a right approach?

What else can be done to improve the performance?
Microsoft application block is used for database connection.
Thanks

Dinesh
Nov 15 '05 #1
Share this Question
Share on Google+
1 Reply


P: n/a
Look for some things:

1) is your authorization service multithreaded? You may have some issues
with the authorization service, especially if it is using a .NET remoting
service that is declared as a singleton. Stress test that service.

2) when credentials come to the auth server, and the auth server accepts the
credentials, have the primary server create an encrypted string and pass it
back to the calling application. Then, the calling application keeps
sending back the encrypted key with each subsequent call.
The main server decrypts the string, which should contain something basic:
(like the originating IP address and a timestamp for when the encrypted key
will no longer be valid... say five minutes after the credential check). If
the key is valid, don't go to the auth server... just accept the
transaction.

3) Do not attempt to keep the connection open... defeats the purpose of the
web service

4) Make sure that you are not making dozens of calls on your web service.
Optimize. If you need to make 20 calls when a particular event occurs,
create a web method where all of the input is given at once, and all 20
result sets are returned at once. You now only need to validate credentials
once.

Good Luck,
--- Nick Malik

"Dinesh Upare" <di**********@gmx.net> wrote in message
news:%2****************@TK2MSFTNGP10.phx.gbl...
Friends,
Please provide suggestions to improve the performance of webservices?

The current architecture and problems : -
The webservices are installed on Server1, the database server is also on
Server1,
But the database for authentication is on Server2 and authorization
webservice is on server2.
client is Winform Application.

The authentication database server has to be different than the company
database.
Currently every time a web service is called on server1 the authorization is checked.
As there are no. of webservice called from Windows Client, every time the
call is made the
authorization webservice at server2 is called, This is making the response
time so long.

I have following options -
1. Maintainig a session between client and server.
And the authorization will be done only once between the session.

Is this a right approach?

What else can be done to improve the performance?
Microsoft application block is used for database connection.
Thanks

Dinesh

Nov 15 '05 #2

This discussion thread is closed

Replies have been disabled for this discussion.