open-zaak / open-zaak

Open Zaak is a modern, open-source data- and services-layer to enable zaakgericht werken, a Dutch approach to case management.
Other
39 stars 36 forks source link

Improve insight into Open Zaak performance under duress #1760

Open alextreme opened 2 months ago

alextreme commented 2 months ago

Thema / Theme

Other

Omschrijving / Description

In order to improve insight into the CPU usage of Open Zaak on our nikki performance tests, we can introduce:

Toegevoegde waarde / Added value

No response

Aanvullende opmerkingen / Additional context

No response

sergei-maertens commented 2 months ago

See also docs: https://open-zaak.readthedocs.io/en/stable/development/performance/profiling.html :)

joeribekker commented 2 months ago

Refinement: We can not estimate how much time is needed to make things faster. The best we can do is, try to find bottlenecks and find ways to optimize them. I think 4 weeks would be te minimum to make any progress on this.

We can split it up, so if after 1 week we don't find anything to optimize, we could stop already.

1 week for finding bottlenecks / or find alternative ways to speed things up 1 week to decide and try/out what we can do about it 2 weeks to implement these decisions.

ideas to optimize when all else fail: caching? partial caching? database denormalisation. But these are not prefered.

@JanBrek

PeterVanBragt commented 2 months ago

Let's wait for OZ 1.14 before we go for further analysing

JanBrek commented 2 months ago

@joeribekker One thing that I am thinking of which might help with (db) performance is the caching of produced -types. Due to the nature of these, they are not subject to any change afaik. Hence it should not bring any issues to operations and outdated data. I am sure that the reality is a bit more nuanced but it still might be something additional to look into. This might come in especially handy with the expansion functionality so that [part of] the expansions dont take too much extra resources to be included.

joeribekker commented 2 months ago

@JanBrek yes, I agree. We investigated this a while ago and should be relatively easy. We focused on the Zaken and Documenten API because those were the main issue. I don't know if the Catalog API is worth optimizing.