-
-
Notifications
You must be signed in to change notification settings - Fork 77
Performance and scaling issue #498
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Comments
cue version
Cue version is the same as is used in timoni. |
You need to set all the required values in the debug values file |
Thanks, fixed that. |
Yeah I was expecting this, please open an issue in the cue lang repo here https://github.com/cue-lang/cue |
Do you think I can use the repo with timoni declaration for this bug report or better to extract something smaller? |
As long as they can reproduce it with just the cue command I think it’s fine to point them to the repo with the Timoni module, in the end a Timoni module is just a CUE module. |
CUE's master branch is rocket faster and uses 3 times less memory for my example eshubin/timoni-bug@d405e41. |
Do you plan to integrate the newer version of CUE? CUE v0.12.1 does not have that optimization eshubin/timoni-bug@23726cd |
If the optimization is in the latest stable CUE release we can update Timoni deps and make a release. I can do that next week. |
only in the master branch for now. |
Uh oh!
There was an error while loading. Please reload this page.
Hello Stefan,
I created a timoni manifest for a project with pretty big number of services (in terms of Service Oriented Architecture) and reached some limitations of timoni. As I can not disclose the real source code, a simple demo project is opensourced.
In order to reduce a boilerplate code I extracted common pieces of Deployments, ConfigMaps and service configuration.
Services (1,2,3 ...) configuration have some repeatable parts such as MongoDB, S3, MySQL, etc. Each of these parts has global and per service configuration, merged in common code.
I noticed that with a growth of the manifest a simple command
timoni mod vet
started taking more and more time and memory. Metrics of memory usage and time were taken from the output of the command/usr/bin/time -v timoni mod vet
on Ubuntu 22.04 and timoni 0.24.0 (the same behaviour on older versions), fieldsMaximum resident set size
andElapsed (wall clock) time
correspondingly.As you can see from README on each git tag memory usage grows exponentially for each new service.
So for 4 services
timoni mod vet
used 275MB of memory and took 3 seconds.For 5 it was 400MB and 8 seconds.
For 6 it is already 580MB and 10 seconds.
On real project with more services and bigger configs I reached 7GB of memory usage and 7 minutes of execution time.
Could you, please, assist with resolving that issue?
Best,
Eugene
The text was updated successfully, but these errors were encountered: