Oracle FAQ Your Portal to the Oracle Knowledge Grid
HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US
 

Home -> Community -> Usenet -> c.d.o.misc -> Re: Huge problem with COM+ performace? PART TWO

Re: Huge problem with COM+ performace? PART TWO

From: Trevor Benedict R <trevornews_at_yahoo.com>
Date: Thu, 1 Nov 2001 15:45:34 +0800
Message-ID: <OskrGlqYBHA.400@tkmsftngp07>


Hi Adam,
I hope you have created a ActiveX DLL project. If so according to what was pointed out by JohnFros and Ray have you checked the threading model. Another question is did you change the Project Type from ActiveX Dll to ActiveX Exe. You can try creating a new project and add all your class files into that project (a simple drag drop should be easier for you). Then change the project properties and compile and test that DLL.

You can test this. Open a new ActiveX Dll Project. Check the properties for Class1 (the default class created). It's instancing is set to MultiUse by default. Check the project properties. It shows as an ActiveX DLL and the Threading Model is Apartment Threaded. Change your project type to ActiveX Exe and then open the default class module properties and set it's instancing property to SingleUse. Now open the project properties and change the Project Type to ActiveX Dll. You'll get a warning that the Instancing type has been changed for the class. Click on yes. Now checking the project properties, you'll notice that it's become a single threaded component.

I've solved many a problem by creating a new project and adding y files from there.

Regards

Trevor Benedict R
Software Engineer
Mascot Malaysia Sdn Bhd

"Adam Boczek" <adam.boczek_at_NO_SPAM_gft-solutions.de> wrote in message news:1004598368.231462_at_tux2.ham.acs-gmbh.de...
| Yes, everything is set properly...
|
| Greets,
| Adam
|
| -------------------------------------------
| Adam Boczek
| IT Consultant
| GFT Solutions GmbH
| adam.boczek_at_gft-solutions.de
| -------------------------------------------
|
| "Klaus H. Probst" <kprobst_at_v b b o x.com> schrieb im Newsbeitrag
| news:ujHtlbkYBHA.1716_at_tkmsftngp05...
| > Adam,
| >
| > I don't know if someone has brought this up before but are you setting the
| > DLL(s) Unattended Execution and Retained In Memory properties? There's a
| > problem with the VB runtime and COM+ that is solved this way. By the looks
| > of your description maybe that could be the problem...
| >
| >
| > --
| > . . . . . . . . . . . . . . . . . . . . . .
| > Klaus H. Probst, MVP
| > http://www.vbbox.com/
| >
| >
| > Please post/reply to the newsgroup(s)
| >
| >
| > "Adam Boczek" <adam.boczek_at_NO_SPAM_gft-solutions.de> wrote in message
| > news:1004553339.429437_at_tux2.ham.acs-gmbh.de...
| > > First of all I'd like to thanx all of you for answers!
| > >
| > > I've done some tests today and I'd like to show you results and
| problems.
| > >
| > > All my VB components are correct configured properly (threadings models,
| > > type of execution etc.). I have one class thas is responsible for all
| > > connection to the database. It also independet dll.
| > >
| > > All my clients write now messages into event log.
| > >
| > > Problem:
| > > When I start one client and than start long-lasting operation I can
| start
| > > second client, but it waits until the first client ends its process.
| Looks
| > > like database locks but it is not.
| > >
| > > Suddenly I've found in log event, that my second client can't initialize
| > > com+ object (stops when I call "set a = new MyDll.Function"). When the
| > first
| > > client realises or creates new object than some resouces are free and
| > second
| > > client goes on, but stops when it once again needs new object. So it
| looks
| > > like problems by resource pooling in com+.
| > >
| > > And now the hammer! All runs without problems when... I split my com+
| > > aplication into two aplications! One has only my "db" classes, second
| the
| > > rest of dlls. But where is the explanation? Two dllhost.exe mean tousand
| > of
| > > out-process calls (almost all my dll uses "basis-dll") and that degrees
| > > preformance. And this configuration causes also problems with
| transaction
| > in
| > > stored precedures of Oracle8i.
| > >
| > > Thanx for any help. I have 5 days to lose the problem...
| > >
| > > Greets,
| > > Adam
| > >
| > > -------------------------------------------
| > > Adam Boczek
| > > IT Consultant
| > > GFT Solutions GmbH
| > > adam.boczek_at_gft-solutions.de
| > > -------------------------------------------
| > >
| > > "Adam Boczek" <adam.boczek_at_NO_SPAM_gft-solutions.de> schrieb im
| > Newsbeitrag
| > > news:1004438383.943613_at_tux2.ham.acs-gmbh.de...
| > > > I have huge problem :-|. I've written software which uses COM+ as
| > > midletier
| > > > and Oracle8i as datatier. All business components are VB dlls. All
| > clients
| > > > are VB exes. Everything seems to be ok (transactions etc.). But when I
| > > start
| > > > long-lastig process (for example accounting for 300.000 clients) all
| > other
| > > > processes are locked (or very, very slow). I can NOT connect from
| client
| > > to
| > > > my business components in COM+ (I receive no errors, only information
| > that
| > > > process is pending) . Hardware is ok (2-Procesor server Compaq with
| 1,2
| > GB
| > > > RAM etc.), database parameters also (I can connect to database without
| > > COM+
| > > > and run without problems any query), network 100MB/s and hi-end
| > switches.
| > > > I've tried different component configurations (all dll in one package
| or
| > > in
| > > > groups) but without success.
| > > >
| > > > Any ideas?
| > > >
| > > > Win2k Srv SP2, Oracle8i (8.1.7.2), VB6 SP5, ADO 2.6 SP1, all clients
| > Win2k
| > > > Pro SP2.
| > >
| > >
| > >
| > >
| > >
| >
| >
|
|
Received on Thu Nov 01 2001 - 01:45:34 CST

Original text of this message

HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US