From issues-return-35641-archive-asf-public=cust-asf.ponee.io@openwhisk.incubator.apache.org Wed Mar 20 15:29:07 2019 Return-Path: X-Original-To: archive-asf-public@cust-asf.ponee.io Delivered-To: archive-asf-public@cust-asf.ponee.io Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by mx-eu-01.ponee.io (Postfix) with SMTP id 729DD180791 for ; Wed, 20 Mar 2019 16:29:06 +0100 (CET) Received: (qmail 357 invoked by uid 500); 20 Mar 2019 15:29:05 -0000 Mailing-List: contact issues-help@openwhisk.incubator.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@openwhisk.incubator.apache.org Delivered-To: mailing list issues@openwhisk.incubator.apache.org Received: (qmail 343 invoked by uid 99); 20 Mar 2019 15:29:05 -0000 Received: from ec2-52-202-80-70.compute-1.amazonaws.com (HELO gitbox.apache.org) (52.202.80.70) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 20 Mar 2019 15:29:05 +0000 From: GitBox To: issues@openwhisk.apache.org Subject: [GitHub] [incubator-openwhisk] rabbah commented on a change in pull request #4314: CosmosDB Cache Invalidation Service Message-ID: <155309574502.4748.17767361229727853368.gitbox@gitbox.apache.org> Date: Wed, 20 Mar 2019 15:29:05 -0000 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit rabbah commented on a change in pull request #4314: CosmosDB Cache Invalidation Service URL: https://github.com/apache/incubator-openwhisk/pull/4314#discussion_r267392330 ########## File path: core/cosmosdb/cache-invalidator/README.md ########## @@ -0,0 +1,67 @@ + +# OpenWhisk Cache Invalidator Service + +This service performs cache invalidation in OpenWhisk cluster to enable cache event propagation in multi region setups. + +## Design + +OpenWhisk cluster uses a Kafka topic `cacheInvalidation` to communicate changes to any cached entity. Messages on this +topic are of the form + +```json +{"instanceId":"controller0","key":{"mainId":"guest/hello"}} +``` + +When deploying multiple seprate cluster of OpenWhisk which do not share same Kafka instance we would need a way to +propagate the cache change event across cluster. For CosmosDB based setups this can be done by using [CosmosDB ChangeFeed][1] +support. It enables reading changes that are made to any specific collection. + +This service makes use of [change feed processor java][2] library and listen to changes happening in `whisks` and `subject` +collection and then convert them into Kafka message events which can be sent to `cacheInvalidation` topic of local cluster Review comment: sent to `cacheInvalidation` topic of local cluster -> sent to `cacheInvalidation` topic local to the cluster. ---------------------------------------------------------------- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: users@infra.apache.org With regards, Apache Git Services