From 0affb7c31ec3a1bc9d78f2e370a1db7249cb0480 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Filipe=20Caba=C3=A7o?= Date: Thu, 19 Dec 2024 13:50:44 +0000 Subject: [PATCH] realtime: Broadcast Changes documentation (#31222) --- .../NavigationMenu.constants.ts | 4 + .../content/guides/realtime/broadcast.mdx | 116 ++++++++++++++++- .../migrate-from-postgres-changes.mdx | 118 ++++++++++++++++++ ...-changes-migration-schema-example-dark.png | Bin 0 -> 37229 bytes ...changes-migration-schema-example-light.png | Bin 0 -> 40819 bytes 5 files changed, 236 insertions(+), 2 deletions(-) create mode 100644 apps/docs/content/guides/realtime/migrate-from-postgres-changes.mdx create mode 100644 apps/docs/public/img/guides/realtime/realtime-broadcast-changes-migration-schema-example-dark.png create mode 100644 apps/docs/public/img/guides/realtime/realtime-broadcast-changes-migration-schema-example-light.png diff --git a/apps/docs/components/Navigation/NavigationMenu/NavigationMenu.constants.ts b/apps/docs/components/Navigation/NavigationMenu/NavigationMenu.constants.ts index 8a0a19a4476..d882244fc55 100644 --- a/apps/docs/components/Navigation/NavigationMenu/NavigationMenu.constants.ts +++ b/apps/docs/components/Navigation/NavigationMenu/NavigationMenu.constants.ts @@ -1559,6 +1559,10 @@ export const realtime: NavMenuConstant = { name: 'Listening to Postgres Changes with Flutter', url: '/guides/realtime/realtime-listening-flutter', }, + { + name: 'Migrate to Broadcast Changes', + url: '/guides/realtime/migrate-from-postgres-changes', + }, ], }, { diff --git a/apps/docs/content/guides/realtime/broadcast.mdx b/apps/docs/content/guides/realtime/broadcast.mdx index e741947d227..6fa1482f7df 100644 --- a/apps/docs/content/guides/realtime/broadcast.mdx +++ b/apps/docs/content/guides/realtime/broadcast.mdx @@ -4,7 +4,7 @@ subtitle: 'Send and receive messages using Realtime Broadcast' description: 'Send and receive messages using Realtime Broadcast' --- -Let's explore how to implement Realtime Broadcast to send messages between clients. +Let's explore how to implement Realtime Broadcast to send messages between clients using either WebSockets, REST API or triggers from your database. ## Usage @@ -88,7 +88,7 @@ Go to your Supabase project's [API Settings](https://supabase.com/dashboard/proj ### Listening to broadcast messages -You can provide a callback for the `broadcast` channel to receive message. In this example we will receive any `broadcast` messages in `room-1`: +You can provide a callback for the `broadcast` channel to receive message. This example will receive any `broadcast` messages in `room-1`: + +## Trigger broadcast messages from your database + + + +This feature is currently in Private Alpha. The API and implementation may change. To request access, submit a Support Ticket. + + + +### How it works + +Broadcast Changes allows you to trigger messages from your database. To achieve it Realtime is directly reading your WAL (Write Append Log) file using a publication against the `realtime.messages` table so whenever a new insert happens a message is sent to connected users. + +It uses partitioned tables per day which allows the deletion your previous images in a performant way by dropping the physical tables of this partitioned table. Tables older than 3 days old are deleted. + +Broadcasting from the database works like a client-side broadcast, using WebSockets to send JSON packages. [Realtime Authorization]/docs/guides/realtime/authorization) is required and enabled by default to protect your data. + +The database broadcast feature provides two functions to help you send messages: + +- `realtime.send` will insert a message into realtime.messages without a specific format. +- `realtime.broadcast_changes` will insert a message with the required fields to emit database changes to clients. This helps you set up triggers on your tables to emit changes. + +### Broadcasting a message from your database + +The `realtime.send` function provides the most flexibility by allowing you to broadcast messages from your database without a specific format. This allows you to use database broadcast for messages that aren't necessarily tied to the shape of a Postgres row change. + +```sql +SELECT realtime.send ( + to_jsonb ('{}'::text), -- JSONB Payload + 'event', -- Event name + 'topic', -- Topic + FALSE -- Public / Private flag +); +``` + +### Broadcast record changes + +#### Setup realtime authorization + +Realtime Authorization is required and enabled by default. To allow your users to listen to messages from topics, create a RLS (Row Level Security) policy: + +```sql +CREATE POLICY "authenticated can receive broadcasts" +ON "realtime"."messages" +FOR SELECT +TO authenticated +USING ( true ); + +``` + +See the [Realtime Authorization](/docs/guides/realtime/authorization) docs to learn how to set up more specific policies. + +#### Set up trigger function + +First, set up a trigger function that uses `realtime.broadcast_changes` to insert an event whenever it is triggered. The event is set up to include data on the schema, table, operation, and field changes that triggered it. + +For this example use case, we want to have a topic with the name `topic:` to which we're going to broadcast events. + +```sql +CREATE OR REPLACE FUNCTION public.your_table_changes() RETURNS trigger AS $$ +BEGIN + PERFORM realtime.broadcast_changes( + 'topic:' || NEW.id::text, -- topic + TG_OP, -- event + TG_OP, -- operation + TG_TABLE_NAME, -- table + TG_TABLE_SCHEMA, -- schema + NEW, -- new record + OLD -- old record + ); + RETURN NULL; +END; +$$ LANGUAGE plpgsql; +``` + +Of note are the Postgres native trigger special variables used: + +- `TG_OP` - the operation that triggered the function +- `TG_TABLE_NAME` - the table that caused the trigger +- `TG_TABLE_SCHEMA` - the schema of the table that caused the trigger invocation +- `NEW` - the record after the change +- `OLD` - the record before the change + +You can read more about them in this [guide](https://www.postgresql.org/docs/current/plpgsql-trigger.html#PLPGSQL-DML-TRIGGER). + +#### Set up trigger + +Next, set up a trigger so the function runs whenever your target table has a change. + +```sql +CREATE TRIGGER broadcast_changes_for_your_table_trigger +AFTER INSERT OR UPDATE OR DELETE ON public.your_table +FOR EACH ROW +EXECUTE FUNCTION your_table_changes (); +``` + +As you can see, it will be broadcasting all operations so our users will receive events when records are inserted, updated or deleted from `public.your_table` . + +#### Listen on client side + +Finally, client side will requires to be set up to listen to the topic `topic:` to receive the events. + +```jsx +const gameId = 'id' +await supabase.realtime.setAuth() // Needed for Realtime Authorization +const changes = supabase + .channel(`topic:${gameId}`) + .on('broadcast', { event: 'INSERT' }, (payload) => console.log(payload)) + .on('broadcast', { event: 'UPDATE' }, (payload) => console.log(payload)) + .on('broadcast', { event: 'DELETE' }, (payload) => console.log(payload)) + .subscribe() +``` diff --git a/apps/docs/content/guides/realtime/migrate-from-postgres-changes.mdx b/apps/docs/content/guides/realtime/migrate-from-postgres-changes.mdx new file mode 100644 index 00000000000..dddc8e1dc15 --- /dev/null +++ b/apps/docs/content/guides/realtime/migrate-from-postgres-changes.mdx @@ -0,0 +1,118 @@ +--- +title: 'Migrate to Broadcast Changes' +subtitle: 'How to migrate from Postgres Changes to Broadcast Changes' +description: 'How to migrate from Postgres Changes to Broadcast Changes' +sidebar_label: 'Migrate to Broadcast Changes' +--- + +Postgres Changes has some [limitations](/docs/guides/realtime/postgres-changes#limitations) as your application scales. To continue broadcasting database changes to users as you scale, you can use Broadcast Changes. + +## Example application using Postgres Changes + +Here we have a simple chess application that has a game id and we want to track whenever we have new moves happening for a given game id. + +We store this information in a `public.moves` table and every time a new move is added to a given `game_id` we want to receive the changes in our connected Realtime client + +Schema used for our example + +In our client we will have our implementation to receive insert events with the usual code: + +```javascript +const gameId = '4a8bbe89-f601-4414-bd47-8d0f7ab2a31a' +const changes = supabase + .channel('chess-moves') + .on( + 'postgres_changes', + { + event: 'INSERT', + schema: 'public', + table: 'moves', + filter: `game_id=eq.${gameId}`, + }, + (payload) => console.log(payload) + ) + .subscribe() + ... +``` + +## Migrate to broadcast changes + +To use Broadcast Changes, first familiarize yourself with the [Broadcast Changes implementation](/docs/guides/realtime/broadcast#trigger-broadcast-messages-from-your-database). + +### Set up authorization + +Broadcast Changes is private by default, using [Realtime Authorization](/docs/guides/realtime/authorization) to control access. First, set up RLS policies to control user access to relevant messages: + +```sql +CREATE POLICY "authenticated can listen to game moves" +ON "realtime"."messages" +FOR SELECT +TO authenticated +USING ( + EXISTS ( + SELECT 1 + FROM game_users + WHERE (SELECT auth.uid()) = user_id + AND (select realtime.topic()) = 'games:' || game_id::text + AND realtime.messages.extension = 'broadcast' + ) +); +``` + +### Set up trigger function + +We need to define our trigger function to adapt to our use case and use the provided function `realtime.broadcast_changes` + +```sql +CREATE OR REPLACE FUNCTION public.broadcast_moves() RETURNS trigger AS $$ +BEGIN + PERFORM realtime.broadcast_changes( + 'games:' || NEW.game_id::text, -- topic + TG_OP, -- event + TG_OP, -- operation + TG_TABLE_NAME, -- table + TG_TABLE_SCHEMA, -- schema + NEW, -- new record + OLD -- old record + ); + RETURN NULL; +END; +$$ LANGUAGE plpgsql; +``` + +### Setup trigger with created function + +Now we need to setup our trigger to capture the events we want + +```sql +CREATE TRIGGER chess_move_changes +AFTER INSERT ON public.moves +FOR EACH ROW +EXECUTE FUNCTION public.broadcast_moves(); +``` + +### **Listen to changes in client** + +Finally you can setup your client to listen for your events + +```js +const gameId = '4a8bbe89-f601-4414-bd47-8d0f7ab2a31a' +await supabase.realtime.setAuth() // Needed for Realtime Authorization +const changes = supabase + .channel(`games:${gameId}`) + .on( + 'broadcast', + { + event: 'INSERT', + }, + (payload) => console.log(payload) + ) + .subscribe() +``` diff --git a/apps/docs/public/img/guides/realtime/realtime-broadcast-changes-migration-schema-example-dark.png b/apps/docs/public/img/guides/realtime/realtime-broadcast-changes-migration-schema-example-dark.png new file mode 100644 index 0000000000000000000000000000000000000000..acbdeb6aa99c70fb932ef0c91380b9dd8ce44c81 GIT binary patch literal 37229 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 z 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 literal 0 HcmV?d00001