On Wed, Apr 26, 2017 at 1:11 PM, Lakmal Warusawithana <[email protected]>
wrote:

>
>
> On Wed, Apr 26, 2017 at 11:34 AM, Pubudu Gunatilaka <[email protected]>
> wrote:
>
>> On Wed, Apr 26, 2017 at 11:02 AM, Lakmal Warusawithana <[email protected]>
>> wrote:
>>
>>>
>>>
>>> On Wed, Apr 26, 2017 at 10:51 AM, Manoj Gunawardena <[email protected]>
>>> wrote:
>>>
>>>> Are we going to use durable subscription here? When ever gw node down
>>>> and re start,
>>>> it should fetch messages which add to the topic during the down time.
>>>> In case durable subscription what is the mechanism to create client id
>>>> for each gw.Is that discussed and confirm?
>>>>
>>>
>>> No, we are not going to use durable topic. New gateways (scaling) or if
>>> we restart a gateway, existing APIs will fetch via API Manager core. Only
>>> new API (after boot up) notifications are getting via the topic and actual
>>> API will fetch from the core. ( we can try what sanjeewa mention - getting
>>> API from the topic - but previous APIs need to fetch from the core)
>>>
>>>
>>
>> When we restart a gateway node, it would be better to fetch only the
>> updated APIs as well as the new APIs. Restarted gateway has the already
>> fetched APIs and it is not worth to fetch all the APIs again. We will have
>> to use durable subscription for this.
>>
>
> How often can gateway restart happen? In container wold no restarts but
> destroy and re-create.
>
>
I was refering to the VM scenario in this case. Restarts could occur when
we apply patches.


>
>> If we consider the container scenario, are we persisting gateway
>> artifacts? If we are not persisting gateway artifacts and restart the
>> gateway container, then we need to fetch all the APIs from the core. IMHO
>> it would better to persist data and load that data at restart as it would
>> take time to fetch all the APIs from the core.
>>
>
>
> IMO persisting give lots of management overheads. Better not to persist
> anything in the gateway. At the moment we thought not to write ballerina
> artifacts (apis) to disk, fetch it from the core and keep it in memory and
> pass to ballerina service apis to create services.
>
>

If we are keeping ballerina artifacts in memory, then we have to fetch all
the APIs from the core. Then we don't need durable subscriptions. As
pointed out during the offline discussion, we are now moving towards tenant
based deployments and there won't be higher number of APIs per tenant.
Also, APIs can be deployed per gateways.

Thank you!
-- 
*Pubudu Gunatilaka*
Committer and PMC Member - Apache Stratos
Software Engineer
WSO2, Inc.: http://wso2.com
mobile : +94774078049 <%2B94772207163>
_______________________________________________
Architecture mailing list
[email protected]
https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture

Reply via email to