[Feature] Make bytebuddy ignore some classes to speed up startup time #13064
Replies: 1 comment 4 replies
-
If your app is sensitive like such, please do that internally. |
Beta Was this translation helpful? Give feedback.
4 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
Search before asking
Description
In our company's promotion of Skywalking, we found that some project team feedback after adding Skywalking-java will make the application startup time longer (35s -> 60s). The way to verify this is to use JMeter to continuously send Http requests to the application, then record the time and start the application again, until JMeter's request no longer return error, then calculate the time gap.
I've hardcoded the time spent on the following methods
SkyWalkingAgent#premian
SkyWalkingAgent.Transformer#transform
ProtectiveShieldMatcher#matches
like this
Until the application is able to handle http requests correctly, the most time-consuming method is
ProtectiveShieldMatcher#matches
, it cost 16s+. The application contains a large number of classes, mostly prefixed withcom.our.company
, which do not need to be enhanced. I got a huge reduction in startup time by ignoring this prefixed class in Bytebuddy.Use case
For applications that are sensitive to startup time and require fast deployment and scaling, applications are less tolerant of increased startup time. Reduce the startup time increase by ignoring classes that enhance the specified prefix. This prefix can probably be configured in
agent.config
Related issues
No response
Are you willing to submit a pull request to implement this on your own?
Code of Conduct
Beta Was this translation helpful? Give feedback.
All reactions