1968年、ロバート・ミラーは古典的な論文『人とコンピュータの会話における応答時間』を発表した :
100ミリ秒の応答時間は瞬時と認識される。
1秒以下の応答時間は、ユーザーが情報と自由にやりとりしていると感じるのに十分な速さである。
応答時間が10秒を超えると、ユーザーの注意は完全に失われてしまう。
このことから、ミラーは一貫して2秒のレスポンスが理想的であると結論づけた。それから数年後、この2秒という同じ値が、ウェブベースのアプリケーションのパフォーマンス目標として使われるようになった。しかし、今日のリアルタイム・アプリケーションでは、瞬時に近い応答性が求められている。その答えは文脈によって異なります。
人間の入力処理速度は?
人間として、私たちは先天的に、持続的な時間の経過を観察し、経験するという不思議な能力を持っている。しかし、私たち人間の脳の構造は、ある短い時間枠の中で知覚に反応できないように、私たちの感覚的知覚を制限している。 この時間枠は、一般的に反応時間として知られている。
人間の反応時間
人間の平均反応時間は1/4秒(250ミリ秒)である。信じられない?このちょっとしたテストで、自分の反応時間をテストすることができる。
ご存知のように、人間には他の人より優れた反応時間を持つ人がいる。戦闘機のパイロット、F1ドライバー、チャンピオン・ビデオゲーム・プレイヤーは、曲線の左側の100~120ミリ秒のバケットに入る。
この時間のうち、精神的な処理と物理的な反応に費やす時間と、データの受信に費やす時間はどれくらいだろうか?
リアルタイム遅延:目から脳へ
反応時間は複雑なテーマであり、以下のような精神的処理のいくつかの異なる要素を含んでいる:
知覚
意識への入力の受信
入力に適用される文脈
処理出力に基づく意思決定
人間の脳にとってリアルタイムがどれほど速いかを理解するために、ここでは「感覚的知覚」の段階に焦点を当てる。私たちの感覚は、視覚であれ聴覚であれ、外界から入ってくるデータを受け取るところだ。
例えば、虎の映像が網膜に到達してから視神経を伝って視覚野に到達するまでの時間は、信じられないほど速い。新しい研究によれば、人間はわずか13ミリ秒(1秒間に約75フレームの割合)で見た視覚的手がかりを解釈できる。
脳が入力データストリームを受信すると、非同期プロセスが入力を認識し、それを意識に受け入れる。入ってくるデータストリームを認識した脳の別の部分は、そのストリームに文脈を適用し、どのように反応するかを決定する。これらはすべて非常に速く行われる。(猫はその約2倍の速さである)。
不要な遅延は人間のパフォーマンスにどう影響するか?
人間の反応時間には、精神的な処理以上のものがあるが、ここで重要な概念は以下の通りである:
1.人間が入力される視覚刺激を処理できる最速の速度は約13ミリ秒である。これより速いデータストリームを受信すると、知覚の限界が浮き彫りになるだけである。
2.レイテンシが13ミリ秒を超えると、与えられたタスクに対する人間のパフォーマンスにますます悪影響を及ぼす。 最初は知覚できないが、75ミリ秒から100ミリ秒に近づくまで、レイテンシの増加は人間の処理能力を低下させ続ける。 ここで、入力が遅すぎることを強く意識するようになり、単に入力に反応するのではなく、入力を予測して状況に適応することに頼らなければならなくなる。
たとえば決闘では、100ミリ秒の遅れが問題になる。それがランダムで予測できない場合はなおさらだ。
リアルタイム・アプリケーション開発者への影響
リアルタイム・アプリケーションは、データストリームの遅延に対する許容範囲が様々である。一般的に、非常に要求の厳しいアプリケーションには以下のようなものがある:
このようなタイプのアプリケーションでは、リアルタイムな人間の知覚とインタラクションが要求されます。 このようなタイプのアプリケーションをサポートするためにリアルタイムデータストリームネットワークを構築し、維持するために必要なリソースを考えると、多くの開発者はアプリケーション自体に集中するために、メッセージングレイヤーをアウトソースするという戦略的な決定を下します。
オンラインゲーム
ターンベースゲーム、ロールプレイングゲーム、ストラテジーゲームは通常、リアルタイムの動きやアクションに依存しないため、最大500ms以上のレイテンシを許容できますが、多人数同時参加型オンラインゲーム(MMOG)ではリアルタイムが必須条件です。
オンラインゲームが成熟するにつれ、プレイヤーはより没入感のある臨場感あふれるゲームを求めるようになります。この要求を満たすため、開発者は現在、非常に厳しいデータ・ストリーム遅延要件を持つ、非常にリアルな環境のゲームを制作する必要があります:
300ms < ゲームはプレイできない
150ms < ゲームプレイの劣化
100ms < プレイヤーのパフォーマンスに影響
50ms > 目標パフォーマンス
13ms > 検出可能な下限
100msの遅延でも、Twitchゲームにおけるプレイヤーのパフォーマンスは測定可能なほど低下します。ターゲットを効果的に追跡することが著しく難しくなり、プレイヤーは動きを予測せざるを得なくなります。
遅延が増加し、プレーヤーがギクシャクした再生、ゴースト、同期しない動作を経験すると、全体的なゲームの楽しさは減少し続け、最終的に関係するすべてのプレーヤーのゲームを台無しにします。
これらのパラメータを考慮すると、MMOGアーキテクチャを成功させるには、ゲーマーの体験品質を確保するための基本要件として、ネットワークパフォーマンスを考慮する必要があります。このアーキテクチャは、何千もの同時データストリームを50ミリ秒またはそれ以上の低レイテンシで配信できる必要があり、さらに困難なことに、さまざまな地域、さまざまなアクセスネットワーク、さまざまなデバイスを使用するプレイヤーに対して大規模な配信を行う必要があります。
「PubNubのおかげで、アプリケーションをサポートするバックボーン・ネットワークやそれに伴う心配事よりも、アプリケーションに集中することができます。バックボーンネットワークが稼動し、メッセージを送信していることを確認するために監視システム全体をセットアップする必要がないことを知っていることは素晴らしいことです。
入札とオークション
どんなオークションでも、一瞬一瞬が重要です。成功するかどうかは、世界のどこにいても、すべての入札者にシームレスで信頼性の高いリアルタイムのエンゲージメントを感じてもらえるかどうかにかかっています。リアルタイムの通知、アラート、更新などのリアルタイム機能を提供するための適切なエンドツーエンドのプラットフォームを持つことは、ユーザーエクスペリエンスの重要な部分です。
信頼性と拡張性に優れたプラットフォーム・ソリューションは、オンライン・オークション成功の鍵です:
オークション開催中、入札やその他の進展があった場合、ユーザーはそれを確実に把握し、次の入札(または入札しない)の決断を下すことができます。
入札希望者の参加を最大化し、最高入札額の上昇に貢献する。
オークションとそれを実施する組織の信頼性を強化します。
実際の対面式オークションと同じような活気と競争感覚を提供することで、入札者を継続的に参加させることができます。
リアルタイムのコラボレーション
リアルタイムデータのもう一つの興味深い活用例は、eラーニングとコラボレーションの分野です。オンライン教室では、デバイス間の信頼性の高いリアルタイム通信が不可欠です。注意力の低い生徒が多い教室では、デバイス間でできるだけ早く信号を送れるようにする必要があります。そうでなければ、クラス全体の注意を失うことになります。しかし、リアルタイムのデータ・ストリーム・ネットワーク設計は、ほとんどの場合、コアコンピテンシー外である。
そのために人を雇うべきかどうか、チームの人数を増やす必要があるのかどうか、結局のところ、私たちはただ座って、"これは私たちのビジネスの核心ではない "と考えました。自分たちのビジネスの課題に集中すべきなのに、リアルタイムの実現にお金と時間を費やすべきではありません。リアルタイムは私たちのビジネスにとって必要条件ではありますが、解決すべきビジネス課題ではない のです」と、ClassDojoの共同設立者兼CTOのリアム・ドンは語っている。
ライブ・エンターテイメント
成功するバーチャル・イベントの特徴は、観客がパフォーマーだけでなく、観客同士も関わっていることです。しかし、バーチャルイベントが数年前から私たちの現実の一部になっているからといって、すべてのイベント主催者(またはプラットフォーム)が魅力的でインタラクティブなイベントを可能にするために必要な機能を提供しているとは限りません。
デベロッパーがバーチャルイベント用のアプリを構築する際に留意すべき重要な機能は以下の通りです:
プレゼンス、リアクション、タイピングインジケータなどの機能を備えたアプリ内チャット
視聴者がショーや他の参加者からのメッセージを見逃さないための通知とアラート
無制限の会話ストリームと同時接続ユーザー数により、イベントが成功しすぎてクラッシュする心配がありません。
柔軟性の高いリアルタイムの冒涜的な言葉のフィルタリングと翻訳により、参加者がどこにいても礼儀正しいコミュニケーションが可能。
リアルタイムで同期されるインタラクティブな投票、クイズ、リーダーボードにより、聴衆を興奮させ、真に参加させることができます。
PubNubとリアルタイム
PubNubのリアルタイムデータAPIは柔軟性に富んでいるため、これらの機能を迅速に展開することができます。グローバルに利用可能なメッセージングインフラストラクチャにより、アプリやニーズの進化に合わせて拡張することができます。導入は簡単です。また、ご不明な点があれば、24時間365日世界中でサポートを提供しています。PubNubがあれば、今日からリアルタイムの構築が可能です。
PubNubはどのようにお役に立ちますか?
この記事はPubNub.comに掲載されたものです。
PubNubのプラットフォームは、開発者がWebアプリ、モバイルアプリ、IoTデバイス向けにリアルタイムのインタラクティブ機能を構築、提供、管理できるよう支援します。
私たちのプラットフォームの基盤は、業界最大かつ最もスケーラブルなリアルタイムエッジメッセージングネットワークです。世界15か所以上で8億人の月間アクティブユーザーをサポートし、99.999%の信頼性を誇るため、停電や同時実行数の制限、トラフィックの急増による遅延の問題を心配する必要はありません。
PubNubを体験
ライブツアーをチェックして、5分以内にすべてのPubNub搭載アプリの背後にある本質的な概念を理解する
セットアップ
PubNubアカウントにサインアップすると、PubNubキーに無料ですぐにアクセスできます。
始める
PubNubのドキュメントは、ユースケースやSDKに関係なく、あなたを立ち上げ、実行することができます。