Closed jibon57 closed 5 months ago
The recent updates focus on enhancing flexibility, maintainability, and concurrency in the system's handling of websocket messages and webhook notifications. By introducing configurable queue sizes and websocket channels, and incorporating more robust error handling and logging mechanisms, these changes aim to streamline the processing of messages and notifications. Additionally, the use of mutexes in the WebsocketServiceModel
ensures safe concurrent access, further bolstering the system's reliability and efficiency.
Files | Change Summary |
---|---|
pkg/config/constants.go |
Added default queue sizes and websocket channel constants for user, whiteboard, and system. |
pkg/models/webhook.go pkg/models/webhook_notifier.go |
Updated message publishing and notifier usage with context and configuration-based flexibility. |
pkg/models/websocket_channels.go pkg/models/websocket_service.go |
Enhanced websocket message handling with configurable channels, queue workers, error logging, and concurrency control via sync.RWMutex . |
🐇✨ In the burrow of code, where the data streams flow, A change was made, with efficiency aglow. Queues aligned, and channels named, With mutex locks, concurrency tamed. Through the web of sockets, messages dance, In a safer, swifter, harmonious prance. 🌟🐾
Thank you for using CodeRabbit. We offer it for free to the OSS community and would appreciate your support in helping us grow. If you find it useful, would you consider giving us a shout-out on your favorite social media?
This way we can keep redis channel clean but not sure. Related: https://github.com/mynaparrot/plugNmeet-server/issues/455