Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
エッジで輝くフロントエンド
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
chimame
June 19, 2023
Programming
6.9k
11
Share
エッジで輝くフロントエンド
Cloudflare Meetup #1
chimame
June 19, 2023
More Decks by chimame
See All by chimame
知って得する@cloudflare_vite-pluginのあれこれ
chimame
2
540
Boost Your Web Performance with Hyperdrive
chimame
1
500
RemixでVersion skewに立ち向かう
chimame
2
1.3k
私がエッジを使う理由
chimame
10
4.1k
GraphQL Server on Edge after that
chimame
1
1.7k
Accelerating App Dev with Cloudflare Workers
chimame
1
490
GraphQL Server on Edge
chimame
12
6.4k
Cloudflare Workersと状態管理
chimame
4
2k
CSRなサイトを (疑似的な)ISRに変更した話
chimame
0
710
Other Decks in Programming
See All in Programming
ユニットテストの先へ:テスト技法で要求・仕様を整理するJava開発実践 / Beyond_Unit_Testing_Practical_Java_Development_Techniques_for_Organizing_Requirements_and_Specifications
shimashima35
0
250
新規プロダクトを高速で生み出すハーネスエンジニアリング
seanchas116
6
510
~ 秘伝のタレ化した『神スプシ』と戦う ~ 関数型パラダイムで壊れない仕組みへ
h0r15h0
1
130
RailsTokyo 2026#4: AI様があれば、 Hotwireの弱点は消えるか?
naofumi
5
990
プラグインで拡張される Context をtype-safe にする難しさと設計判断
kazupon
2
310
Spec-Driven Development with AI-Agents: From High-Level Requirements to Working Software
antonarhipov
2
370
ReactとSvelteのその先、Ripple-TS / Beyond React and Svelte: Ripple-TS
ssssota
3
950
タクシーアプリ『GO』の バックエンド開発のおける AI利活用と若者のすべて
pyama86
3
1.7k
Technical Debt: Understanding it Rightly, Engaging it Rightly #LaravelLiveJP
shogogg
0
150
Migrations : C'est une question d'hygiène !
vinceamstoutz
0
2.2k
AI時代だからこそ「Bloc」を採用する価値があるのかもしれない
takuroabe
0
240
Zod v4 Codec でスキーマに型変換を埋め込む REST API 設計 #TSKaigi2026
ryutaro_yako
0
150
Featured
See All Featured
Rails Girls Zürich Keynote
gr2m
96
14k
Building Adaptive Systems
keathley
44
3k
How to Align SEO within the Product Triangle To Get Buy-In & Support - #RIMC
aleyda
2
1.5k
Highjacked: Video Game Concept Design
rkendrick25
PRO
1
360
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
35
3.5k
GraphQLの誤解/rethinking-graphql
sonatard
75
12k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
21
1.5k
Primal Persuasion: How to Engage the Brain for Learning That Lasts
tmiket
0
350
Jess Joyce - The Pitfalls of Following Frameworks
techseoconnect
PRO
1
150
Game over? The fight for quality and originality in the time of robots
wayneb77
1
180
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4.3k
JAMstack: Web Apps at Ludicrous Speed - All Things Open 2022
reverentgeek
1
450
Transcript
エッジで輝くフロントエンド Cloudflare Meetup #1 2023.06.19
目次 • フロントエンド技術の歴史 • フロントエンド領域の現状 • Cloudflare Pages • ユースケース
• まとめ
フロントエンド技術の歴史 • 2010年頃はRuby on Railsのようなフレーム ワークが確固たる地位を確立 ◦ サーバサイドでHTMLを生成し、クライアントに返す ◦ JavaScriptはAjaxやちょっとした画面動作に使用する
• JavaScriptはjQueryがまだスタンダードに使用 される時代
フロントエンド技術の歴史 • DOMの書き換えは大体以下の2通り ◦ Ajaxで取得したレスポンスの内容にまるっと書き換え る(サーバサイドレンダリング ) ◦ jQueryでDOMを書き換える •
2010年頃にBackbone.jsやReactが登場 ◦ アプローチは異なるが、 DOMの管理を何をもって行う かということに注目が集まる
フロントエンド技術の歴史 • Reactなどを使用したDOM変更によるWeb ページのUXが大幅に向上 ◦ 周辺のエコシステムも急速に成長 (Browserify, Webpack, Babel etc)
• バックエンドシステムと分離が始まる ◦ フロントエンド領域におけるセットアップの複雑さが増 加 ◦ レンダリングはフロントエンドが担う ようになる
フロントエンド技術の歴史 • レンダリングにおける問題 ◦ SEO ◦ クライアントサイドのマシンスペック etc • バックエンドシステムと整合性
◦ システム間連携の複雑性増加 ◦ コミュニケーションパスの増加
フロントエンド領域の現状 • レンダリングの様々な手法が確立 ◦ Client Side Rendering(CSR) ◦ Server Side
Rendering(SSR) ◦ Static Site Generation(SSG) ◦ Incremental Static Regeneration(ISR) ◦ Server Side Component ← NEW
フロントエンド領域の現状 • サーバサイドレンダリングって… ◦ 10数年前の話に戻ってきてはいるが、完全に 戻ってるわけではない ◦ クライアント、サーバサイド両方をうまく使う必 要がある
フロントエンド領域の現状 • サーバを使用するということは役割と責任も増 加 ◦ ブラウザからのアクセス制御 ◦ 静的ファイル配信の最適化 ◦ SSRのための計算リソースの確保
◦ フェイルオーバーやログなどの非機能要件 etc
フロントエンド領域の現状 • 現状における様々な打ち手 ◦ Vercel, Cloudflare Pages, Netfilyなどのホスティン グサービスで運用 ◦
Cloud Runなどのサーバレスサービスを使ったセルフ ホスティングで運用
Cloudflare Pages • 特徴 ◦ 2021年頃に登場したホスティングサービス ◦ 2021年後半にCloudflare Workesと連携が対応され てサーバリソースを使用することが可能になる
▪ サーバレスアーキテクチャ ◦ さらには無料の範囲が非常に大きい
Cloudflare Pages • Cloudflare Pages + Cloudflare Workersで 使用できるフレームワーク ◦
Remix ◦ Astro ◦ SvelteKit ◦ rakkas
Cloudflare Pages • Pages単体も魅力的だが他製品を活用するこ とでシステムを構築できる ◦ Cloudflareのキャッシュを活用 ◦ KV, R2やD1を活用した状態管理
◦ BotアクセスやDDOS対策を基本的に備える
ユースケース Webサイト 管理画面 データベース(PosggreSQL) バッチサーバ 画像(GCS) データの流れ SSRでクライアントに返す (SEO対 策が必要)
Zero Trustで認証を実施 CNAMEを設定して、CDNから配信 HTML 初期段階
ユースケース Webサイト 管理画面 連携API データベース(D1) Node.js処理サーバ 画像(R2) データの流れ 画像処理にNode.jsが必要な ため、D1からデータを取得す
るためのWorkers経由でデー タを取得 SSRでクライアントに返す (SEO対 策が必要) Zero Trustで認証を実施 カスタムドメインを設定してダイレクトにアクセス HTML 最終形
ユースケース • 移行のメリット ◦ 計算リソースがエッジで動作する( client or server ?) ▪
第3の計算リソースが使える ◦ コンテナをビルドする必要がない のでデプロイ時間が大 幅に短縮(10分前後→1分未満) ◦ サーバ費がダウン • 移行のデメリット ◦ ログ基盤は自分で作成する 必要がある ◦ Node.jsが必要な部分は別処理を作成 する必要がある
まとめ • フロントエンド担う領域は拡大している • フロントエンド領域の開発に注力するためには Cloudflare Pagesも十分な選択肢の1つ ◦ オリジンサーバとは違い、クライアントに近い場所で 動くのでレイテンシに利点生まれる
◦ サーバレス同様に処理能力をスケールアウトさせるこ とで、分散化し向上できることができる • サービスの機能をうまく利用し、顧客に価値を 提供するための開発に集中することが大事
Thanks! • name: chimame / rito • job: Webエンジニア •
field: Cloudflare, GCP, AWS, Ruby, Node.js, TypeScript, React, Next.js, Remix, Docker etc • company: Goens株式会社( https://about.goen-s.com ) • twitter: @chimame_rt • GitHub: chimame