Open psyrenpark opened 10 months ago
Conclusion I hope this pull request will be merged to help others facing similar issues with Realtime functionality in Supabase-on-AWS. This solution has been tested and confirmed to work, providing a path forward for those experiencing similar challenges.
This looks good, currently having the problem of receiving 404 from the realtime broadcast endpoint, but the messages do get received on the other side. hosting locally
This looks good, currently having the problem of receiving 404 from the realtime broadcast endpoint, but the messages do get received on the other side. hosting locally
Could you provide more details about the symptoms you're encountering, especially regarding the 404 error from the realtime broadcast endpoint, while noting that messages are still being received on the other side? It would be helpful to understand the exact behavior, any error messages, and the steps leading up to the issue when hosting locally.
While implementing supabase-on-aws, I encountered an issue where the realtime functionality was not working as expected. After investigating, I found a similar issue reported on the Supabase Realtime GitHub repository https://github.com/supabase/realtime/issues/372, which led me to a solution.
Changes Made Updated Realtime Version in Supabase Stack I updated the Docker image version for the Supabase Realtime service in src/supabase-stack.ts to resolve the initial issue with the Realtime service not functioning properly.
This change allowed the following code to work, enabling successful subscription and message broadcast between clients:
Identified Issue with API-based Messaging However, I noticed that sending messages via the API instead of directly through WebSockets did not work. This issue was discussed in a Supabase community discussion https://github.com/orgs/supabase/discussions/18790#discussioncomment-7580134.
Configuration Adjustments in Kong Template To address this, I made adjustments in the containers/kong/kong-template.yml to properly route Realtime and Realtime-API requests, and updated environment variables in src/supabase-stack.ts for consistency.
Updated SUPABASE_REALTIME_URL to SUPABASE_REALTIME_SOCKET_URL and added SUPABASE_REALTIME_API_URL. Updated the Kong Docker image to a newer version with a revised kong-template.yml.
// containers/kong/kong-template.yml
// src/supabase-stack.ts
Final Outcome After making these changes, both WebSocket-based and API-based messaging functionalities were working as expected, resolving the initial issue with the Realtime service.
// Example of client code with successful Realtime functionality
Conclusion I hope this pull request will be merged to help others facing similar issues with Realtime functionality in Supabase-on-AWS. This solution has been tested and confirmed to work, providing a path forward for those experiencing similar challenges.