Skip to content
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

[Request] Replace WebClient with QuarkusRestClient #778

Open
andrewazores opened this issue Jan 15, 2025 · 0 comments
Open

[Request] Replace WebClient with QuarkusRestClient #778

andrewazores opened this issue Jan 15, 2025 · 0 comments
Labels
feat New feature or request

Comments

@andrewazores
Copy link
Member

andrewazores commented Jan 15, 2025

Describe the feature

The Mutiny/Vertx WebClient should be replaced by QuarkusRestClient where possible:

https://quarkus.io/guides/rest-client

This provides more configuration options and nice things like service interfaces rather than dealing with direct HTTP responses.

  1. RecordingHelper uses the WebClient for jfr-datasource. This should be pretty easy to convert to a QuarkusRestClient similar to the ReportSidecarService.
  2. AgentClient uses the same WebClient for all Agent instance communications. With the new @Url annotation in Quarkus 3.16+ it should also be pretty easy to convert this.
  3. ContainerDiscovery uses the WebClient to talk to the Docker or Podman APIs. This may not make sense to port to QuarkusRestClient since this requires a Unix domain socket and Netty native transport.
  4. Health uses the WebClient to test other services' health (datasource, dashboard, reports). This looks like it can also be converted easily, and cleanly with @Url.

Anything other information?

See:

Once this is done, hostname verification (and other TLS configuration properties) can be controlled for each particular client, so checks can be disabled only where specifically needed.

@andrewazores andrewazores added the feat New feature or request label Jan 15, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
feat New feature or request
Projects
None yet
Development

No branches or pull requests

1 participant