-
Notifications
You must be signed in to change notification settings - Fork 1.1k
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
[WIP] Streaming POC #6291
base: master
Are you sure you want to change the base?
[WIP] Streaming POC #6291
Commits on May 18, 2024
-
Configuration menu - View commit details
-
Copy full SHA for d2ca309 - Browse repository at this point
Copy the full SHA d2ca309View commit details
Commits on May 19, 2024
-
Configuration menu - View commit details
-
Copy full SHA for 104bd10 - Browse repository at this point
Copy the full SHA 104bd10View commit details
Commits on May 20, 2024
-
Configuration menu - View commit details
-
Copy full SHA for b832731 - Browse repository at this point
Copy the full SHA b832731View commit details -
Configuration menu - View commit details
-
Copy full SHA for eb9679c - Browse repository at this point
Copy the full SHA eb9679cView commit details
Commits on May 21, 2024
-
Configuration menu - View commit details
-
Copy full SHA for 5814899 - Browse repository at this point
Copy the full SHA 5814899View commit details
Commits on May 23, 2024
-
Configuration menu - View commit details
-
Copy full SHA for a5f6499 - Browse repository at this point
Copy the full SHA a5f6499View commit details -
fixd panic where if messages were still in redis stream when client d…
…isconnected would cause a send on closed channel
Configuration menu - View commit details
-
Copy full SHA for 5dda8b1 - Browse repository at this point
Copy the full SHA 5dda8b1View commit details -
Configuration menu - View commit details
-
Copy full SHA for d27a42f - Browse repository at this point
Copy the full SHA d27a42fView commit details -
Configuration menu - View commit details
-
Copy full SHA for 9154430 - Browse repository at this point
Copy the full SHA 9154430View commit details
Commits on Jun 27, 2024
-
Configuration menu - View commit details
-
Copy full SHA for 9504b25 - Browse repository at this point
Copy the full SHA 9504b25View commit details
Commits on Jun 29, 2024
-
Configuration menu - View commit details
-
Copy full SHA for 2f5ec76 - Browse repository at this point
Copy the full SHA 2f5ec76View commit details -
Configuration menu - View commit details
-
Copy full SHA for 5b55a4f - Browse repository at this point
Copy the full SHA 5b55a4fView commit details -
Configuration menu - View commit details
-
Copy full SHA for 3fa969f - Browse repository at this point
Copy the full SHA 3fa969fView commit details -
Configuration menu - View commit details
-
Copy full SHA for 0ac2d6b - Browse repository at this point
Copy the full SHA 0ac2d6bView commit details -
Add new Labs configuration option, and ensure that streaming runs onl…
…y when config variable set
Configuration menu - View commit details
-
Copy full SHA for 0516055 - Browse repository at this point
Copy the full SHA 0516055View commit details
Commits on Jun 30, 2024
-
Configuration menu - View commit details
-
Copy full SHA for 8e066fe - Browse repository at this point
Copy the full SHA 8e066feView commit details -
Configuration menu - View commit details
-
Copy full SHA for 2e6fcb9 - Browse repository at this point
Copy the full SHA 2e6fcb9View commit details -
Configuration menu - View commit details
-
Copy full SHA for 7d2e5be - Browse repository at this point
Copy the full SHA 7d2e5beView commit details -
Configuration menu - View commit details
-
Copy full SHA for e02e8e2 - Browse repository at this point
Copy the full SHA e02e8e2View commit details
Commits on Aug 12, 2024
-
refactor: Implement direct user-to-stream connections in streaming mi…
…ddleware This commit introduces a major change in the streaming architecture: - Replace shared Redis streams with direct user-to-stream connections - Each user now has their own dedicated stream, improving isolation and performance Additional improvements include: - Refactor StreamingMiddleware to use consumer group managers - Update StreamManager to use sync.Map for thread-safe operations - Remove Redis dependency and related functionality - Implement garbage collection for unused consumer groups - Update tests to reflect new structure and functionality - Add support for Kafka in streaming tests - Improve error handling and logging throughout - Update go.mod and go.sum with new dependencies These changes significantly enhance the scalability and efficiency of the streaming system by establishing direct connections between users and their respective streams, eliminating the need for a shared Redis-based message queue.
Configuration menu - View commit details
-
Copy full SHA for a7290a2 - Browse repository at this point
Copy the full SHA a7290a2View commit details -
Configuration menu - View commit details
-
Copy full SHA for cb7471a - Browse repository at this point
Copy the full SHA cb7471aView commit details -
Configuration menu - View commit details
-
Copy full SHA for 325d9b8 - Browse repository at this point
Copy the full SHA 325d9b8View commit details
Commits on Aug 21, 2024
-
Configuration menu - View commit details
-
Copy full SHA for 89cbe30 - Browse repository at this point
Copy the full SHA 89cbe30View commit details -
Configuration menu - View commit details
-
Copy full SHA for ac9763b - Browse repository at this point
Copy the full SHA ac9763bView commit details -
refactor: update Stream struct and methods in manager.go
This commit refactors the `internal/streaming/manager.go` file to update the `Stream` struct and its methods. The main changes include: 1. Remove unused imports: `crypto/sha256` and `sync`. 2. Update `addMetadata`, `GetHTTPPaths`, `removeUnsafe`, and `removeConsumerGroup` methods to work with the `Stream` struct instead of `StreamManager`. 3. Remove references to `StreamManager` and update method receivers to use `Stream`. 4. Update `GetHTTPPaths` to use the `streamConfig` field of the `Stream` struct instead of loading from a map. These changes align the `Stream` struct with the new design, allowing it to manage a single stream configuration and its associated operations.
Configuration menu - View commit details
-
Copy full SHA for a6bcc5e - Browse repository at this point
Copy the full SHA a6bcc5eView commit details -
Configuration menu - View commit details
-
Copy full SHA for 9226f2d - Browse repository at this point
Copy the full SHA 9226f2dView commit details -
Configuration menu - View commit details
-
Copy full SHA for 36b6cd8 - Browse repository at this point
Copy the full SHA 36b6cd8View commit details -
refactor: improve stream stopping mechanism
This commit enhances the Stream.Stop() method to make it more robust and prevent nil pointer dereferences. The changes include: 1. Adding a nil check for the stream before attempting to stop it. 2. Implementing a timeout mechanism using context to prevent indefinite hanging. 3. Using a goroutine and channel for asynchronous stream stopping. 4. Improving logging to provide more detailed information about the stopping process. These modifications aim to resolve issues related to stopping non-existent streams and make the overall process more reliable.
Configuration menu - View commit details
-
Copy full SHA for bc8ec7a - Browse repository at this point
Copy the full SHA bc8ec7aView commit details -
Configuration menu - View commit details
-
Copy full SHA for ed6d83c - Browse repository at this point
Copy the full SHA ed6d83cView commit details -
feat: enhance AsyncAPI test robustness and logging
This commit improves the `testAsyncAPIHttp` function in the `gateway/mw_streaming_test.go` file to increase test reliability and provide more detailed logging. The changes include: 1. Increase initial WebSocket connection delay from 1 to 2 seconds 2. Extend overall timeout from 10 to 30 seconds 3. Increase inactivity timeout from 2 to 5 seconds 4. Add final log message showing total received messages These modifications aim to give the test more time to receive messages and offer more comprehensive logging information, facilitating better diagnosis of potential issues in message reception.
Configuration menu - View commit details
-
Copy full SHA for 6ea2dac - Browse repository at this point
Copy the full SHA 6ea2dacView commit details -
feat: enhance AsyncAPI test with increased timeouts and logging
This commit improves the `testAsyncAPIHttp` function in the `mw_streaming_test.go` file to provide better debugging information and increase the chances of successful message reception. The changes include: 1. Increase initial WebSocket connection stabilization delay to 5 seconds 2. Add logging for WebSocket connection stabilization 3. Extend overall timeout to 60 seconds 4. Increase inactivity timeout to 10 seconds 5. Add a 5-second delay before closing WebSocket connections 6. Improve logging throughout the test execution These modifications aim to address potential timing issues and provide more detailed information about the test's progress, facilitating easier debugging of any remaining issues.
Configuration menu - View commit details
-
Copy full SHA for c3f3b98 - Browse repository at this point
Copy the full SHA c3f3b98View commit details -
Configuration menu - View commit details
-
Copy full SHA for e8803d3 - Browse repository at this point
Copy the full SHA e8803d3View commit details -
Configuration menu - View commit details
-
Copy full SHA for 2d71c47 - Browse repository at this point
Copy the full SHA 2d71c47View commit details -
Configuration menu - View commit details
-
Copy full SHA for 87507bc - Browse repository at this point
Copy the full SHA 87507bcView commit details -
Configuration menu - View commit details
-
Copy full SHA for 299f31f - Browse repository at this point
Copy the full SHA 299f31fView commit details -
Configuration menu - View commit details
-
Copy full SHA for e5ee2d4 - Browse repository at this point
Copy the full SHA e5ee2d4View commit details -
Configuration menu - View commit details
-
Copy full SHA for 05633af - Browse repository at this point
Copy the full SHA 05633afView commit details