Ok, let me know when ready

On Sat, May 10, 2014 at 12:25 AM, Kishanthan Thangarajah <
[email protected]> wrote:

>
>
> On Fri, May 9, 2014 at 10:46 AM, Srinath Perera <[email protected]> wrote:
>
>> Do we need a review?
>>
>
> Yes, we need. I'm currently doing a POC for the above (with all the
> framework hooks). So let's have a review once its done.
>
> Thanks,
> Kishanthan.
>
>>
>>
>> On Fri, May 9, 2014 at 12:08 AM, Kishanthan Thangarajah <
>> [email protected]> wrote:
>>
>>>
>>>
>>>
>>> On Thu, May 8, 2014 at 10:45 PM, Nuwan Bandara <[email protected]> wrote:
>>>
>>>> Hi Kishanthan,
>>>>
>>>> A useful feature indeed, does this mean a tenant can install bundle for
>>>> his own space ?
>>>>
>>>
>>> Yes, each tenant will have a separate space (Region) and they can
>>> install bundles on to it. Other tenants will not be aware of this (bundle
>>> and service life-cycle events will be filtered) and cannot access those
>>> bundles (import package requirements will be filtered) .
>>>
>>> Also a bundle, with same symbolic name and version, can be installed on
>>> multiple tenant regions. This is handled using the BundleCollsionHook.
>>>
>>>>
>>>> Regards,
>>>> /Nuwan
>>>>
>>>>
>>>> On Thu, May 8, 2014 at 5:35 AM, Suresh Attanayaka <[email protected]>wrote:
>>>>
>>>>> HI Kishanthan,
>>>>>
>>>>> This is indeed a very helpful to have, one advantage I would see is we
>>>>> can let the tenants to have deployed their own Authenticators,
>>>>> UserStoreManagers and various other extensions without interfering the
>>>>> system. But how would be expose a Core service such as RealmService
>>>>> or RegistryService ?
>>>>>
>>>>> For example, each tenant will want to access their RealmService to
>>>>> load their configured user-store in their custom Authenticator. How would
>>>>> we make sure the RealmService would return only that tenant's RealmService
>>>>> or it's corresponding user store manager ?
>>>>>
>>>>> Thanks,
>>>>> -Suresh
>>>>>
>>>>>
>>>>> On Thu, May 8, 2014 at 2:45 PM, Kishanthan Thangarajah <
>>>>> [email protected]> wrote:
>>>>>
>>>>>> This is one of the core areas of C5 kernel. In previous carbon
>>>>>> versions, the multi-tenancy aspect was limited to run-time execution 
>>>>>> only.
>>>>>> In there, we used the Axis2 Configuration & Context model to achieve the
>>>>>> multi-tenancy where each tenant got its own execution space during
>>>>>> run-time. But the OSGi environment was not partitioned for tenants and 
>>>>>> was
>>>>>> visible to all, where a bundle (the library and its packages) installed 
>>>>>> by
>>>>>> a tenant was visible to other tenants as well.
>>>>>>
>>>>>> The idea here is to implement Multi-Tenancy at OSGi framework level
>>>>>> also, so that each tenant gets its totally isolated run-time environment.
>>>>>> We are planning to use OSGi "Regions" [1] concept to achieve this with 
>>>>>> the
>>>>>> usage of OSGi framework hooks. A region is a grouping of bundles in an 
>>>>>> OSGi
>>>>>> run-time, which is governed by controls when accessing resources 
>>>>>> (packages,
>>>>>> services) from other regions.
>>>>>>
>>>>>> Each tenant gets its own region and there will be a separate "Kernel"
>>>>>> region where the core bundles/packages/service resides and will be 
>>>>>> exposed
>>>>>> to tenant regions. We can still limit/decide on what to expose from 
>>>>>> kernel
>>>>>> region. Each tenant region will be isolated from each other. They will 
>>>>>> not
>>>>>> see any events (related to bundle, service) or package visibility from
>>>>>> other regions, but only see from it self and kernel. Below image is high
>>>>>> level view of this concept.
>>>>>>
>>>>>> [image: Inline image 1]
>>>>>>
>>>>>> An overview of the framework hooks.
>>>>>>
>>>>>> *RegionResolverHook* - manages the package resolve process for
>>>>>> requirements from bundles in regions.
>>>>>> *RegionBundleFindHook* - manages/filters the BundleContext.getBundle
>>>>>> lookups from region bundles.
>>>>>> *RegionBundleEventHook* - manages/filters the bundle's life-cycle
>>>>>> events for regions.
>>>>>> *RegionBundleCollisionHook* - manages the duplicate bundle resolving
>>>>>> in multiple regions. This will facilitate to have same bundles in 
>>>>>> different
>>>>>> regions.
>>>>>> *RegionServiceFindHook* and *RegionServiceEventHook* -
>>>>>> manages/filters the service lookup and life-cycle events for regions.
>>>>>>
>>>>>> Thoughts suggestions are welcome.
>>>>>>
>>>>>> Thanks,
>>>>>> Kishanthan.
>>>>>> [1] http://wiki.eclipse.org/Virgo/Concepts#Regions
>>>>>>
>>>>>> --
>>>>>> *Kishanthan Thangarajah*
>>>>>> Senior Software Engineer,
>>>>>> Platform Technologies Team,
>>>>>> WSO2, Inc.
>>>>>> lean.enterprise.middleware
>>>>>>
>>>>>> Mobile - +94773426635
>>>>>> Blog - *http://kishanthan.wordpress.com
>>>>>> <http://kishanthan.wordpress.com>*
>>>>>> Twitter - *http://twitter.com/kishanthan
>>>>>> <http://twitter.com/kishanthan>*
>>>>>>
>>>>>> _______________________________________________
>>>>>> Architecture mailing list
>>>>>> [email protected]
>>>>>> https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture
>>>>>>
>>>>>>
>>>>>
>>>>>
>>>>> --
>>>>> Suresh Attanayake
>>>>> Senior Software Engineer; WSO2 Inc. http://wso2.com/
>>>>> Blog : http://sureshatt.blogspot.com/
>>>>> Web : http://www.ssoarcade.com/
>>>>> Facebook : https://www.facebook.com/IdentityWorld
>>>>> Twitter : https://twitter.com/sureshatt
>>>>> LinkedIn : http://lk.linkedin.com/in/sureshatt
>>>>> Mobile : +94755012060
>>>>> Mobile : +016166171172
>>>>>
>>>>> _______________________________________________
>>>>> Architecture mailing list
>>>>> [email protected]
>>>>> https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture
>>>>>
>>>>>
>>>>
>>>>
>>>> --
>>>>
>>>>
>>>> *Thanks & Regards,*
>>>> * Nuwan Bandara | Senior Technical Lead - Solutions Architecture,  WSO2
>>>> Inc.+1 812.606.7390 <%2B1%20812.606.7390> | +1 650.745.4499 Ext 4210
>>>> <%2B1%20650.745.4499%20Ext%204210> | http://nuwanbando.com
>>>> <http://nuwanbando.com>  * <http://www.nuwanbando.com/>
>>>>
>>>> _______________________________________________
>>>> Architecture mailing list
>>>> [email protected]
>>>> https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture
>>>>
>>>>
>>>
>>>
>>> --
>>> *Kishanthan Thangarajah*
>>> Senior Software Engineer,
>>> Platform Technologies Team,
>>> WSO2, Inc.
>>> lean.enterprise.middleware
>>>
>>> Mobile - +94773426635
>>> Blog - *http://kishanthan.wordpress.com
>>> <http://kishanthan.wordpress.com>*
>>> Twitter - *http://twitter.com/kishanthan
>>> <http://twitter.com/kishanthan>*
>>>
>>> _______________________________________________
>>> Architecture mailing list
>>> [email protected]
>>> https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture
>>>
>>>
>>
>>
>> --
>> ============================
>> Srinath Perera, Ph.D.
>>    http://people.apache.org/~hemapani/
>>    http://srinathsview.blogspot.com/
>>
>> _______________________________________________
>> Architecture mailing list
>> [email protected]
>> https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture
>>
>>
>
>
> --
> *Kishanthan Thangarajah*
> Senior Software Engineer,
> Platform Technologies Team,
> WSO2, Inc.
> lean.enterprise.middleware
>
> Mobile - +94773426635
> Blog - *http://kishanthan.wordpress.com <http://kishanthan.wordpress.com>*
> Twitter - *http://twitter.com/kishanthan <http://twitter.com/kishanthan>*
>
> _______________________________________________
> Architecture mailing list
> [email protected]
> https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture
>
>


-- 
============================
Srinath Perera, Ph.D.
  Director, Research, WSO2 Inc.
  Visiting Faculty, University of Moratuwa
  Member, Apache Software Foundation
  Research Scientist, Lanka Software Foundation
  Blog: http://srinathsview.blogspot.com/
  Photos: http://www.flickr.com/photos/hemapani/
   Phone: 0772360902
_______________________________________________
Architecture mailing list
[email protected]
https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture

Reply via email to