You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@stratos.apache.org by Amila Maha Arachchi <am...@wso2.com> on 2014/08/11 16:01:45 UTC

Stratos manager seems to load all the subscriptions at startup

Hi all,

Recently we were observing a delay when SM is starting in our stratos
setup. See the following log segment. It seems ADCManagement component
takes a lot of time (in this case 3 minutes).

TID: [0] [SCC] [2014-08-11 06:49:39,850]  INFO
{org.apache.stratos.messaging.message.receiver.topology.TopologyEventMessageDelegator}
-  Topology event message delegator started
{org.apache.stratos.messaging.message.receiver.topology.TopologyEventMessageDelegator}

TID: [0] [SCC] [2014-08-11 06:49:40,564]  WARN
{org.wso2.andes.common.QpidProperties} -  Unable to find resource
qpidversion.properties from classloader
{org.wso2.andes.common.QpidProperties}

TID: [0] [SCC] [2014-08-11 06:50:01,119]  INFO
{org.apache.stratos.messaging.message.processor.topology.CompleteTopologyMessageProcessor}
-  Topology initialized
{org.apache.stratos.messaging.message.processor.topology.CompleteTopologyMessageProcessor}

TID: [0] [SCC] [2014-08-11 06:50:01,120]  INFO
{org.apache.stratos.manager.topology.receiver.StratosManagerTopologyEventReceiver}
-  [CompleteTopologyEventListener] Received: class
org.apache.stratos.messaging.event.topology.CompleteTopologyEvent
{org.apache.stratos.manager.topology.receiver.StratosManagerTopologyEventReceiver}




TID: [0] [SCC] [2014-08-11 06:52:49,971]  INFO
{org.apache.stratos.manager.internal.ADCManagementServerComponent} -  ADC
management server component is activated
{org.apache.stratos.manager.internal.ADCManagementServerComponent}

TID: [0] [SCC] [2014-08-11 06:52:50,020]  INFO
{org.wso2.carbon.core.init.JMXServerManager} -  JMX Service URL  :
service:jmx:rmi://localhost:11111/jndi/rmi://localhost:9999/jmxrmi
{org.wso2.carbon.core.init.JMXServerManager}

TID: [0] [SCC] [2014-08-11 06:52:50,247]  INFO
{org.wso2.carbon.ntask.core.impl.AbstractQuartzTaskManager} -  Task
scheduled: [-1234][TENANT_SYNC_TASK_TYPE][TENANT_SYNC_TASK]
{org.wso2.carbon.ntask.core.impl.AbstractQuartzTaskManager}

TID: [0] [SCC] [2014-08-11 06:52:50,248]  INFO
{org.wso2.carbon.core.internal.StartupFinalizerServiceComponent} -  Server
          :  Apache Stratos Controller-4.0.0-SNAPSHOT
{org.wso2.carbon.core.internal.StartupFinalizerServiceComponent}

TID: [0] [SCC] [2014-08-11 06:52:50,248]  INFO
{org.wso2.carbon.core.internal.StartupFinalizerServiceComponent} -  WSO2
Carbon started in 283 sec
{org.wso2.carbon.core.internal.StartupFinalizerServiceComponent}

TID: [0] [SCC] [2014-08-11 06:52:50,656]  INFO
{org.wso2.carbon.ui.internal.CarbonUIServiceComponent} -  Mgt Console URL
: https://10.0.60.12:9443/carbon/
{org.wso2.carbon.ui.internal.CarbonUIServiceComponent}


I came to know, this is loading all the subscriptions when starting.

At the moment, we have about 600 subscriptions in the environment. With the
number of tenants growing, this can cause major problems.

What are the solutions we have to address this?

Regards,
Amila.

-- 
*Amila Maharachchi*
Senior Technical Lead
WSO2, Inc.; http://wso2.com

Blog: http://maharachchi.blogspot.com
Mobile: +94719371446

Re: Stratos manager seems to load all the subscriptions at startup

Posted by Amila Maha Arachchi <am...@wso2.com>.
Before deciding on this, I would like to know, how and when these
subscriptions are used.

At the start, ADC component loads all the subscriptions. Then what happens?
Who else is making use of this info (AFAIK LB does)?


On Mon, Aug 11, 2014 at 7:48 PM, Isuru Haththotuwa <is...@apache.org>
wrote:

> Hi,
>
> Yes, currently Stratos Manager loads all Subcriptions at startup, and I
> agree this is not a very good practice. To improve this, I can think of two
> methods:
>
> 1. write each tenant's Subscriptions to tenant's own registry, and then
> load them to memory model when the tenant is loading. This information can
> be again removed when the tenant is unloaded.
> 2. load some meta information related to the Subscriptions without loading
> everything at server startup, and then load relevant Subscriptions when the
> tenant is getting loaded (lazy loading). Again, we can remove the unloaded
> tenant's information from the memory model.
>
> WDYT?
>
>
> On Mon, Aug 11, 2014 at 7:31 PM, Amila Maha Arachchi <am...@wso2.com>
> wrote:
>
>> Hi all,
>>
>> Recently we were observing a delay when SM is starting in our stratos
>> setup. See the following log segment. It seems ADCManagement component
>> takes a lot of time (in this case 3 minutes).
>>
>> TID: [0] [SCC] [2014-08-11 06:49:39,850]  INFO
>> {org.apache.stratos.messaging.message.receiver.topology.TopologyEventMessageDelegator}
>> -  Topology event message delegator started
>> {org.apache.stratos.messaging.message.receiver.topology.TopologyEventMessageDelegator}
>>
>> TID: [0] [SCC] [2014-08-11 06:49:40,564]  WARN
>> {org.wso2.andes.common.QpidProperties} -  Unable to find resource
>> qpidversion.properties from classloader
>> {org.wso2.andes.common.QpidProperties}
>>
>> TID: [0] [SCC] [2014-08-11 06:50:01,119]  INFO
>> {org.apache.stratos.messaging.message.processor.topology.CompleteTopologyMessageProcessor}
>> -  Topology initialized
>> {org.apache.stratos.messaging.message.processor.topology.CompleteTopologyMessageProcessor}
>>
>> TID: [0] [SCC] [2014-08-11 06:50:01,120]  INFO
>> {org.apache.stratos.manager.topology.receiver.StratosManagerTopologyEventReceiver}
>> -  [CompleteTopologyEventListener] Received: class
>> org.apache.stratos.messaging.event.topology.CompleteTopologyEvent
>> {org.apache.stratos.manager.topology.receiver.StratosManagerTopologyEventReceiver}
>>
>>
>>
>>
>> TID: [0] [SCC] [2014-08-11 06:52:49,971]  INFO
>> {org.apache.stratos.manager.internal.ADCManagementServerComponent} -  ADC
>> management server component is activated
>> {org.apache.stratos.manager.internal.ADCManagementServerComponent}
>>
>> TID: [0] [SCC] [2014-08-11 06:52:50,020]  INFO
>> {org.wso2.carbon.core.init.JMXServerManager} -  JMX Service URL  :
>> service:jmx:rmi://localhost:11111/jndi/rmi://localhost:9999/jmxrmi
>> {org.wso2.carbon.core.init.JMXServerManager}
>>
>> TID: [0] [SCC] [2014-08-11 06:52:50,247]  INFO
>> {org.wso2.carbon.ntask.core.impl.AbstractQuartzTaskManager} -  Task
>> scheduled: [-1234][TENANT_SYNC_TASK_TYPE][TENANT_SYNC_TASK]
>> {org.wso2.carbon.ntask.core.impl.AbstractQuartzTaskManager}
>>
>> TID: [0] [SCC] [2014-08-11 06:52:50,248]  INFO
>> {org.wso2.carbon.core.internal.StartupFinalizerServiceComponent} -  Server
>>           :  Apache Stratos Controller-4.0.0-SNAPSHOT
>> {org.wso2.carbon.core.internal.StartupFinalizerServiceComponent}
>>
>> TID: [0] [SCC] [2014-08-11 06:52:50,248]  INFO
>> {org.wso2.carbon.core.internal.StartupFinalizerServiceComponent} -  WSO2
>> Carbon started in 283 sec
>> {org.wso2.carbon.core.internal.StartupFinalizerServiceComponent}
>>
>> TID: [0] [SCC] [2014-08-11 06:52:50,656]  INFO
>> {org.wso2.carbon.ui.internal.CarbonUIServiceComponent} -  Mgt Console URL
>> : https://10.0.60.12:9443/carbon/
>> {org.wso2.carbon.ui.internal.CarbonUIServiceComponent}
>>
>>
>> I came to know, this is loading all the subscriptions when starting.
>>
>> At the moment, we have about 600 subscriptions in the environment. With
>> the number of tenants growing, this can cause major problems.
>>
>> What are the solutions we have to address this?
>>
>> Regards,
>> Amila.
>>
>> --
>> *Amila Maharachchi*
>> Senior Technical Lead
>> WSO2, Inc.; http://wso2.com
>>
>> Blog: http://maharachchi.blogspot.com
>> Mobile: +94719371446
>>
>> --
>>  <%2B94719371446>
>> Thanks and Regards,
>>
>> Isuru H.
>> <%2B94719371446>
>> +94 716 358 048 <%2B94719371446>* <http://wso2.com/>*
>>
>>
>> * <http://wso2.com/>*
>>
>>
>>


-- 
*Amila Maharachchi*
Senior Technical Lead
WSO2, Inc.; http://wso2.com

Blog: http://maharachchi.blogspot.com
Mobile: +94719371446

Re: Stratos manager seems to load all the subscriptions at startup

Posted by Udara Liyanage <ud...@wso2.com>.
+1 for first approach. This is inline with the tenant level isolation
Lakmal suggested recently in another thread.



Touched, not typed. Erroneous words are a feature, not a typo.
On Aug 12, 2014 8:40 AM, "Nirmal Fernando" <ni...@gmail.com> wrote:

>
>
>
> On Mon, Aug 11, 2014 at 7:48 PM, Isuru Haththotuwa <is...@apache.org>
> wrote:
>
>> Hi,
>>
>> Yes, currently Stratos Manager loads all Subcriptions at startup, and I
>> agree this is not a very good practice. To improve this, I can think of two
>> methods:
>>
>> 1. write each tenant's Subscriptions to tenant's own registry, and then
>> load them to memory model when the tenant is loading. This information can
>> be again removed when the tenant is unloaded.
>>
>
> +1
>
>> 2. load some meta information related to the Subscriptions without
>> loading everything at server startup, and then load relevant Subscriptions
>> when the tenant is getting loaded (lazy loading). Again, we can remove the
>> unloaded tenant's information from the memory model.
>>
>> WDYT?
>>
>>
>> On Mon, Aug 11, 2014 at 7:31 PM, Amila Maha Arachchi <am...@wso2.com>
>> wrote:
>>
>>> Hi all,
>>>
>>> Recently we were observing a delay when SM is starting in our stratos
>>> setup. See the following log segment. It seems ADCManagement component
>>> takes a lot of time (in this case 3 minutes).
>>>
>>> TID: [0] [SCC] [2014-08-11 06:49:39,850]  INFO
>>> {org.apache.stratos.messaging.message.receiver.topology.TopologyEventMessageDelegator}
>>> -  Topology event message delegator started
>>> {org.apache.stratos.messaging.message.receiver.topology.TopologyEventMessageDelegator}
>>>
>>> TID: [0] [SCC] [2014-08-11 06:49:40,564]  WARN
>>> {org.wso2.andes.common.QpidProperties} -  Unable to find resource
>>> qpidversion.properties from classloader
>>> {org.wso2.andes.common.QpidProperties}
>>>
>>> TID: [0] [SCC] [2014-08-11 06:50:01,119]  INFO
>>> {org.apache.stratos.messaging.message.processor.topology.CompleteTopologyMessageProcessor}
>>> -  Topology initialized
>>> {org.apache.stratos.messaging.message.processor.topology.CompleteTopologyMessageProcessor}
>>>
>>> TID: [0] [SCC] [2014-08-11 06:50:01,120]  INFO
>>> {org.apache.stratos.manager.topology.receiver.StratosManagerTopologyEventReceiver}
>>> -  [CompleteTopologyEventListener] Received: class
>>> org.apache.stratos.messaging.event.topology.CompleteTopologyEvent
>>> {org.apache.stratos.manager.topology.receiver.StratosManagerTopologyEventReceiver}
>>>
>>>
>>>
>>>
>>> TID: [0] [SCC] [2014-08-11 06:52:49,971]  INFO
>>> {org.apache.stratos.manager.internal.ADCManagementServerComponent} -  ADC
>>> management server component is activated
>>> {org.apache.stratos.manager.internal.ADCManagementServerComponent}
>>>
>>> TID: [0] [SCC] [2014-08-11 06:52:50,020]  INFO
>>> {org.wso2.carbon.core.init.JMXServerManager} -  JMX Service URL  :
>>> service:jmx:rmi://localhost:11111/jndi/rmi://localhost:9999/jmxrmi
>>> {org.wso2.carbon.core.init.JMXServerManager}
>>>
>>> TID: [0] [SCC] [2014-08-11 06:52:50,247]  INFO
>>> {org.wso2.carbon.ntask.core.impl.AbstractQuartzTaskManager} -  Task
>>> scheduled: [-1234][TENANT_SYNC_TASK_TYPE][TENANT_SYNC_TASK]
>>> {org.wso2.carbon.ntask.core.impl.AbstractQuartzTaskManager}
>>>
>>> TID: [0] [SCC] [2014-08-11 06:52:50,248]  INFO
>>> {org.wso2.carbon.core.internal.StartupFinalizerServiceComponent} -  Server
>>>           :  Apache Stratos Controller-4.0.0-SNAPSHOT
>>> {org.wso2.carbon.core.internal.StartupFinalizerServiceComponent}
>>>
>>> TID: [0] [SCC] [2014-08-11 06:52:50,248]  INFO
>>> {org.wso2.carbon.core.internal.StartupFinalizerServiceComponent} -  WSO2
>>> Carbon started in 283 sec
>>> {org.wso2.carbon.core.internal.StartupFinalizerServiceComponent}
>>>
>>> TID: [0] [SCC] [2014-08-11 06:52:50,656]  INFO
>>> {org.wso2.carbon.ui.internal.CarbonUIServiceComponent} -  Mgt Console URL
>>> : https://10.0.60.12:9443/carbon/
>>> {org.wso2.carbon.ui.internal.CarbonUIServiceComponent}
>>>
>>>
>>> I came to know, this is loading all the subscriptions when starting.
>>>
>>> At the moment, we have about 600 subscriptions in the environment. With
>>> the number of tenants growing, this can cause major problems.
>>>
>>> What are the solutions we have to address this?
>>>
>>> Regards,
>>> Amila.
>>>
>>> --
>>> *Amila Maharachchi*
>>> Senior Technical Lead
>>> WSO2, Inc.; http://wso2.com
>>>
>>> Blog: http://maharachchi.blogspot.com
>>> Mobile: +94719371446
>>>
>>> --
>>>  <%2B94719371446>
>>> Thanks and Regards,
>>>
>>> Isuru H.
>>> <%2B94719371446>
>>> +94 716 358 048 <%2B94719371446>* <http://wso2.com/>*
>>>
>>>
>>> * <http://wso2.com/>*
>>>
>>>
>>>
>
>
> --
> Best Regards,
> Nirmal
>
> Nirmal Fernando.
> PPMC Member & Committer of Apache Stratos,
> Senior Software Engineer, WSO2 Inc.
>
> Blog: http://nirmalfdo.blogspot.com/
>

