ISA Server DestinationSet Performance

Tech-Archive recommends: Repair Windows Errors & Optimize Windows Performance

From: Joris Dobbelsteen (joris.dobbelsteen_at_mail.com)
Date: 11/24/04


Date: Wed, 24 Nov 2004 21:54:15 +0100

Dear,

I've made a little tool that synchronizes my ISA Server block list with a
database. However the performance of this is very low.

I'm retreiving 41140 rows from the database, storing them in a hash table
and clearing the input tables within 1 or 2 seconds.
Getting 41140 rows from the ISA server destination set takes me an awsome
173 seconds!

Doing some processing (lookup and deletes on the hashtable) makes this
retreiving good for 379 seconds.
173 seconds for retreiving the entries from the ISA server.
206 seconds for getting the entry elements and removing the entries from the
hash table.

The objects that I'm working with and probably gives the problem is
FPCDestinationSet (and FPCDestination). These are COM objects.
I use a enumerator to work through the FPCDestinationSet (there is no other
way to do so).

My initial conclusion (though premature) would be that the COM interface is
very slow. Loading the same list in the ISA Managment console takes below 2
seconds!

What can I do to improve the performance of this application?
Should I use unsafe code for the COM parts?
A secondary problem is using over 100 MB of RAM for the application (I got
it down already from 160 MB). 50k* 200 Bytes = 10MB (50k rows with <80 byte
strings (take 120 byte for overhead). How do I get this down to a
respectible level?

In .NET the FPCDestinationSet has the function SerializeToBuffer returning a
signed byte array, but this function is not documented anywhere.

- Joris



Relevant Pages

  • Re: ISA Server DestinationSet Performance
    ... seconds when running from the management console, ... > Getting 41140 rows from the ISA server destination set takes me an awsome ... > retreiving good for 379 seconds. ... > I use a enumerator to work through the FPCDestinationSet (there is no ...
    (microsoft.public.dotnet.languages.csharp)
  • Re: Gracefull shutdown firewall after logging error
    ... why can't the logging service obtain a lock on the db. ... The ISA Server Web filter was unable to connect to MSDE database. ... Could not obtain exclusive lock on database 'MODEL'. ...
    (microsoft.public.windows.server.sbs)
  • SQL Server and ISA Server on the web
    ... We are about to open up our own network onto the web via ISA Server. ... database used by our in-house desktop apps. ... The internal website is what we ...
    (microsoft.public.sqlserver.security)
  • Re: Gracefull shutdown firewall after logging error
    ... The ISA Server Web filter was unable to connect to MSDE database. ... The MSDE Error description is: Could not obtain exclusive lock on database 'MODEL'. ... on the right hand side click on configure firewall logging ...
    (microsoft.public.windows.server.sbs)
  • Re: logging question
    ... ISA Server includes a log maintenance feature, ... storage limits" and "Log storage format." ... and by default logging is done to this database. ...
    (microsoft.public.isa)