Skip to content

Conversation

@arunpandianp
Copy link
Contributor

@arunpandianp arunpandianp commented May 7, 2022

Java HTTP[S]Connection's keep alive by default keeps 5 idle connections alive. Dataflow user workers could make 1000s of connection to the same endpoint. The HTTPS handshake overhead is significant in pipelines using BigQueryIO streaming inserts and bumping up the keep alive limit reduces it.


Thank you for your contribution! Follow this checklist to help us incorporate your contribution quickly and easily:

  • Choose reviewer(s) and mention them in a comment (R: @username).
  • Format the pull request title like [BEAM-XXX] Fixes bug in ApproximateQuantiles, where you replace BEAM-XXX with the appropriate JIRA issue, if applicable. This will automatically link the pull request to the issue.
  • Update CHANGES.md with noteworthy changes.
  • If this contribution is large, please file an Apache Individual Contributor License Agreement.

See the Contributor Guide for more tips on how to make review process smoother.

To check the build health, please visit https://github.com/apache/beam/blob/master/.test-infra/BUILD_STATUS.md

GitHub Actions Tests Status (on master branch)

Build python source distribution and wheels
Python tests
Java tests

See CI.md for more information about GitHub Actions CI.

Java HTTP[S]Connection's keep alive by default keeps 5 idle connections alive. Dataflow user workers could make 1000s of connection to the same endpoint. The HTTPS handshake overhead is significant in pipelines using BigQueryIO streaming inserts and bumping up the keep alive limit reduces it. The keep alive connection count can be changed by setting the JVM system property "http.maxConnections".
@asf-ci
Copy link

asf-ci commented May 7, 2022

Can one of the admins verify this patch?

1 similar comment
@asf-ci
Copy link

asf-ci commented May 7, 2022

Can one of the admins verify this patch?

@arunpandianp
Copy link
Contributor Author

R: @kennknowles

@arunpandianp
Copy link
Contributor Author

I have some trouble with my local docker setup, so couldn't build the containers with the gradle targets locally and test.

@kennknowles
Copy link
Member

Is this going to be a safe default across lots of different contexts? This same code runs locally, during testing, on Spark & Flink & Samza, etc.

@arunpandianp
Copy link
Contributor Author

Is this going to be a safe default across lots of different contexts?

Thinking more about this, It is hard to say for sure. Since there is a way to set the setting using JvmInitializers, I'll close this PR.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants