はじめに
先日、Supabaseにpgmqを組み込んで使ってみたという記事を書きました。
この記事を執筆した当時は公式で利用できるQueuing Serviceが入っていなかったのですが、
昨日Supabase Launch Weekにて、Supabase Queuesがリリースされました。
この記事では、実際にこの新機能を活用して非同期処理を実現する手順を紹介します。
今回の構成
Supabase Launch Weekで同様に強化されていたSupabase Cronも併せて利用して、以下の構成でやってみようと思います。
今回作成したサンプルコード
今回試した内容はこちらからご参照ください
https://github.com/ShinnosukeKomiya/supabase-queue
Supabase上の操作
まずはIntegrations
からQueueとCronを有効化します
Queue側の設定
最初の設定だとSupabase Clientからpgmqを参照できないので、
Integrations > Queues > Settings
から以下の設定をONにします
Cronの設定
Edgeを呼び出すには pg_net も有効にする必要があったので有効化
有効化したので、対象のedge functionを選んで作成完了
動作確認
SupabaseのQueue管理画面からメッセージが挿入されたことを確認できる
最後に
SupabaseのLaunch Weekで様々な機能が公開されていたので、もっと色々と触ってみようと思います!