SeleniumHQ / docker-selenium

Provides a simple way to run Selenium Grid with Chrome, Firefox, and Edge using Docker, making it easier to perform browser automation
http://www.selenium.dev/docker-selenium/
Other
7.98k stars 2.51k forks source link

[πŸš€ Feature]: Gateway API #2375

Open Doofus100500 opened 2 months ago

Doofus100500 commented 2 months ago

Feature and motivation

Hi, I encountered an issue where WebSocket connections drop during the application of the Nginx configuration, resulting in 502 errors. One potential solution could be migrating to Gateway API. It would be great to add the option to create resources for Gateway API in the chart. For a quick start, you can use ingress2gateway

Usage example

This will permanently resolve the issue with WebSocket disconnections.

github-actions[bot] commented 2 months ago

@Doofus100500, thank you for creating this issue. We will troubleshoot it as soon as we can.


Info for maintainers

Triage this issue by using labels.

If information is missing, add a helpful comment and then I-issue-template label.

If the issue is a question, add the I-question label.

If the issue is valid but there is no time to troubleshoot it, consider adding the help wanted label.

If the issue requires changes or fixes from an external project (e.g., ChromeDriver, GeckoDriver, MSEdgeDriver, W3C), add the applicable G-* label, and it will provide the correct link and auto-close the issue.

After troubleshooting the issue, please add the R-awaiting answer label.

Thank you!

VietND96 commented 2 months ago

It looks interesting. However, WebSocket connections you mentioned here are any conns, including CDP, noVNC, BiDi, etc.?

Doofus100500 commented 2 months ago

I think so. Of course, it’s more noticeable with queued sessions, but I believe all long connections are dropped because the mechanics of the nginx configuration update process work like this: when the configuration needs to be updated, a new nginx worker is created, which starts working with the new configuration, while the old one continues to wait for connections to finish before shutting down due to a timeout.

VietND96 commented 1 month ago

Do you have any suggestion on a test can be performed to guard it works?