Hi All,

Currently we are using the registry as the Gadget repository. Which means,

   1. When a user uploads a gadget it get deployed in the registry
   2. At server start up default gadgets added to the registry
   3. When a Tenant logs-in for the 1st time the default gadgets getting
   populated to the registry

In all these cases, once the gadgets get populated to the registry we take
the resource's HTTP url as the gadget URL. The requirement of Shindig is
simply to have a HTTP url for the gadgets so it can render the iframe out of
it.

However at the moment we are seeing some issues when these gadgets getting
populated for the first time, Main reason is, in cases such as BAM there are
about ~150 gadget resources which are getting populated to the registry and
this registry PUT operation takes a long time.

As a solution and maybe the most efficient one, we can add these files
directly to the file system and deploy them as Web Apps, so that they will
have a HTTP URL without an issue. From the scalability point of view, I
believe the Deployment Synchronizer will copy there webapps (gadgets) to
other nodes, as it is done as of now for other webapps deployed in AS.

We need to look into three main areas.

   - Deploy (add gadget) / Undeploy (remove gadget)

This should be straight forward. When a user upload a gadget.xml file from
the backend we can archive it as a .war file and deploy in the webapps
directory

   - Edit the gadget.xml from the UI and redeploy

We might have to work on this, since at the moment we don't have such
feature. So ideally we should list out the files in the .war and make them
editable from the UI. and once done need to redeploy.

   - Permission

Bit tricky, am not sure how webapps handle permission at the moment (some
insight much appreciated). I belive we should be able to restrict the webapp
for certain users (of a tenant in MT setup) ?

As the main advantages what I see is that, these gadgets will reside in the
file system (similar to the files in a web application) and also at the time
of population at tenant login we can simply do a file copy for the default
gadgets, so its much faster.

I would like to try this out in trunk, Opinions, suggestions and correction
welcome

-- 
*Thanks & Regards,

Nuwan Bandara
Senior Software Engineer
WSO2 Inc. | http://wso2.com
lean . enterprise . middleware

http://nuwan.bandara.co
*
<http://www.nuwanbando.com/>
_______________________________________________
Carbon-dev mailing list
Carbon-dev@wso2.org
http://mail.wso2.org/cgi-bin/mailman/listinfo/carbon-dev

Reply via email to