May 30, 2009 at 12:44 pm
I work at a place that has web apps running in Weblogic, but we don't have a Webmaster or any strong weblogic/java people, so it's up to me (the DBA) to solve this performance issue.
Using Weblogic 8.1SP6, JDK142.11 against SQL 2005 SP3 32 bit on Windows 2003 is very fast. However, when I repoint Weblogic to SQL 2005 SP3 64 bit on Windows 2008 performance takes a huge hit. The hardware on the 2008 server is faster and when I ran tests against this box when it had Win2003 32 bit it was fast, but no more. I just need a clue as I've been searching the internet for hours and can't find anything.
Someone please point me in the right direction.
May 30, 2009 at 1:48 pm
Is the server the database is setup on dedicated to SQL Server?
Did you set the lock pages in memory option?
Did you set the max memory appropriately?
Jeffrey Williams
“We are all faced with a series of great opportunities brilliantly disguised as impossible situations.”
― Charles R. Swindoll
How to post questions to get better answers faster
Managing Transaction Logs
June 1, 2009 at 10:49 am
Is the server the database is setup on dedicated to SQL Server? - YES
Did you set the lock pages in memory option? - NO
Did you set the max memory appropriately? - I'm allowing SQL to manage the memory
June 1, 2009 at 11:02 am
Karin Zirk (6/1/2009)
Is the server the database is setup on dedicated to SQL Server? - YESDid you set the lock pages in memory option? - NO
Did you set the max memory appropriately? - I'm allowing SQL to manage the memory
Well, that is going to be a contributing factor to your performance problems. On an x64 system, you have to set the max memory, or SQL Server will take it all and cause performance issues.
Additionally, you need to set the lock pages in memory option (Enterprise Edition), so SQL Server can manage that memory.
How much memory is available on this server? What edition of SQL Server are you running (Standard or Enterprise)? If not Enterprise, you need to set the max memory even lower.
General guidelines are:
4GB of memory, set max no larger than 3GB.
8GB of memory, set max no larger than 6GB.
16GB of memory, set max no larger than 12-13GB
32GB of memory, set max no larger than 28GB
>32GB of memory, leave at least 6GB of memory for the OS.
If you are running Standard Edition with more than 8GB of memory, drop the max by and additional 1 to 2GB of memory, and even more if you are running additional processes (e.g. SSIS, SSRS). Review the error logs for any notifications about paging memory - if you still see those messages after setting the max, reduce the max until you no longer see the messages.
Jeffrey Williams
“We are all faced with a series of great opportunities brilliantly disguised as impossible situations.”
― Charles R. Swindoll
How to post questions to get better answers faster
Managing Transaction Logs
June 1, 2009 at 12:12 pm
We're running SQL 2005 Standard Edition.
The server in general is very fast and we're happy with it's performance for all applications and processes except the Weblogic 8.1
Currently I have the weblogic app pointing to SQL 2005 Std Edition on a 32 bit install and it's getting better performance than pointing to the new 64 bit box.
This is why I think it's a JDBC issue - queries that take 3 minutes to complete via the Weblogic application, take one second via query analyzer. When I'm pointing to the 32 bit server, they take a minute.
My gut feeling is that the JDK we're running doesn't support SQL 2005 64 bit - we've tried a host of different JDBC drivers - all of them list that they support SQL 2000 Enterprise Edition 64 bit and SQL 2000 and SQL 2005. But no where can I find a JDBC driver to span the old JDK and the new SQL Server 2005.
June 1, 2009 at 12:30 pm
I would very much doubt that this is a problem with the drivers being used to connect to the database. As far as those drivers are concerned, they have no idea what kind of system they are connecting to. The important part here is that a 32-bit application must use a 32-bit driver to connect.
By not setting the max memory, the OS is being starved and causing memory pressure issues on the database server. I would review the error logs on the database server for messages relating to paging SQL Server memory. If you see that type of message, you have a memory pressure issue and need to set the max memory.
Again, on x64 it is a requirement that you set the max memory or you will see issues in SQL Server. Since this setting is dynamic it is not going to hurt anything to set it - but, if you are already using more memory than the max defined SQL Server will not give it back. In other words, it might require SQL Server to be cycled before the memory will be released.
Setting the max memory is even more important when running Standard Edition, since Standard Edition cannot lock pages in memory (at least, not until SP3 CU5 in June).
Jeffrey Williams
“We are all faced with a series of great opportunities brilliantly disguised as impossible situations.”
― Charles R. Swindoll
How to post questions to get better answers faster
Managing Transaction Logs
June 2, 2009 at 12:53 pm
Thank you very much for taking the time to explain this out. This is my first 64 bit SQL2005 box. I have 32 gigs of memory so I'll try you're recommended 28 gigs max.
Perhaps you can help me with a related issue. I have three Itanium SQL 2005 boxes. Two of them are totally underutilized (predating my tenure with this firm), but one is running at 99% physical memory utilization all the time despite setting my max memory usage to about 80%. It's one of my two research issues, but (you know how that goes).
June 2, 2009 at 12:57 pm
The Itaniums are also 64-bit and have the same issues as the x64 models. If you have set the max memory, have you cycled SQL Server? If yes, then you need to identify what else is running and taking up the memory.
I have not worked with any Itaniums myself - so I am not sure what tools are available. I would run Perfmon and see if you can identify the processes taking up the memory.
Jeffrey Williams
“We are all faced with a series of great opportunities brilliantly disguised as impossible situations.”
― Charles R. Swindoll
How to post questions to get better answers faster
Managing Transaction Logs
June 7, 2009 at 2:58 pm
So on 32 bit the same weblogic and drivers is running but on 64 bit it slow.
Same sql query - how you measuring this in Query analyzer
Interested - using weblogic where i am but not really invested to this degree.
Using Weblogic 8.1SP6, JDK142.11
June 8, 2009 at 1:25 am
Jeffrey did a good job explaining some of the most primary hits most of us suffered with 64-bit. 😎
One thing I would like to add: Don't enable AWE ! 64-bit already has enough addressing capabilities to do with out addressing window extentions !
Also pay attention for tempdb!
provide as much tempdb data files (disks ??) as you have processors/cores for your sqlserver instance with a maximum of 8 (eight) and pre-size them as good as you can + 25%.
All file extends shoud go in MB and not in percentages to have better control and avoid extention timeouts for sqlserver.
Johan
Learn to play, play to learn !
Dont drive faster than your guardian angel can fly ...
but keeping both feet on the ground wont get you anywhere :w00t:
- How to post Performance Problems
- How to post data/code to get the best help[/url]
- How to prevent a sore throat after hours of presenting ppt
press F1 for solution, press shift+F1 for urgent solution 😀
Need a bit of Powershell? How about this
Who am I ? Sometimes this is me but most of the time this is me
Viewing 10 posts - 1 through 9 (of 9 total)
You must be logged in to reply to this topic. Login to reply