Re: Stratos manager seems to load all the subscriptions at startup

Posted by Nirmal Fernando <ni...@gmail.com>.
On Mon, Aug 11, 2014 at 7:48 PM, Isuru Haththotuwa <is...@apache.org>
wrote:

> Hi,
>
> Yes, currently Stratos Manager loads all Subcriptions at startup, and I
> agree this is not a very good practice. To improve this, I can think of two
> methods:
>
> 1. write each tenant's Subscriptions to tenant's own registry, and then
> load them to memory model when the tenant is loading. This information can
> be again removed when the tenant is unloaded.
>

+1

> 2. load some meta information related to the Subscriptions without loading
> everything at server startup, and then load relevant Subscriptions when the
> tenant is getting loaded (lazy loading). Again, we can remove the unloaded
> tenant's information from the memory model.
>
> WDYT?
>
>
> On Mon, Aug 11, 2014 at 7:31 PM, Amila Maha Arachchi <am...@wso2.com>
> wrote:
>
>> Hi all,
>>
>> Recently we were observing a delay when SM is starting in our stratos
>> setup. See the following log segment. It seems ADCManagement component
>> takes a lot of time (in this case 3 minutes).
>>
>> TID: [0] [SCC] [2014-08-11 06:49:39,850]  INFO
>> {org.apache.stratos.messaging.message.receiver.topology.TopologyEventMessageDelegator}
>> -  Topology event message delegator started
>> {org.apache.stratos.messaging.message.receiver.topology.TopologyEventMessageDelegator}
>>
>> TID: [0] [SCC] [2014-08-11 06:49:40,564]  WARN
>> {org.wso2.andes.common.QpidProperties} -  Unable to find resource
>> qpidversion.properties from classloader
>> {org.wso2.andes.common.QpidProperties}
>>
>> TID: [0] [SCC] [2014-08-11 06:50:01,119]  INFO
>> {org.apache.stratos.messaging.message.processor.topology.CompleteTopologyMessageProcessor}
>> -  Topology initialized
>> {org.apache.stratos.messaging.message.processor.topology.CompleteTopologyMessageProcessor}
>>
>> TID: [0] [SCC] [2014-08-11 06:50:01,120]  INFO
>> {org.apache.stratos.manager.topology.receiver.StratosManagerTopologyEventReceiver}
>> -  [CompleteTopologyEventListener] Received: class
>> org.apache.stratos.messaging.event.topology.CompleteTopologyEvent
>> {org.apache.stratos.manager.topology.receiver.StratosManagerTopologyEventReceiver}
>>
>>
>>
>>
>> TID: [0] [SCC] [2014-08-11 06:52:49,971]  INFO
>> {org.apache.stratos.manager.internal.ADCManagementServerComponent} -  ADC
>> management server component is activated
>> {org.apache.stratos.manager.internal.ADCManagementServerComponent}
>>
>> TID: [0] [SCC] [2014-08-11 06:52:50,020]  INFO
>> {org.wso2.carbon.core.init.JMXServerManager} -  JMX Service URL  :
>> service:jmx:rmi://localhost:11111/jndi/rmi://localhost:9999/jmxrmi
>> {org.wso2.carbon.core.init.JMXServerManager}
>>
>> TID: [0] [SCC] [2014-08-11 06:52:50,247]  INFO
>> {org.wso2.carbon.ntask.core.impl.AbstractQuartzTaskManager} -  Task
>> scheduled: [-1234][TENANT_SYNC_TASK_TYPE][TENANT_SYNC_TASK]
>> {org.wso2.carbon.ntask.core.impl.AbstractQuartzTaskManager}
>>
>> TID: [0] [SCC] [2014-08-11 06:52:50,248]  INFO
>> {org.wso2.carbon.core.internal.StartupFinalizerServiceComponent} -  Server
>>           :  Apache Stratos Controller-4.0.0-SNAPSHOT
>> {org.wso2.carbon.core.internal.StartupFinalizerServiceComponent}
>>
>> TID: [0] [SCC] [2014-08-11 06:52:50,248]  INFO
>> {org.wso2.carbon.core.internal.StartupFinalizerServiceComponent} -  WSO2
>> Carbon started in 283 sec
>> {org.wso2.carbon.core.internal.StartupFinalizerServiceComponent}
>>
>> TID: [0] [SCC] [2014-08-11 06:52:50,656]  INFO
>> {org.wso2.carbon.ui.internal.CarbonUIServiceComponent} -  Mgt Console URL
>> : https://10.0.60.12:9443/carbon/
>> {org.wso2.carbon.ui.internal.CarbonUIServiceComponent}
>>
>>
>> I came to know, this is loading all the subscriptions when starting.
>>
>> At the moment, we have about 600 subscriptions in the environment. With
>> the number of tenants growing, this can cause major problems.
>>
>> What are the solutions we have to address this?
>>
>> Regards,
>> Amila.
>>
>> --
>> *Amila Maharachchi*
>> Senior Technical Lead
>> WSO2, Inc.; http://wso2.com
>>
>> Blog: http://maharachchi.blogspot.com
>> Mobile: +94719371446
>>
>> --
>>  <%2B94719371446>
>> Thanks and Regards,
>>
>> Isuru H.
>> <%2B94719371446>
>> +94 716 358 048 <%2B94719371446>* <http://wso2.com/>*
>>
>>
>> * <http://wso2.com/>*
>>
>>
>>


-- 
Best Regards,
Nirmal

Nirmal Fernando.
PPMC Member & Committer of Apache Stratos,
Senior Software Engineer, WSO2 Inc.

Blog: http://nirmalfdo.blogspot.com/

Re: Stratos manager seems to load all the subscriptions at startup

Posted by Lakmal Warusawithana <la...@wso2.com>.
On Mon, Aug 11, 2014 at 7:48 PM, Isuru Haththotuwa <is...@apache.org>
wrote:

> Hi,
>
> Yes, currently Stratos Manager loads all Subcriptions at startup, and I
> agree this is not a very good practice. To improve this, I can think of two
> methods:
>
> 1. write each tenant's Subscriptions to tenant's own registry, and then
> load them to memory model when the tenant is loading. This information can
> be again removed when the tenant is unloaded.
>

+1, this will bring some isolation for tenants space as well.


> 2. load some meta information related to the Subscriptions without loading
> everything at server startup, and then load relevant Subscriptions when the
> tenant is getting loaded (lazy loading). Again, we can remove the unloaded
> tenant's information from the memory model.
>
> WDYT?
>
>
> On Mon, Aug 11, 2014 at 7:31 PM, Amila Maha Arachchi <am...@wso2.com>
> wrote:
>
>> Hi all,
>>
>> Recently we were observing a delay when SM is starting in our stratos
>> setup. See the following log segment. It seems ADCManagement component
>> takes a lot of time (in this case 3 minutes).
>>
>> TID: [0] [SCC] [2014-08-11 06:49:39,850]  INFO
>> {org.apache.stratos.messaging.message.receiver.topology.TopologyEventMessageDelegator}
>> -  Topology event message delegator started
>> {org.apache.stratos.messaging.message.receiver.topology.TopologyEventMessageDelegator}
>>
>> TID: [0] [SCC] [2014-08-11 06:49:40,564]  WARN
>> {org.wso2.andes.common.QpidProperties} -  Unable to find resource
>> qpidversion.properties from classloader
>> {org.wso2.andes.common.QpidProperties}
>>
>> TID: [0] [SCC] [2014-08-11 06:50:01,119]  INFO
>> {org.apache.stratos.messaging.message.processor.topology.CompleteTopologyMessageProcessor}
>> -  Topology initialized
>> {org.apache.stratos.messaging.message.processor.topology.CompleteTopologyMessageProcessor}
>>
>> TID: [0] [SCC] [2014-08-11 06:50:01,120]  INFO
>> {org.apache.stratos.manager.topology.receiver.StratosManagerTopologyEventReceiver}
>> -  [CompleteTopologyEventListener] Received: class
>> org.apache.stratos.messaging.event.topology.CompleteTopologyEvent
>> {org.apache.stratos.manager.topology.receiver.StratosManagerTopologyEventReceiver}
>>
>>
>>
>>
>> TID: [0] [SCC] [2014-08-11 06:52:49,971]  INFO
>> {org.apache.stratos.manager.internal.ADCManagementServerComponent} -  ADC
>> management server component is activated
>> {org.apache.stratos.manager.internal.ADCManagementServerComponent}
>>
>> TID: [0] [SCC] [2014-08-11 06:52:50,020]  INFO
>> {org.wso2.carbon.core.init.JMXServerManager} -  JMX Service URL  :
>> service:jmx:rmi://localhost:11111/jndi/rmi://localhost:9999/jmxrmi
>> {org.wso2.carbon.core.init.JMXServerManager}
>>
>> TID: [0] [SCC] [2014-08-11 06:52:50,247]  INFO
>> {org.wso2.carbon.ntask.core.impl.AbstractQuartzTaskManager} -  Task
>> scheduled: [-1234][TENANT_SYNC_TASK_TYPE][TENANT_SYNC_TASK]
>> {org.wso2.carbon.ntask.core.impl.AbstractQuartzTaskManager}
>>
>> TID: [0] [SCC] [2014-08-11 06:52:50,248]  INFO
>> {org.wso2.carbon.core.internal.StartupFinalizerServiceComponent} -  Server
>>           :  Apache Stratos Controller-4.0.0-SNAPSHOT
>> {org.wso2.carbon.core.internal.StartupFinalizerServiceComponent}
>>
>> TID: [0] [SCC] [2014-08-11 06:52:50,248]  INFO
>> {org.wso2.carbon.core.internal.StartupFinalizerServiceComponent} -  WSO2
>> Carbon started in 283 sec
>> {org.wso2.carbon.core.internal.StartupFinalizerServiceComponent}
>>
>> TID: [0] [SCC] [2014-08-11 06:52:50,656]  INFO
>> {org.wso2.carbon.ui.internal.CarbonUIServiceComponent} -  Mgt Console URL
>> : https://10.0.60.12:9443/carbon/
>> {org.wso2.carbon.ui.internal.CarbonUIServiceComponent}
>>
>>
>> I came to know, this is loading all the subscriptions when starting.
>>
>> At the moment, we have about 600 subscriptions in the environment. With
>> the number of tenants growing, this can cause major problems.
>>
>> What are the solutions we have to address this?
>>
>> Regards,
>> Amila.
>>
>> --
>> *Amila Maharachchi*
>> Senior Technical Lead
>> WSO2, Inc.; http://wso2.com
>>
>> Blog: http://maharachchi.blogspot.com
>> Mobile: +94719371446
>>
>> --
>>  <%2B94719371446>
>> Thanks and Regards,
>>
>> Isuru H.
>> <%2B94719371446>
>> +94 716 358 048 <%2B94719371446>* <http://wso2.com/>*
>>
>>
>> * <http://wso2.com/>*
>>
>>
>>


-- 
Lakmal Warusawithana
Vice President, Apache Stratos
Director - Cloud Architecture; WSO2 Inc.
Mobile : +94714289692
Blog : http://lakmalsview.blogspot.com/

Re: Stratos manager seems to load all the subscriptions at startup

Posted by Isuru Haththotuwa <is...@apache.org>.
Hi,

Yes, currently Stratos Manager loads all Subcriptions at startup, and I
agree this is not a very good practice. To improve this, I can think of two
methods:

1. write each tenant's Subscriptions to tenant's own registry, and then
load them to memory model when the tenant is loading. This information can
be again removed when the tenant is unloaded.
2. load some meta information related to the Subscriptions without loading
everything at server startup, and then load relevant Subscriptions when the
tenant is getting loaded (lazy loading). Again, we can remove the unloaded
tenant's information from the memory model.

WDYT?


On Mon, Aug 11, 2014 at 7:31 PM, Amila Maha Arachchi <am...@wso2.com>
wrote:

> Hi all,
>
> Recently we were observing a delay when SM is starting in our stratos
> setup. See the following log segment. It seems ADCManagement component
> takes a lot of time (in this case 3 minutes).
>
> TID: [0] [SCC] [2014-08-11 06:49:39,850]  INFO
> {org.apache.stratos.messaging.message.receiver.topology.TopologyEventMessageDelegator}
> -  Topology event message delegator started
> {org.apache.stratos.messaging.message.receiver.topology.TopologyEventMessageDelegator}
>
> TID: [0] [SCC] [2014-08-11 06:49:40,564]  WARN
> {org.wso2.andes.common.QpidProperties} -  Unable to find resource
> qpidversion.properties from classloader
> {org.wso2.andes.common.QpidProperties}
>
> TID: [0] [SCC] [2014-08-11 06:50:01,119]  INFO
> {org.apache.stratos.messaging.message.processor.topology.CompleteTopologyMessageProcessor}
> -  Topology initialized
> {org.apache.stratos.messaging.message.processor.topology.CompleteTopologyMessageProcessor}
>
> TID: [0] [SCC] [2014-08-11 06:50:01,120]  INFO
> {org.apache.stratos.manager.topology.receiver.StratosManagerTopologyEventReceiver}
> -  [CompleteTopologyEventListener] Received: class
> org.apache.stratos.messaging.event.topology.CompleteTopologyEvent
> {org.apache.stratos.manager.topology.receiver.StratosManagerTopologyEventReceiver}
>
>
>
>
> TID: [0] [SCC] [2014-08-11 06:52:49,971]  INFO
> {org.apache.stratos.manager.internal.ADCManagementServerComponent} -  ADC
> management server component is activated
> {org.apache.stratos.manager.internal.ADCManagementServerComponent}
>
> TID: [0] [SCC] [2014-08-11 06:52:50,020]  INFO
> {org.wso2.carbon.core.init.JMXServerManager} -  JMX Service URL  :
> service:jmx:rmi://localhost:11111/jndi/rmi://localhost:9999/jmxrmi
> {org.wso2.carbon.core.init.JMXServerManager}
>
> TID: [0] [SCC] [2014-08-11 06:52:50,247]  INFO
> {org.wso2.carbon.ntask.core.impl.AbstractQuartzTaskManager} -  Task
> scheduled: [-1234][TENANT_SYNC_TASK_TYPE][TENANT_SYNC_TASK]
> {org.wso2.carbon.ntask.core.impl.AbstractQuartzTaskManager}
>
> TID: [0] [SCC] [2014-08-11 06:52:50,248]  INFO
> {org.wso2.carbon.core.internal.StartupFinalizerServiceComponent} -  Server
>           :  Apache Stratos Controller-4.0.0-SNAPSHOT
> {org.wso2.carbon.core.internal.StartupFinalizerServiceComponent}
>
> TID: [0] [SCC] [2014-08-11 06:52:50,248]  INFO
> {org.wso2.carbon.core.internal.StartupFinalizerServiceComponent} -  WSO2
> Carbon started in 283 sec
> {org.wso2.carbon.core.internal.StartupFinalizerServiceComponent}
>
> TID: [0] [SCC] [2014-08-11 06:52:50,656]  INFO
> {org.wso2.carbon.ui.internal.CarbonUIServiceComponent} -  Mgt Console URL
> : https://10.0.60.12:9443/carbon/
> {org.wso2.carbon.ui.internal.CarbonUIServiceComponent}
>
>
> I came to know, this is loading all the subscriptions when starting.
>
> At the moment, we have about 600 subscriptions in the environment. With
> the number of tenants growing, this can cause major problems.
>
> What are the solutions we have to address this?
>
> Regards,
> Amila.
>
> --
> *Amila Maharachchi*
> Senior Technical Lead
> WSO2, Inc.; http://wso2.com
>
> Blog: http://maharachchi.blogspot.com
> Mobile: +94719371446
>
> --
> Thanks and Regards,
>
> Isuru H.
> +94 716 358 048* <http://wso2.com/>*
>
>
> * <http://wso2.com/>*
>
>
>