inflearn logo
知識共有
inflearn logo

ポーリングからWebSocketまで、切断されても再同期するリアルタイム画面の設計

別のウィンドウで価格が変わったのにこちらの画面には反映されず、「接続済み」と表示されているのに値はそのまま――そんな瞬間がありますよね。仮想オークション画面を2つのウィンドウで開き、ポーリング・ロングポーリング・SSE・WebSocketの選び方から、切断後の再同期、複数のサーバーやプロキシを経由した変更まで、実際の実行記録を見ながら一緒に順を追って読み解いていきましょう。

6名 が受講中です。

難易度 初級

受講期間 無制限

Node.js
Node.js
PostgreSQL
PostgreSQL
Redis
Redis
nginx
nginx
websocket
websocket
Node.js
Node.js
PostgreSQL
PostgreSQL
Redis
Redis
nginx
nginx
websocket
websocket

受講後に得られること

  • 許容遅延と入力頻度を見て、リクエストコストも考慮しながら、ポーリング、ロングポーリング、SSE、WebSocketのどれを使うか選べます。

  • 「接続済み」と「最新状態の確認完了」を分けることで、再接続後にいつ画面を再び使えるかを判断できます。

  • eventIdとrevision、適用済みの位置から重複・逆転・欠落を見分け、記録の再生と新しいスナップショットのどちらで復旧するかを選べます。

  • 応答が失われた入札を同じ申請キーで再確認し、保存と発行の間をアウトボックスでつなぐ理由を説明できます。

  • サーバーを増やしたり、Nginxを経由したりする際に、一部のウィンドウだけ遅れる原因を、接続一覧、Redis Pub/Sub、レスポンスのバッファリングから絞り込めます。

こんな方に
おすすめです

学習対象は
誰でしょう?

  • APIで画面を変更してみたものの、他の人が変更した値をいつ、どのように表示すればよいのか、基準が必要な方

  • ポーリング間隔を短くするか、SSEやWebSocketに切り替えるか悩んでいる方

  • 再接続はできたものの、通知が抜けたり、タブに戻ると同じ通知が2回表示されたりする問題を経験したことがある方

  • サーバーを増やしたりプロキシを導入したりした後、一部の画面だけ更新が遅れる原因を突き止めたい方

前提知識、
必要でしょうか?

  • HTTPリクエスト・レスポンスやJSON、JavaScriptの関数・イベント・非同期呼び出しを読み取れて、APIの結果を使って画面上の値を変更した経験があれば十分です。

  • データベースに行を保存して検索することだけ分かっていれば大丈夫です。トランザクションと同時更新については、その講義で説明します。

  • SSE、WebSocket、メッセージブローカー、プロキシを運用した経験がなくても大丈夫です。

こんにちは
haeyeomisoです。

キャリア認証

606

受講生

23

受講レビュー

40

回答

4.7

講座評価

17

講座

はじめまして!

AIとコンピュータ工学の無限の可能性を探求し、その旅を皆さんと共有したいヘヨです。

学部時代は「コンピュータ工学中毒」と呼ばれるほど専攻に情熱を注ぎ、専攻GPA4.4以上で首席卒業しました。その後、S大学院でAIを専攻して修士号を取得し、博士課程を通じて専門性を深めました。

しかし、理論的な探究と同じくらい、現実世界の問題をAIで解決することに大きな魅力を感じ、博士課程を一時休学してスタートアップでAIベースのLLMおよびビデオ分析プロジェクトを経験し、貴重な実戦経験を積みました。

現在は国内トップ3の大手企業の一社で、LLMプロジェクトの開発およびPMとして勤務しており、AI技術が私たちの生活にもたらすポジティブな変化を創り出すことに貢献しています。私がこれまで経験してきた悩みや解決のプロセス、そして現場で得た生きたノウハウを、皆さんに惜しみなくお伝えします。AIという興味深い世界への旅路において、心強いガイドになれるよう努めます。

お問い合わせ・ご提案:haeyeo.open@gmail.com

もっと見る

カリキュラム

全体

36件 ∙ (5時間 35分)

講座掲載日: 
最終更新日: 

受講レビュー

まだ十分な評価が集まっていない講座です。
ぜひ最初のレビューをお寄せください。

haeyeomisoの他の講座

知識共有者の他の講座はこちら

似ている講座

同じ分野の他の講座を見てみましょう!

期間限定セール

¥3,393

59%

¥8,393