Furthermore, despite the overtime Entity instances
are removed from the instance pool, the amount of memory does not reduce at
all!. Quite strange and bad news (if true) to those of many complaining about
memory problems. At least according to WinNT's Task-manager. Can anybody confirm
this?
This
and the previous tests were made on WinNT 4.0, Orion 1.4.7,
128MB.
Tibor Hegyi
webmiles AG
Ridlerstr. 31b
80339
M�nchen
Tel. 089/ 12469-461
Fax 089/ 12469 - 222
e-mail:
[EMAIL PROTECTED]
-----Urspr�ngliche Nachricht-----
Von: Tibor Hegyi [mailto:[EMAIL PROTECTED]]
Gesendet: Donnerstag, 8. M�rz 2001 15:51
An: Orion-Interest
Betreff: Calibrating EJB Pooling in Orion
Von: Tibor Hegyi [mailto:[EMAIL PROTECTED]]
Gesendet: Donnerstag, 8. M�rz 2001 15:51
An: Orion-Interest
Betreff: Calibrating EJB Pooling in Orion
Hi,
Well,
I am a bit confused how Orion handles pools of Entity/SLSB/SFSB instances. Let
me share my expreiences so that you can give me some explanation and clue how to
calibrate pooling in Orion. This can be important in times of heavy
load applications running in Orion. I have already browsed through the
archives but most of the entries deal with Database connection pooling or Entity
pooling.
My
test application scenario is: servlet->SLSB->SFSB->Entity. (A -> B:
means A instantiates B and calls business methods on it)
My
questions:
Statful beans:
1.
When the SLSB bean looks up the home interface of SFSB, the SFSB's ejbActivate
is called a few dozens times. Why? Does Orion create pre-pooled instances of
Stateful session beans (before they have been created explicitely)? Strange. The
same number of ejbPassivate-calls are performed when I shut down the server.
2.
What does the number of this kind of pre-pooled beans depend on? Strange.
I changed the timeout value in orion-eib.jar from 1800 sec to 10 sec but
Orion behaves the same way. Strange.
It
seems to me that Orion somehow remembers the maximum number of usage of a SFSB
and next time after orion is RESTARTED it creates the same number of
pseudo-instances as I described above. Could this be the
case?
Stateless beans: they seem to work fine.
Entity
beans:
I set
up max-instances and validity-timeout attributes in orion-ejb.jar. Despite
this:
1.
When issuing a findAll (or any multiple result findXXX method) method call
on the Entity Home the number of instances may exceed the max-instances setting.
Hence the number of entity instances can increase endlessly potentially
causing an out-of-memory problem. Strange.
2.
After the validity-timeout has elapsed AND the number of
max-instances was exceeded AND a new instance is being created, the
non-valid (over validity-timeout) ones are removed from the
pool.
So
that's it. If anyone could give us (some might also be interested in this topic)
explanation or share his/her expreiences I would appreciate very much.
Tibor Hegyi
webmiles AG
Ridlerstr. 31b
80339
M�nchen
Tel. 089/ 12469-461
Fax 089/ 12469 - 222
e-mail: [EMAIL PROTECTED]
