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

[Utility] Optimize usage of HTTP client for performing relays #837

Open
11 tasks
adshmh opened this issue Jun 17, 2023 · 2 comments
Open
11 tasks

[Utility] Optimize usage of HTTP client for performing relays #837

adshmh opened this issue Jun 17, 2023 · 2 comments
Assignees
Labels
utility Utility specific changes

Comments

@adshmh
Copy link
Contributor

adshmh commented Jun 17, 2023

Objective

Optimize usage of HTTP client, e.g. for connection reuse, by the servicer. This can be very important depending on the volume of relays a servicer is expected to handle.

Origin Document

Part of work on #754

Starting point, from #803:

image

and

image

Goals

  • Investigate settings for optimal performance of HTTP clients (and the underlying Transport in the standard HTTP library of GOLANG): examples include Connection Reuse, Connection Pools, etc.
  • Implement the requied optimization in the servicer when serving the relay.

Deliverable

  • Documentation of the expected volume of relays a servicer should be able to handle, possibly defined as multiple SLAs.
  • Documentation of the optimizations deemed necessary to achieve the expected performance
  • Updating the code of servicer and other related components.

Non-goals / Non-deliverables

General issue deliverables

  • Update any relevant local/global README(s)
  • Update relevant source code tree explanations
  • Add or update any relevant or supporting mermaid diagrams

Testing Methodology

  • Task specific tests or benchmarks: make ...
  • New tests or benchmarks: make ...
  • All tests: make test_all
  • LocalNet: verify a LocalNet is still functioning correctly by following the instructions at docs/development/README.md
  • k8s LocalNet: verify a k8s LocalNet is still functioning correctly by following the instructions here

Creator: @adshmh
Co-Owners: @Olshansk

@adshmh adshmh added the utility Utility specific changes label Jun 17, 2023
@adshmh adshmh self-assigned this Jun 17, 2023
@adshmh adshmh changed the title [Utility] // DISCUSS: we need to optimize usage of HTTP client, e.g. for connection reuse, considering the expected volume of relays [Utility] Optimize usage of HTTP client for performing relays Jun 17, 2023
@Olshansk
Copy link
Member

@adshmh NIT (no action but for future reference): If there is a screenshot you can take of the code, PR or documentation as part of the origin document, I've found it really helps both the owner (in case a lot of time goes by), myself and others.

For this one, I could find anything perfect, but this from #778 is a good starting point to look at the code

Screenshot 2023-06-20 at 10 41 27 AM

@adshmh
Copy link
Contributor Author

adshmh commented Jun 28, 2023

@adshmh NIT (no action but for future reference): If there is a screenshot you can take of the code, PR or documentation as part of the origin document, I've found it really helps both the owner (in case a lot of time goes by), myself and others.

For this one, I could find anything perfect, but this from #778 is a good starting point to look at the code

Thank you for the suggestion. I updated the Issue description with 2 screenshots which focus on the specific area this issue is about.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
utility Utility specific changes
Projects
Status: Backlog
Development

No branches or pull requests

2 participants