-
Notifications
You must be signed in to change notification settings - Fork 8.3k
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
[Meta] Kibana platform performance #63848
Comments
Pinging @elastic/kibana-operations (Team:Operations) |
Pinging @elastic/kibana-platform (Team:Platform) |
I think we need at least 2 types of performance tests for Kibana.
|
@restrry The APM team is more appropriate for advice on setting up APM for Kibana. AFAIK, there's already an option to do so. |
I think we should have APM running across our Kibana Platform for our Perf tests. We can learn great points of improvements there. That said, would it make sense to have a Pulse channel with a minimum set of performance stats? We can't (and don't want to) go as deep as APM in the analysis, but something that goes into telemetry to let us understand the best and recommended hardware based on our users' experiences? i.e.: We can learn that users with hardware X perceived an improved behaviour over those ones running on hardware Y or provider Z. |
@LeeDr We are working on #62263 and interested in time between a request initiated and page with an app rendered. |
@restrry it's possible to measure that with some caveats.
|
We can write a specific test-case loading only a pre-defined page
I believe we can consider
That's not really good. Is it okay if we make retry delay configurable? @dmlemeshko
Yes, that will require additional work (if even possible) to run the test on the same hardware in an isolated env. Not sure we have time to do it properly right now. IMO, running tests on Jenkins several times is the acceptable solution at the moment. |
@LeeDr I remember that some aspects of the perf testing have been discussed on GAH. From the summary email:
However, I don't see any issues linked to QA team roadmap https://github.com/elastic/kibana-team/issues/103 Would you mind adding the issues to the roadmap and the perf meta issue? |
@dmlemeshko is working on the first one but still comparing a couple of different tools to find what will work best long-term for Kibana. We'll get an issue created soon to document the plan and update the status.
We haven't started anything on this one yet
|
from #71753 |
I have some plans for this, will start joining the performance group sync every time. |
@suchcodemuchwow is also working to capture page load time currently in an isolated environment simulating a real-world user. |
Closing for now, lets reopen if needed |
Introducing the Kibana platform changed the way Kibana applications are built, loaded and run.
We didn't gather performance metrics before & during migration and found ourselves in the position when our customers already started experiencing degraded performance for page load time.
To improve the current situation we can split our work into different categories:
Page loading time
All the plugins are built as separate packages in the Kibana platform. It increased both the size of each bundle downloaded at startup and the number of simultaneous concurrent requests to the server.
Sub-tasks:
brotli
compression algorithms Use brotli compression for some KP assets #64367enable tree shaking to remove dead code: Enables tree shaking in production for plugins #62390core
bundle size #95890export type
for public bundles via documentationTo prevent problems on an early stage in the future we are going to start tracking performance metrics during development(CI metric report)
I'm wondering if we can collaborate with Elastic Cloud / Telemetry / Pulse teams on creating a centralized performance dashboard for production load time metrics.
Runtime performance
This falls into 2 sub-categories:
Memory
Kibana platform was created in mind with supporting SPA mode for Kibana. It means that time of life for the Kibana app is much higher as a page is reloaded less frequently. This puts increased demands on memory leak control. Kibana must remain operable when one application is running for a long time and when the user switches between several applications. We should automate such a check on CI. @elastic/kibana-qa have you got a setup for such type of testing? I saw some dashboards for similar metrics in #59454
CPU
That's tricky and might require setting up APM for Kibana.
Sub-tasks:
@kbn/config-schema
@kbn/config-schema is slow #78351The text was updated successfully, but these errors were encountered: