Hi Mahesh, What about the other failure situation within BPEL, like initializeBuildManager and initializeRepositoryManager. Can we do that also consuming this topics ? Because that also mandatory for the tenant creation flow. WDYT ?
thanks *Harsha Thirimanna* Senior Software Engineer; WSO2, Inc.; http://wso2.com * <http://www.apache.org/>* *email: **[email protected]* <[email protected]>* cell: +94 71 5186770 , +94 * *774617784twitter: **http://twitter.com/ <http://twitter.com/afkham_azeez>* *harshathirimannlinked-in: **http: <http://lk.linkedin.com/in/afkhamazeez>**//www.linkedin.com/pub/harsha-thirimanna/10/ab8/122 <http://www.linkedin.com/pub/harsha-thirimanna/10/ab8/122>* *Lean . Enterprise . Middleware* On Wed, Dec 17, 2014 at 1:31 PM, Mahesh Chinthaka <[email protected]> wrote: > > Hi all, > > Im working on Making the tenants subscription to stratos environments > fault tolerant [1] > > This has been discussed in mail thread with subject - "[Architecture] > [AF] Tenant subscribing to stratos environments - making it fault tolerant" > > *Issue* > > *====* > > There are some possible failure points in AF, hence in App Cloud. One such > critical point is making the tenants subscribed to the dev, test and prod > stratos environments. Due to any reason, if this step fails, then, thats > the end of story for that tenant. > > > Actually in appfactory tenant creation, > > When a tenant creation request is made, appfactory sends REST calls to > stratos environments (dev,prod,test) to create tenants. At the moment there > is no way to overcome a situation where tenant creation fails in one or > more stratos environments. > > *Proposal* > > *=======* > > Here what I'm going to do is, integrate WSO2 Message Broker to take tenant > creation requests to a durable topic and manipulate the process in a > fault tolerant manner. The durable topic will keep messages around > persistently for any suitable consumer to consume them. > > > Appfactory will have a publisher who publishes messages in the topic > inside MB when a tenant creation is requested. > > > There will be a subscriber for each stratos environment who is listening > to above topic(create_teanant). If subscription is successfull then > subscriber will acknowledge to MB and MB will not send that particular > request to same subscriber again. If subscription got failed subscriber > will not ack. and MB will take care of sending that request until it > becomes successful. > > > At the moment we have 3 stratos environments therefore we will have 3 > subscribers listening to that particular topic(create_teanant) in MB. In a > case of AF having more stratos environments in future, it is possible to > add more subscribers. Durable topic subscribers[2] will be used here since > it will persist the subscription on behalf of the client subscription when > client is not online. > > > This step is not synchronous therefore above changes will not effect the > tenant creation flow. > > > *Architectural diagram * > > *=================* > > Architectural diagram can be found in [3] > > > > > > > [1] - https://wso2.org/jira/browse/APPFAC-2436 > > [2] - > https://docs.wso2.com/display/MB220/Creating+a+Durable+Topic+Subscription > > [3] - > https://docs.google.com/a/wso2.com/drawings/d/15CmM3rCTwjUUu4V6lp2WX32nRzufraDXawALNYIoTek/edit > > -- > *Mahesh Chinthaka Vidanagama* | Software Engineer > WSO2, Inc | lean. enterprise. middleware. > #20, Palm Grove, Colombo 03, Sri Lanka > Mobile: +94 71 63 63 083 | Work: +94 112 145 345 > Email: [email protected] | Web: www.wso2.com > > _______________________________________________ > Architecture mailing list > [email protected] > https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture > >
_______________________________________________ Architecture mailing list [email protected] https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture
