You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: docs/documentation/features.md
+19-13Lines changed: 19 additions & 13 deletions
Original file line number
Diff line number
Diff line change
@@ -713,19 +713,25 @@ See also an example implementation in the
713
713
714
714
## Optimization of Caches
715
715
716
-
Incase of large clusters with huge amount of resources the memory consumption of an operator.
717
-
In order to reduce the memory consumption both primary and secondary resources in cache can be pruned, thus only
718
-
partial objects will remain in memory.
719
-
720
-
This has some implications regarding how those objects needs to be managed within a reconciler. Since from this point
721
-
reconciler will work only from partial object, all the updates on the pruned resources needs to be done by a PATCH
722
-
operations, thus just to send only the required changes.
723
-
724
-
To see how to use, and how to handle related caveats regarding patches what utilizes
725
-
[server side apply](https://kubernetes.io/docs/reference/using-api/server-side-apply/) check the provided
726
-
[integration test](https://github.com/java-operator-sdk/java-operator-sdk/blob/c688524e64205690ba15587e7ed96a64dc231430/operator-framework/src/test/java/io/javaoperatorsdk/operator/CachePruneIT.java) and reconciler.
727
-
728
-
DependentResources does not work with pruned caches for now.
716
+
Operators using informers will initially cache the data for all known resources when starting up
717
+
so that access to resources can be performed quickly. Consequently, the memory required for the
718
+
operator to run and startup time will both increase quite dramatically when dealing with large
719
+
clusters with numerous resources.
720
+
721
+
It is thus possible to configure the operator to cache only pruned versions of the resources to
722
+
alleviate the memory usage of the primary and secondary caches. This setup, however, has
723
+
implications on how reconcilers deal with resources since they will only work with partial
724
+
objects. As a consequence, resources need to be updated using PATCH operations only, sending
725
+
only required changes.
726
+
727
+
To see how to use, and how to handle related caveats regarding how to deal with pruned objects
728
+
that leverage
729
+
[server side apply](https://kubernetes.io/docs/reference/using-api/server-side-apply/) patches,
0 commit comments