Hi,

AtmosphereBehavior extends AbstractAjaxBehavior which has a component
field - so this holds a reference to a component, so also to its page
(using parent relationships). AtmosphereBehavior in onRequest() method
registers itself as a listener to Meteor object:

  ...
  Meteor meteor = Meteor.build(request.getContainerRequest());
  // Add us to the listener list.
  meteor.addListener(this);
  ...

So until atmosphere resource hold in meteor expires, it keeps a hard
reference to our behavior so also to a page. It can be a problem in
heavy load applications (with many users), where many atmosphere
resources are created.

--
Daniel

On Mon, Aug 10, 2015 at 1:38 PM, Martin Grigorov <mgrigo...@apache.org> wrote:
> Hi,
>
> Can you point in the code where this happens?
>
> Martin Grigorov
> Wicket Training and Consulting
> https://twitter.com/mtgrigorov
>
> On Mon, Aug 10, 2015 at 11:34 AM, Daniel Stoch <daniel.st...@gmail.com>
> wrote:
>
>> Hi,
>>
>> Ok, EventBus stores only pageId. But Atmosphere framework keeps all
>> AtmosphereResourceEventListeners which are implemented by
>> AtmosphereBehavior - so I think this is a place when Atmosphere keeps
>> references to all registered pages.
>>
>> --
>> Daniel
>>
>>
>> On Tue, Jul 28, 2015 at 9:33 AM, Martin Grigorov <mgrigo...@apache.org>
>> wrote:
>> > Hi,
>> >
>> > I see no problem here.
>> > Wicket-Atmosphere keeps the pageId, not the page:
>> >
>> https://github.com/apache/wicket/blob/3eba671c0770b0167f2d83ebf8924b28917316c9/wicket-experimental/wicket-atmosphere/src/main/java/org/apache/wicket/atmosphere/EventBus.java#L253
>> >
>> > Later uses it at
>> >
>> https://github.com/apache/wicket/blob/3eba671c0770b0167f2d83ebf8924b28917316c9/wicket-experimental/wicket-atmosphere/src/main/java/org/apache/wicket/atmosphere/AtmosphereRequestHandler.java#L76
>> >
>> > Martin Grigorov
>> > Freelancer. Available for hire!
>> > Wicket Training and Consulting
>> > https://twitter.com/mtgrigorov
>> >
>> > On Mon, Jul 20, 2015 at 1:54 PM, Daniel Stoch <daniel.st...@gmail.com>
>> > wrote:
>> >
>> >> Hi,
>> >>
>> >> In Wicket (AFAIK) we keeps only actual page reference in a web
>> >> session, all other pages as serialized to a page store.
>> >> AtmosphereBehavior registers itself as a listener to
>> >> AtmosphereResource object. Because of this Atmosphere keeps references
>> >> to all registered pages (until such resource expires). I think it
>> >> could be a problem in high load applications: theses hard references
>> >> could eat all memory.
>> >>
>> >> What do you think: is it a problem or not (and I am wrong in this case)?
>> >>
>> >> --
>> >> Best regards,
>> >> Daniel
>> >>
>> >> ---------------------------------------------------------------------
>> >> To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org
>> >> For additional commands, e-mail: users-h...@wicket.apache.org
>> >>
>> >>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org
>> For additional commands, e-mail: users-h...@wicket.apache.org
>>
>>

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org
For additional commands, e-mail: users-h...@wicket.apache.org

Reply via email to