Solved

Website Returning Slow Recordsets - ASP

Posted on 2009-05-06
13
223 Views
Last Modified: 2012-05-06
HI Experts,

I have a query regarding a website that I am running written in classic ASP, which was attached to an MS SQL 2000 database (and worked fine) but is now attached to an MS SQL 2008 database and keeps timing out.

The thing is that I am testing it against the same wildcard searches and getting varied responces, in as much as at certain times the results are returned and browser sent to the results page in under two seconds, whereas on other occasions the same search takes more than 60 seconds and the server times the page out. (I know how to increase the script timeout value, but don't want the query to take so long)

The situation is that the website is on a dedicated server (2 x 1.8 GHZ Intel Core 2 Duo) 2.5GB RAM, with a 10240Kbps data pipe, the SQL 2008 database is on a shared SQL 2008 Server.

I know that some of the problem here could be the way the database and queries have been designed, and will look at this at a later stage (the site is live so can't take it down) but as the issue isn't constant, I was curious as to whether the issue could be affected by either -

our dedicated server size -
or
the fact that we are on a shared SQL server?

Please can I have your thoughts.

Many many thanks

Gareth
0
Comment
Question by:garethtnash
  • 5
  • 4
  • 3
  • +1
13 Comments
 
LVL 13

Expert Comment

by:St3veMax
Comment Utility
Have you updated the statistics for the database or undertook a reindex since you moved it ?

That would be my first port of call.
0
 

Author Comment

by:garethtnash
Comment Utility
Hi St3veMax,
Sorry how would I do that? - thanks
0
 
LVL 13

Expert Comment

by:St3veMax
Comment Utility
Run the attached code to produce a SQL Script to copy/paste into a new window to update all statistics on your database tables.
SELECT 

	'UPDATE STATISTICS ' + SS.Name + '.' + SO.Name 

FROM 

	Sys.Objects SO 

INNER JOIN 

	sys.schemas SS ON SO.Schema_ID = SS.Schema_ID

WHERE

	TYPE = 'U'

ORDER BY 

	1 ASC

Open in new window

0
 

Author Comment

by:garethtnash
Comment Utility
Does that mean that I need to have access to the system database? as Its on a shared SQL server  and I dont think they will give me access to that.
I'll try it anyway - thanks
0
 
LVL 31

Expert Comment

by:RiteshShah
Comment Utility
no, its has nothing to do with system database, it will find table and schema from your database and update its statistics.
0
 
LVL 13

Expert Comment

by:St3veMax
Comment Utility
No; You only need access to the database in question.

Are your DBA(s) not looking into this for you ?
0
How to run any project with ease

Manage projects of all sizes how you want. Great for personal to-do lists, project milestones, team priorities and launch plans.
- Combine task lists, docs, spreadsheets, and chat in one
- View and edit from mobile/offline
- Cut down on emails

 
LVL 31

Expert Comment

by:RiteshShah
Comment Utility
interesting to know more about UPDATE STATISTICS, have a look at below article to know more.

http://www.sql-server-performance.com/tips/update_statistics_p1.aspx
0
 

Author Comment

by:garethtnash
Comment Utility
Thanks Guys, Statistics updated, the shared SQL server is at a well known ISP, to be honest with you I'm contemplating buying our own SQL server licence, as they keep changing things without consulting us first, oh and I'm going to be doing a MCDBA course....
However in the mean time, with Statistics updates, I still have the same problem, I've just re run the recordset search a handfull of times and got the results in  -
 
12 seconds
4 seconds
7 seconds
2 seconds
17.69 seconds
I know some of this could be my broadband speed, dont think its my PC - as very powerful, so I'm back at the question, Server or because we are on a shared SQL licence?
 
Any thoughts would be really helpful
 
Thanks Guys
 
P.S saved Statistics Quert in MSSMS and reading up as well
0
 
LVL 31

Assisted Solution

by:RiteshShah
RiteshShah earned 166 total points
Comment Utility
it just statistics you have updated, you have to reorganize or rebuilt your indexes also, it stats doesn't help. Moreover, the configuration you saw in not best for shared hosting, it is somehow dependent on your hosting company as well.
0
 
LVL 13

Assisted Solution

by:St3veMax
St3veMax earned 166 total points
Comment Utility
If it's SQL 2008; you could try running the code below to see what's going on (if you have access)...

Select * from master..sysperfinfo - its Perfmon via SQL Server.

Other than that; you may need to look at re-indexing your tables.

HTH
0
 
LVL 6

Accepted Solution

by:
PIERCGG earned 168 total points
Comment Utility
In addition to re-indexing and statistics:

If you get different results when running the query more than once with the EXACT SAME search criteria then I would have to guess it is not your code.  The next thing I would look at is finding out what else is hitting the SQL Server instance at the same time as your slow query times.  Are there, possibly, people running some data intensive reports/queries at the same time?  

Also, if the applications you are running are web-based, you can go into IIS and try assigning your app to a different application pool than the other applications running on your application server.  In addition, have you tried examining your queries in the Database Tuning Advisor in SQL 2008 and perform some of its suggestions just to be sure your dbs and queries are running at optimal condition?
0
 

Author Comment

by:garethtnash
Comment Utility
That is fantastic thank you
0
 

Author Closing Comment

by:garethtnash
Comment Utility
Very helpfull all thankyou
0

Featured Post

Better Security Awareness With Threat Intelligence

See how one of the leading financial services organizations uses Recorded Future as part of a holistic threat intelligence program to promote security awareness and proactively and efficiently identify threats.

Join & Write a Comment

Suggested Solutions

Title # Comments Views Activity
View Sql in stored procedure 13 20
t-sql splitting string column 5 24
t-sql splitting name column 5 22
BULK LOGGED - log full 9 12
This demonstration started out as a follow up to some recently posted questions on the subject of logging in: http://www.experts-exchange.com/Programming/Languages/Scripting/JavaScript/Q_28634665.html and http://www.experts-exchange.com/Programming/…
Ever needed a SQL 2008 Database replicated/mirrored/log shipped on another server but you can't take the downtime inflicted by initial snapshot or disconnect while T-logs are restored or mirror applied? You can use SQL Server Initialize from Backup…
In this seventh video of the Xpdf series, we discuss and demonstrate the PDFfonts utility, which lists all the fonts used in a PDF file. It does this via a command line interface, making it suitable for use in programs, scripts, batch files — any pl…
When you create an app prototype with Adobe XD, you can insert system screens -- sharing or Control Center, for example -- with just a few clicks. This video shows you how. You can take the full course on Experts Exchange at http://bit.ly/XDcourse.

743 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

15 Experts available now in Live!

Get 1:1 Help Now