Re: dllhost

From: Bob Britton (robertbrittonjr_at_maximumit.net)
Date: 11/19/04


Date: Fri, 19 Nov 2004 08:19:10 -0500

Our site is an IIS5/W2k Box, 1GB RAM. It's siteserver commerce edition 3.0
(yes i know...quite legacy). It's just about 100% pure ASP with com objects.
We have many com objects and what we call 'middleware' objects that have
been custom written. One of the main ones is a wrapper to a COM object that
calls PDFExpress, a tool for generating PDF files. This is our core business
(variable printing), and we use this tool frequently. We also have other COM
objects to export data to excel, DBF, etc. We also have tax calculation
middleware, credit card processing middle ware. All com objects.

What ends up happening is someone in our development group notices that the
site is responding slowly. I instituted a change to require other developers
to notify me when there are apparant issues with this server so that I can
begin tracking down what might be causing the problem. The past few weeks,
I've noticed that the commonality in all cases (just about) seems like
DLLHOST goes to 95-100% utilization and stays there indefinitely unless IIS
is restarted or the box is restarted. If we restart IIS, the problem seems
to come back quicker than if we reboot the server. So our development
manager just prefers to reboot (cold).

Memory utilization is not excessive. We have 1GB of RAM and it never
approaches consuming that much. At least our frequency of having to reboot
prevents consumption from building over time.

For additional information, we've recently begun utilizating mixed ASP.NET
for very minor (<1%) of the time (just generating a couple of simple crystal
report). The ASPNET worker process never seems to get excessive in terms of
CPU or memory utilizations. Occassionally, we recycle ASPNET worker process
during development.

But our main problem seems to be nearly every time DLL host is just
absolutely going crazy regarding CPU utilization.

In yesterday's case, our development lead noted that when it was running
very slow, his response.writes were showing nothing in his variables when he
knew there was data. He said his variables were just appearing empty when he
was explicitly setting values on a variable then just response.writing it
out. It was highly suspicious. I recycled IIS, the problem was OK for a few
minutes (10-20), but the DLLhost problem came right back and we ended up
recycling the whole box.

When we do this, we can go sometimes for a few hours before the problem
comes back. But this isn't really a fair benchmark because there are VERY
often IDLE development times when no one is using that box.

"Ganesh Anekar [MSFT]" <Ganesh@online.microsoft.com> wrote in message
news:OFy886bzEHA.3120@TK2MSFTNGP12.phx.gbl...
> Hello Bob,
>
> Try to find out the answers to following questions:
>
> 1. What is hung? HTML, ASP? When the problem occurs, does a simple ASP
and
> a simple HTML page serve or do they also hung?
>
> 2. Do the ASP pages that are hung connect to a database backend? Is it
only
> these pages that are hung?
>
> 3. How often does the problem occur?
>
> 4. Does cycling the IIS services resolve the issue? If not, what do you
> need to do to resolve the issue?
>
> 5. Are there any thrid-party or custom ISAPI filters on the IIS box?
>
> 6. What is the CPU utilization like at the time of the hang?
>
> You could also download IIS debug tools and get the dumps when it hung or
> when you see dllhost.exe is at 100%.
>
> Here is the link to download iis debug tools:
>
http://www.microsoft.com/downloads/details.aspx?FamilyID=01c4f89d-cc68-42ba-98d2-0c580437efcf&DisplayLang=en
>
> I would say if it is business crticial issue then you could open a ticket
> with MS support.
>
> HTH.
>
> Thanks,
> Ganesh Anekar
> Microsoft Developer Support
> Internet Information Server
> *********************************************************************
> >>Please do not send email directly to this alias. This is an online
> account name for newsgroup participation only.<<
>
> This posting is provided "AS IS" with no warranties, and confers no
rights.
> You assume all risk for your use.
>
> © 2004 Microsoft Corporation. All rights reserved.
> *********************************************************************
> "Bob Britton" <robertbrittonjr@maximumit.net> wrote in message
> news:%23a9BqvbzEHA.3840@tk2msftngp13.phx.gbl...
> > How does one go about troubleshooting dllhost.exe performance problems?
> >
> > We have a development box where dllhost.exe once or twice a day
skyrockets
> > to 100% cpu utilization. If we restart IIS, it goes away.
> >
> > dllhost.exe is the host for COM / Dcom objects as I understand it. And
we
> > do
> > have quite a few custom objects/classes/dlls we're using. How do i begin
> > isolating what is happening inside dllhost.exe when it's running at
100%?
> >
> > We also use SQL Server. I'm wondering if it's a deadlock on the DB.
> >
> > I guess...generally speaking...how would you guys recommend
> > troubleshooting
> > this down?
> >
> >
>
>