openservicemesh / osm

Open Service Mesh (OSM) is a lightweight, extensible, cloud native service mesh that allows users to uniformly manage, secure, and get out-of-the-box observability features for highly dynamic microservice environments.
https://openservicemesh.io/
Apache License 2.0
2.59k stars 277 forks source link

Optimize MRC event handling on startup #5226

Closed jaellio closed 1 year ago

jaellio commented 2 years ago

In response to each MRCEvent the MRC reconciler lists all MRCs in the mesh. Listing all MRCs for each event is done to achieve a level-triggered design. On startup or restart, each existing MRC triggers a create event resulting in O(NM) operations, where N is the number events and M is the number of MRCs in the mesh. This could potentially have an impact on the mesh's performance.

One approach to optimizing event handling is to use a custom informer index:

Related discussion: https://github.com/openservicemesh/osm/pull/5201#discussion_r996326422

github-actions[bot] commented 1 year ago

This issue will be closed due to a long period of inactivity. If you would like this issue to remain open then please comment or update.

github-actions[bot] commented 1 year ago

Issue closed due to inactivity.