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

Extend netty configuration #2971

Closed
8 of 9 tasks
adamw opened this issue Jun 16, 2023 · 2 comments · Fixed by #3615
Closed
8 of 9 tasks

Extend netty configuration #2971

adamw opened this issue Jun 16, 2023 · 2 comments · Fixed by #3615
Labels
enhancement New feature or request Netty

Comments

@adamw
Copy link
Member

adamw commented Jun 16, 2023

Currently configuration of Netty-based interpreters is split into two parts:

  • NettyConfig, which configures the Netty server itself - the pipeline, networking etc.
  • NettyFutureServerOptions, which configures the Netty server interpreter

The goal of this task is to extend the configuration with some useful options known from other servers. This should mostly influence NettyConfig, but it's also possible that NettyXServerOptions will have to be made dependent on NettyConfig.

Options to add (roughly following https://doc.akka.io/docs/akka-http/current/configuration.html):

  • default Server: header (if none is specified explicitly)
  • idle timeout
  • request timeout
  • bind timeout
  • linger timeout (if applicable to netty?)
  • max connections
  • backlog (maybe this is already implemented as socketBacklog?)
  • socket options
  • max content length: this should be configurable globally, and per-endpoint. The implementations might be unrelated, and the per-endpoint should probably use an attribute + an interceptor

Config options can be grouped into sub-config-objects if necessary. This should probably be split into a couple of PRs.

@wydra98
Copy link
Contributor

wydra98 commented Jun 30, 2023

There is no option in the default Netty configuration to set the max-connections and max-content-length options. Additionally, I'm not certain about the default header. There is also no option available in the default Netty configuration, but shouldn't it be handled at the Tapir level?

@adamw
Copy link
Member Author

adamw commented Jul 6, 2023

If these are not already implemented as a Netty option, we have to implement them ourselves :)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request Netty
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants