Docs for the distributed datastructures in cps and ncmp 59/135959/3
authormpriyank <priyank.maheshwari@est.tech>
Wed, 13 Sep 2023 10:42:05 +0000 (11:42 +0100)
committermpriyank <priyank.maheshwari@est.tech>
Thu, 14 Sep 2023 15:15:46 +0000 (16:15 +0100)
- listed the distributed datastructures that we use in cps and ncmp.
- summary of the usage in the product.

Issue-ID: CPS-1867
Change-Id: I6535f7cfc6ef68731d22c81500ba4b876e7db0f4
Signed-off-by: mpriyank <priyank.maheshwari@est.tech>
docs/deployment.rst

index 3807d71..acc32e3 100644 (file)
@@ -310,3 +310,31 @@ CPS-Core Docker Installation
 
 CPS-Core can also be installed in a docker environment. Latest `docker-compose <https://github.com/onap/cps/blob/master/docker-compose/docker-compose.yml>`_ is included in the repo to start all the relevant services.
 The latest instructions are covered in the `README <https://github.com/onap/cps/blob/master/docker-compose/README.md>`_.
+
+CPS-Core and NCMP Distributed Datastructures
+============================================
+
+CPS-Core and NCMP both internally uses embedded distributed datastructure to replicate the state across various instances for low latency.
+These instances require some additional ports to be available. The default range starts from 5701 and based on the number of instances configured they are incremented sequentially.
+
+Below are the list of distributed datastructures that we have.
+
++--------------+---------------------------------+----------------------------------------------------------+
+| Component    | Datastructure name              |                 Use                                      |
++==============+=================================+==========================================================+
+| cps-core     | anchorDataCache                 | Used to resolve prefix for the container name.           |
++--------------+---------------------------------+----------------------------------------------------------+
+| cps-ncmp     | moduleSyncStartedOnCmHandles    | Watchdog process to register cmHandles.                  |
++--------------+---------------------------------+----------------------------------------------------------+
+| cps-ncmp     | dataSyncSemaphores              | Watchdog process to sync data from the nodes.            |
++--------------+---------------------------------+----------------------------------------------------------+
+| cps-ncmp     | moduleSyncWorkQueue             | Queue used internally for workers to pick the task.      |
++--------------+---------------------------------+----------------------------------------------------------+
+| cps-ncmp     | forwardedSubscriptionEventCache | Keeps track of the LCM Subscription Events.              |
++--------------+---------------------------------+----------------------------------------------------------+
+| cps-ncmp     | untrustworthyCmHandlesSet       | Stores untrustworthy cmHandles whose TrustLevel is NONE. |
++--------------+---------------------------------+----------------------------------------------------------+
+| cps-ncmp     | trustLevelPerDmiPlugin          | Stores the TrustLevel for the dmi-plugins.               |
++--------------+---------------------------------+----------------------------------------------------------+
+
+Total number of caches : 7
\ No newline at end of file