SHOEISHA iD

※旧SEメンバーシップ会員の方は、同じ登録情報(メールアドレス&パスワード)でログインいただけます

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

CodeZineニュース

Deno向けメッセージ・キュー「Deno Queues」が登場

  • このエントリーをはてなブックマークに追加

  • このエントリーをはてなブックマークに追加

 米Deno Landは、JavaScript/TypeScriptランタイム「Deno」と組み合わせて使える、メッセージ・キュー「Deno Queues」のベータ版を9月27日(現地時間)に公開した。この機能は2023年5月に公開したキー・バリュー型データストア「Deno KV」を利用して構築したもので、開発者のローカル環境で動作させるときはSQLiteを使用し、Deno Landが提供する分散ホスティング・サービス「Deno Deploy」で動作させるときはFoundationDBを使用する。

 Deno Queuesは、Webアプリケーションのうち、即座に実行する必要がない処理を後回しにして非同期で実行可能にするための仕組み。キューにメッセージを入れておいて、後でメッセージを読み出して実行するようなプログラムを簡単に記述できる。Deno LandはDeno Queuesの有効な用途として、受信したWebhooksの処理や、メールの自動送信、SlackやDiscordにメッセージを書き込むボットなどを挙げている。また、Deno Queuesを利用してDeno KVに一貫性のある、不可分なトランザクション処理をさせることも可能になっている。

 Deno Queuesでは、キューにメッセージを入れる「enqueue()」と、キューからメッセージを取り出す「listenQueue()」の2種類のAPIを用意する。利用するにはAPIを呼び出すだけで良く、事前の設定などの準備は不要だ。キューに入れたメッセージは少なくとも1回は読み出せるようになっており、読み出しに失敗してlistenQueue() APIが例外を発生させると、ランタイムが再度読み出しを試みる。読み出し失敗の回数が事前に設定した値に達すると読み出し失敗となる。

 ホスティング・サービスであるDeno DeployでDeno Queuesを利用するときは、キューにメッセージを入れるときと、キューからメッセージを取り出すときに料金が発生する。ただしこれは、Deno Queuesで発生する料金ではなく、Deno QueuesがDeno KVにデータを読み書きする際の料金という扱いになる。

関連リンク

この記事は参考になりましたか?

  • このエントリーをはてなブックマークに追加
この記事の著者

CodeZine編集部(コードジンヘンシュウブ)

CodeZineは、株式会社翔泳社が運営するソフトウェア開発者向けのWebメディアです。「デベロッパーの成長と課題解決に貢献するメディア」をコンセプトに、現場で役立つ最新情報を日々お届けします。

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

この記事は参考になりましたか?

この記事をシェア

  • このエントリーをはてなブックマークに追加
CodeZine(コードジン)
https://codezine.jp/article/detail/18479 2023/10/10 11:00

おすすめ

アクセスランキング

アクセスランキング

イベント

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー

アクセスランキング

アクセスランキング