Cloudflare Workers導入でデプロイ時間を大幅改善。リリース頻度も二週に一度→毎日へ。
NOT A HOTEL株式会社 / codehex
フルスタックエンジニア / 従業員規模: 101名〜300名 / エンジニア組織: 11名〜50名
利用プラン | ツールの利用規模 | ツールの利用開始時期 |
---|---|---|
Workers Paid | 10名以下 | 2023年6月 |
利用プラン | Workers Paid |
---|---|
ツールの利用規模 | 10名以下 |
ツールの利用開始時期 | 2023年6月 |
アーキテクチャ
アーキテクチャの意図・工夫
Cloudflare Workersを使用してメインアプリケーションの開発・運用をしており、基本的にはCloudflare スタックで完結するようにしています。
またGCP上で、NOT A HOTELのデータベースから予約情報を取得するAPIを作成しているのと、LangChainを辞め、GPT-4 Turboを使用しています。
導入の背景・解決したかった問題
導入背景
※このレビューではNOT A HOTEL が提供するチャット機能(コンシェルジュプラットフォーム)での事例を紹介します。
前提として、コンシェルジュプラットフォームを実現するためにZendeskとSunshine Conversationsを利用しており、Webhookを経由してリクエストを送っています。
初期段階ではGoを使って開発をしていましたが、CI/CD経由でデプロイするとテストとビルドに15分くらい時間がかかっており、ちょっとした修正の確認がとても大変でした。
また開発環境もGCPに依存していて、コンテナのセットアップが必要だったり、berglasというGCPのシークレットマネージャーを利用したり、インフラのセットアップにTerraformとDockerを利用したりと複雑な状態でした。
Cloudflare Workers利用に至った背景・課題については、下記スライドにも記載していますのでご参照ください。
cf. https://speakerdeck.com/codehex/go-to-cloudflare-workers
比較検討したサービス
・Supabase
・Deno Deploy
選定理由
サービスを選定するに当たって重要視した主なポイントは
- 開発環境の構築のしやすさ
- デプロイにかかる時間
- フルスタックで開発できる環境か
- エコシステム
でした。 その中でも、Cloudflare WorkersはDB(D1)やQueue、AI Gatewayなど、他のプラットフォームにはないインフラ基盤を利用できた点、開発環境でDockerなどのコンテナを利用しなくても良い点に強いメリットを感じ、導入を決定しました。
導入の成果
Cloudflare Workersを導入することで、課題だった「デプロイに時間がかかる」「環境構築が煩雑」という点は解消されました。
ちょっとした検証をするために1minくらいでデプロイできるので、2週間に一回リリースしていた状態から、現在ではほぼ毎日リリース出来るまでに改善されています。
また、運用を手伝ってくれる方も環境のセットアップに迷いがなく、環境構築の楽さも実感しました。
導入時の苦労・悩み
外部との通信が発生しない限り、リクエストごとに Date.now() が固定されたり、DB(現在は GA)やQueueがベータだったこともあり不安定な部分があり苦労しました。
導入に向けた社内への説明
上長・チームへの説明
基本的に月額$5しかかからないのでとても安いですと上長に伝えました。(参考)
導入することで課題が解決されること、開発速度が上がることを伝えて導入を承認してもらいました。
活用方法
コンシェルジュプラットフォームのメインアプリケーションの開発・運用に使っています。
よく使う機能
- D1
- Queue
- AI Gateway
ツールの良い点
- 開発体験が良い
- 安い
- 早い
ツールの課題点
アプリケーションログがReal Time Loggingのみで保存ができないので、ロガーを自前で作る必要がありました。
しかし先日、Cloudflareに買収されたBaselime.ioを利用すれば、ログの保存や監視体制の構築が簡単に可能になりました。(2024/04/06発表)
cf. https://blog.cloudflare.com/cloudflare-acquires-baselime-expands-observability-capabilities
その他
NOT A HOTELでは、コンシェルジュプラットフォーム以外でもCloudflare Workersを活用しています。
ユースケースや課題を一覧でスライドで公開していますので参照いただければと思います。
cf. https://speakerdeck.com/codehex/sugushi-eru-cloudflare-workers?slide=28
ツールを検討されている方へ
導入しない理由がないくらいオススメです!
まずは気軽に導入してみてください!
NOT A HOTEL株式会社 / codehex
フルスタックエンジニア / 従業員規模: 101名〜300名 / エンジニア組織: 11名〜50名
新卒で株式会社メルカリへ入社し、株式会社ベースマキナを経て 22年12月 NOT A HOTEL 参画。AIコンシェルジュをメインに開発中。
よく見られているレビュー
NOT A HOTEL株式会社 / codehex
フルスタックエンジニア / 従業員規模: 101名〜300名 / エンジニア組織: 11名〜50名
新卒で株式会社メルカリへ入社し、株式会社...
レビューしているツール
目次
- アーキテクチャ
- 導入の背景・解決したかった問題
- 活用方法