-
Notifications
You must be signed in to change notification settings - Fork 3.1k
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
zipkin ui very slow when has a lot of span #1460
Comments
we are trace is very big, and have a lot of spans,
define big? spans are typically no more than 1KiB in size (often far less
than that, like hundreds of bytes)
so zipkin's ui very slow when i choose span name or into some big trace.
can you show a profile from Chrome debug tools?
i use zipkin 1.16 and use es store?
ok
does have any way to speed ui's performance?
probably, but we'd need to try and understand what we are optimizing for.
|
yeah I think this could be optimized. @cburroughs are you interested in cracking knuckles on some performance work? |
Could you give some details about the particular trace that is slow as a point of reference? How many spans does it have? Or how many KiB is the json? |
@cburroughs based on the screen shot.. looks like roughly 10k spans at a maximum depth of 7. dunno about the size of the json @dragontree101 ? |
@adriancole we've also experienced issues where by a trace with over 3,000 spans ended up crashing the chrome instance we were using to view the zipkin UI. The UI was also pretty non perform-ant prior to the crash. |
The "10k span problem" was discussed at the most recent tracing workshop. We are not alone, for example even Google's UI doesn't render with thousands of spans per trace. Here are some options
|
Have you considered a slightly more optimized rendering technique? I haven't profiled things myself but the places I'd start poking around are:
Our use case, btw, is that we have a fairly involved data gathering/generation system that sometimes has to do a deep dive through various web services to get all of it's data. We try to identify repeated requests and consolidate them into bulk requests (in code, not zipkin) to alleviate this issue but we still have it on occasion. One of our biggest improvements in this area was to break up traces so that the typical "large traces" now link to "child traces" so that you can see at the high level how long things took or navigate off to another trace to see detail for a particular section. |
Tip: we were able to scale Jaeger UI to 50k spans by using a viewport technique. |
Thanks for the tips, folks. I don't think many have mentioned concrete
ways to improve UI performance. Lucky for us though
@igorwwwwwwwwwwwwwwwwwwww has been active in related performance work
and who knows... might be able to carry this forward.
The most concrete way to improve the UI is available, capable hands.
We don't have fulltime UI staff, so appreciate volunteers who offer
advice or take time to fix things. Thank you.
|
In order to reproduce the issue it would be helpful to get a gist with a JSON blob of the trace, that can be POSTed against zipkin. |
@igorwwwwwwwwwwwwwwwwwwww don't have a prebaked utility to make large traces, but this lua script could probably be modified to do so.. #1226 (comment) |
@igorwwwwwwwwwwwwwwwwwwww, I have a trace with 9k spans in it that can probably be used for your purposes (with the aid of #1884). Is there a "private" way I can send it to you? Nothing super-confidential in it but enough I don't want it to be public. Or did @adriancole's lua script fit your need? Edit: sent the trace :) |
not sure this will change anything but next zipkin release will update jquery lib and we should retry #1954 |
This issue relates to the classic Zipkin UI. Lens has seen many performance improvements since then. Having testing with 10k span traces myself, i see these loading in just in 7-8 seconds on my laptop. UX wise this can still be improved sure, but it's definitely a major improvement over classic UI. If you're considering posting similar issues against Lens, please provide us with an anonymized version of your slow loading trace so we can benchmark and profile it. |
we are trace is very big, and have a lot of spans,
so zipkin's ui very slow when i choose span name or into some big trace.
i use zipkin 1.16 and use es store?
does have any way to speed ui's performance?
The text was updated successfully, but these errors were encountered: