Hi Devs,

Currently the cluster-id is generated as below;

cluster-id = subscriptionAlias . cartridgeType . domain;

For example, cluster-id would be my-php.php.domain

And cluster monitors are stored against cluster-id (Map<cluster-id,
cluster-monitor>). So what will happen if two different applications are
using php cartridge and they use the same alias (my-php). Then we will have
only one cluster monitor which will monitor two clusters :) Completely
wrong!

Therefore solution would be to change cluster-id generation logic as below;

cluster-id = applicationId . subscriptionAlias . cartridgeType . domain;

I am seeing following issues in above solution

   - If we allow an application to be deployed multiple times in future, we
   might need to use the following logic.

   cluster-id = applicationAlias . subscriptionAlias . cartridgeType .
   domain;

   - If we allow same aliases to be used multiples times within an
   application, then we have a complex problem!


Ideally we should generate these cartridge aliases automatically at
runtime. But since we are using aliases to define dependencies, I have no
idea how to define dependencies if we generate cartridge aliases at runtime.

Please share your thoughts on this.

Thanks.

-- 
Rajkumar Rajaratnam
Committer & PMC Member, Apache Stratos
Software Engineer, WSO2

Mobile : +94777568639
Blog : rajkumarr.com

Reply via email to