i have a service, which invoke a external service and do a query from db, and a insert operation to db,
in normal times, the response is fast, avg time is about 200ms(the magor cost is invoke external service), and the service is not busy(about ten thousand per day),although there is no request in time, it always appear slow request, i have deploy the pinpoint, but it can't show any useful information
pinpoint result
and my server log is
pinpoint's other request is heath check
my code is here
wxOauthManager.getOauthResp is a async request to external service
loginService.getOauthLoginUser is a db query, done in 3ms
redis op is async use lettuce, final i log the request, it wrap an event post to application event listener, and async execute it
Affects: \
Comment From: cjdxhjj
how can i figure out the reason, and how to fix it, my server status is below
Comment From: cjdxhjj
the app is upgrade from spring mvc, it work fine, i have two node, when i found that sence, i had rollback one
Comment From: cjdxhjj
the health check url is not exist in system, it alaways return 404
Comment From: cjdxhjj
is any way to solve the poblem, because it occur random. and i can't figure any hard env cause the problem,
Comment From: bclozel
Thanks for reaching out, but the scope of this issue is just too broad; it involves the particular context of your application, external services, network, redis, a database, etc. Reading this issue, I'm not sure where time is being spent for those outlier requests (is it GC, network latency, synchronization issue?).
Unless you've found a very specific performance issue we can solve in Spring Framework (in this case, we need a minimal sample application that reproduces the problem), I think you'll need to keep digging for the cause of this issue. Spring, Reactor Netty and Lettuce all provide ways to increase logging and get a better picture of what's happening.
I'm closing this issue for now, feel free to reopen it if you manage to find a particular performance issue in Spring Framework.