-
Notifications
You must be signed in to change notification settings - Fork 2.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
Noisy logging from TCPServerBase#listen during startup #4439
Comments
binding a server is a non blocking interaction with the system, can you elaborate what do you think make it blocking ? |
Hi @vietj , what led me to believe it was blocking were stack traces like the following. This is from version 4.1.7 in Quarkus 2.2.5, but I don't think it's fundamentally changed in more recent versions. I'll be able to get an updated stack trace tomorrow if necessary.
|
I see, I think we should modify SSLHelper to have the validate operation to be executed on a worker thread then. |
Thanks, I'll test that out to confirm it. |
@vietj , updating |
that's correct, the SSLHelper should validation should return a future and the listen would use it to continue the internal execution of the server bind. |
I've had some success with the changes to I've also found that |
I think we can move validation to another method than the constructor
…On Wed, Jul 20, 2022 at 11:57 PM Michael Edgar ***@***.***> wrote:
I've had some success with the changes to SSLHelper as they relate to
TCPServerBase. It's take some re-factoring of the TCPServerBase#listen
method to account for handling of shared servers, I'll post a draft PR
tomorrow for feedback.
I've also found that SSLHelper#validate is called from the NetClientImpl
constructor, which is proving to be a bit more challenging.
—
Reply to this email directly, view it on GitHub
<#4439 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AABXDCTDXGLZ2HBYGLHMW33VVBY47ANCNFSM53WQA53Q>
.
You are receiving this because you were mentioned.Message ID:
***@***.***>
|
I opened #4441 for this. |
Version
Context
In a resource-constrained environment (e.g. Kubernetes with limited a CPU request/limit), the start-up of the HTTP server results in multiple blocked thread stack traces being logged. When deploying both TLS and plain text hosts this increases as well.
Scenario is also referenced in #1379
Extra
Given the likelihood of this situation occurring and producing log noise, it seems it may be desirable to execute
listen
using internal worker threads. I've verified this works with my application [1], but would like to discuss here if this approach is correct more broadly within Vert.x.[1] https://github.com/eclipse-vertx/vert.x/compare/master...MikeEdgar:vert.x:tcpserverbase-listen-blocking?expand=1
The text was updated successfully, but these errors were encountered: