Search:
Namespaces
Discussions
.NET v1.1
Feedback
NOT ANSWERED BEFORE: COM object performance
Messages
Related Types
This message was discovered on
ASPFriends.com 'aspngmigrate' list
.
Johnson, Peter
(I sent this 2 1/2 hours ago and have not yet received a response, and am
escalating it according to
http://www.aspfriends.com/aspfriends/aspngescalate.asp?tab=rules
)
I have a reporting DLL written in Visual Basic (STA threading) that uses
Data Dynamics' ActiveReports component. Here's how I'm using it in my
ASP.NET app, from lowest layer to highest:
ActiveReports DLL
My VB COM DLL that instantiates ActiveReports
.NET wrapper around the COM object made using tlbimp
Another .NET component that sets needed properties on the .NET wrapper
ASP.NET codebehind that instantiates the .NET component
ASP.NET page (.aspx) that inherits from the codebehind
In the .aspx, I have aspcompat="true" set since it's using an STA object.
Yet, I still see strange performance. Sometimes it takes 2-3 seconds.
Sometimes it takes 30. Sometimes it takes 60. And one time, I think it may
have locked up the ASP.NET worker process (though I'm not sure the app is to
blame on that).
Sounds like threading issues from what I've read in the docs. Any
suggestions? Anything to check? What's going wrong?
Thanks,
Peter
----------------------------------------------------------------------------
This e-mail and any attachments may be confidential or legally privileged.
If you received this message in error or are not the intended recipient, you
should destroy the e-mail message and any attachments or copies, and you are
prohibited from retaining, distributing, disclosing or using any information
contained herein. Please inform us of the erroneous delivery by return
e-mail.
Thank you for your cooperation.
----------------------------------------------------------------------------
Reply to this message...
Goldfarb, Christopher
You are correct. VB6 COM objects are single-threaded, and as a result are
not a good choice for web deployment. Your app is suffering from thread
affinity for that session; as soon as you create an instance of that dll,
it's being loaded in IIS program space.
Your only choices are:
1. Rewrite the COM object to be multithreaded, or
2. Rewrite the COM object as a .NET dll (recommended)
There *is* a third, choice, and that's to load the COM object out-of-process
(specifically, out of the IIS process). This is a complicated issue that
requires additional overhead to manage and not recommended, and I believe
you'd spend less time rewriting the component.
This is probably not what you wanted to hear. I suspect you didn't migrate
this app from classic ASP, since you would have experienced the same
problem. Here's the link to more info:
http://support.microsoft.com/default.aspx?scid=kb
;en-us;Q243548
http://support.microsoft.com/default.aspx?scid=kb
;EN-US;q243543
Good luck,
Chris
-----Original Message-----
From: Johnson, Peter [mailto:
Click here to reveal e-mail address
]
Sent: Thursday, April 04, 2002 12:36 PM
To: aspngmigrate
Subject: [aspngmigrate] NOT ANSWERED BEFORE: COM object performance
(I sent this 2 1/2 hours ago and have not yet received a response, and am
escalating it according to
http://www.aspfriends.com/aspfriends/aspngescalate.asp?tab=rules
)
I have a reporting DLL written in Visual Basic (STA threading) that uses
Data Dynamics' ActiveReports component. Here's how I'm using it in my
ASP.NET app, from lowest layer to highest:
ActiveReports DLL
My VB COM DLL that instantiates ActiveReports
.NET wrapper around the COM object made using tlbimp
Another .NET component that sets needed properties on the .NET wrapper
ASP.NET codebehind that instantiates the .NET component
ASP.NET page (.aspx) that inherits from the codebehind
In the .aspx, I have aspcompat="true" set since it's using an STA object.
Yet, I still see strange performance. Sometimes it takes 2-3 seconds.
Sometimes it takes 30. Sometimes it takes 60. And one time, I think it may
have locked up the ASP.NET worker process (though I'm not sure the app is to
blame on that).
Sounds like threading issues from what I've read in the docs. Any
suggestions? Anything to check? What's going wrong?
Thanks,
Peter
----------------------------------------------------------------------------
This e-mail and any attachments may be confidential or legally privileged.
If you received this message in error or are not the intended recipient, you
should destroy the e-mail message and any attachments or copies, and you are
prohibited from retaining, distributing, disclosing or using any information
contained herein. Please inform us of the erroneous delivery by return
e-mail.
Thank you for your cooperation.
----------------------------------------------------------------------------
| [aspngmigrate] member
Click here to reveal e-mail address
= YOUR ID
|
http://www.asplists.com/asplists/aspngmigrate.asp
= JOIN/QUIT
Reply to this message...
RRamirez@belcorporation.com
probably this KBA article is what Anders is talking about
http://support.microsoft.com/default.aspx?scid=3Dkb
;EN-US;q317570&GSSNB=
=3D1
and you may try installing the "COM+ Rollup Package 18.1" and see if it=
helps
http://www.microsoft.com/windows2000/downloads/recommended/q313582/defa=
ult.asp
please let us (or me) know if this solve your problem with your
ActiveReports component, I'm also planning to migrate some ASP apps wic=
h
use ActiveReports to ASP.NET..
Rolando
Click here to reveal e-mail address
Click here to reveal e-mail address
BELCORP Per=FA
http://www.ebelinternational.com
Life after Napster =3D>
http://www.winmx.com
,
http://www.trippymx.co.u=
k
=
=20
Anders Vikstrom =
=20
<Anders.Vikstrom@b Para: "aspngmigrate" <a=
Click here to reveal e-mail address
> =20
anqit.com> cc: =
=20
Asunto: [aspngmigrat=
e] RE: NOT ANSWERED BEFORE: COM object =20
05/04/2002 02:24 performanc e =
=20
Por favor, =
=20
responda a =
=20
"aspngmigrate" =
=20
=
=20
=
=20
-----------------------------------------
This mail has been scanned and found to be free from any known virus !
---------------------------------------------------------
A comment on COM+: We have had a *lot* of problems calling COM+ compone=
nts
from ASP.NET on W2K. Microsoft has confirmed this to be a bug and that =
it
will be solved in W2K SP3.
Anders Vikstr=F6m
SW Engineering, BANQIT AB
http://www.banqit.com
mailto:
Click here to reveal e-mail address
Phone: +46 8 7594737
-----Original Message-----
From: Johnson, Peter [mailto:
Click here to reveal e-mail address
]
Sent: den 5 april 2002 00:20
To: aspngmigrate
Subject: [aspngmigrate] RE: NOT ANSWERED BEFORE: COM object performanc =
e
The component is not single threaded. It is apartment threaded, aka STA=
for
"Single Threaded Apartment." Under its InProcServer32 registry key, val=
ue
"ThreadingModel" is "Apartment" (plus I remember making sure it was set=
to
"Apartment" in Visual Basic 6.0), which is the ideal model for ASP
according
to
http://msdn.microsoft.com/library/en-us/dnserv/html/server01242000.asp?=
frame
=3Dtrue#server0124_topic6
The same component is used in a load-tested (only 10-20 concurrent user=
s,
but still) ASP application without problem.
I would LOVE to migrate it to .NET; unfortunately, it uses ActiveReport=
s as
a Visual Basic ActiveX Designer, which is not supported in VB.NET. And
ActiveReports.NET isn't out yet.
As for your third suggestion, wouldn't running it in COM+ solve this
problem? Though, I'm not sure if that would help more than hurt--I admi=
t
being not too familiar with COM+. Can anyone comment on whether that's =
a
good idea or not?
--Peter
[Original message clipped]
-----------------------------------------------------------------------=
-----
This e-mail and any attachments may be confidential or legally privileg=
ed.
If you received this message in error or are not the intended recipient=
,
you
should destroy the e-mail message and any attachments or copies, and yo=
u
are
prohibited from retaining, distributing, disclosing or using any
information
contained herein. Please inform us of the erroneous delivery by return=
e-mail.
Thank you for your cooperation.
-----------------------------------------------------------------------=
-----
| [aspngmigrate] member
Click here to reveal e-mail address
=3D YOUR ID
|
http://www.asplists.com/asplists/aspngmigrate.asp
=3D JOIN/QUIT
| [aspngmigrate] member
Click here to reveal e-mail address
=3D YOUR ID
|
http://www.asplists.com/asplists/aspngmigrate.asp
=3D JOIN/QUIT
=
Reply to this message...
Ad
MBR BootFX
Best-of-breed application framework for .NET projects, developed by Matthew Baxter-Reynolds and MBR IT
Copyright © Matthew Baxter-Reynolds 2001-2008. '.NET 247 Software Development Services' is a trading style of MBR IT Solutions Ltd.
Contact Us
-
Terms of Use
-
Privacy Policy
-
www.dotnet247.com