Search

「ネット予約」はなぜ落ちるのか どうすれば落ちないのか - ITmedia

netto.prelol.com

 コロナ向け予防接種の予約システムで、「ネットのシステムが混雑で落ちた」という話が問題視された。話題の製品が出るたびに「ネットショップが落ちる」という話も出る。

photo

 事情を知っている人からすれば「まあ、落ちるよね」とは思うのだが、ネット予約がなぜ落ちるのか、いまひとつピンときていない人も多いのではないかと思う。

 そこで改めて、一つの基礎知識として「ネット予約はなぜ混雑に弱いのか」という解説をしてみたい。理由を知れば、その対策も見えてくるはずだ。

この記事について

この記事は、毎週月曜日に配信されているメールマガジン『小寺・西田の「マンデーランチビュッフェ」』から、一部を転載したものです。今回の記事は2021年5月17日に配信されたものです。メールマガジン購読(月額660円・税込)の申し込みはこちらから。さらにコンテンツを追加したnote版『小寺・西田のコラムビュッフェ』(月額980円・税込)もスタート。

ネットサービスは「混雑」に弱い

 ネット予約が落ちる理由はなにか?

 まあ、簡単な話で、「人がたくさん集まるから」だ。

 ただ、人がたくさん集まる、といっても「そんな大変なの?」と思う人もいそうだ。

 もはや、われわれはネット抜きに生活できない。Webサイトやメッセージングサービスには、毎日大量の人が利用している。巨大なWebメディアや映像配信にはたくさんの人が大量のデータを利用しているのに、通常の状態では落ちない。たとえばYouTubeは、世界中で毎日20億人が再生している。これはアカウント登録者からの推定であり、実際にはもっといる可能性もある。

 なのに、通販や予約になるとWebサービスはストンストンと落ちる。巨大なECサイトであっても程度問題であり、時にはアクセスが困難になる。

 なぜなのだろうか?

 サーバは混雑に弱い。これは同じ時間の中でどれだけ同時に処理できるか、という話だと考えていただければいい。

 リアルとネットで、同じ「朝9時から売り出し」があったとしよう。

 リアルなら、店の前に行列ができて開店を待つことになる。場合によっては行列にならずに無秩序に店の前に人だかりができて、「物売ってるレベルじゃない」感じになることもあるが、まあ、それは例外。やろうと思えば「前から行列を作って時間を待つ」という対応ができる、という点を覚えておいてほしい。

 リアル店舗での「混雑」は、販売対応自体の速度以上に、店に入れるかどうかという「面積」の問題が大きい。待機行列を作る場合も同様に、店の外にどれだけ行列を作れる場所があるか、という点が問題になる。

 一方ネットはどうか? 「面積」の問題はない。だが、一度に処理できる量には限界がある。

 9時になって皆が一斉に「のりこめー」とアクセスすると、非常に短い時間の間に、サーバへと大量のアクセスが集中することになる。1万人がアクセスすると想定しても、「1時間の間に1万人がアクセスする」のと、「1分の間に1万人がアクセスする」のとでは、サーバにも回線にもかかる負荷は数十倍違う。

 これは序の口で、人気商品などならば、さらにこの数十倍のアクセスがあっても不思議はない。

 リアル店舗とは違ってネットに行列はない。「9時から」という条件は誰にとっても同じなので、当然、売り出し開始の時間に圧倒的なアクセスが集中するわけだ。アクセス集中で表示されないと皆ページをリロードするなどして何とかアクセスしようと試みるわけで、さらにアクセス集中は続く……ということになる。

 現実の例で言えば、人々がパニックになって狭い入り口に殺到するような状況が毎回起きている、と思えばいいだろうか。

 ちなみに、ネットだけでなく「電話」も同じ課題を抱えている。一度に同じ番号に通話が集中すれば、つながりづらくなる。それだけでなく、影響が電話システム全体に広がると、今度は予約以外に悪影響がでる。今回のワクチン予約で、電話での通話に制限がかけられた理由は、「電話システム全体の健全性を維持する」ための緊急回避であり、必要なことだ。

 一部に制限をかけたことを非難する声もあるが、それはお門違いだと考える。ライフラインである「電話」を落とさないことの方が重要だ。

あらゆるネットサービスは「混雑を回避する仕組み」に支えられている

 サーバの性能は年々上がっているが、人々のWebサービスへの依存度も高まっており、性能は追い付いていない。年に数回しかない「混雑する日」に合わせてサーバを用意するのも効率が悪い。

 というわけで、Webサービスにとって「短時間にアクセス集中する」のは鬼門である。当然ながら、各サービスは混雑対応の技術を導入し、課題に対応している。

 アクセス集中が想定される場合には、一時的にサーバを増強し、それぞれに負荷を分散することも多い。特に現在は、クラウドインフラ事業者からサーバを借りて運営することも多いため、そうした処置もしやすい。一方で、負荷分散の仕組みを打ち砕くほどのアクセスが来ることも多く、万能の解決策ではない。

 これがショッピングや予約でなく、映像配信やWebの表示の場合、現在ではある程度解決策が生まれている。「コンテンツデリバリー・ネットワーク」(CDN)の活用だ。

 CDNとは、コンテンツを事前にたくさんの地域へと分散して配置するための専用ネットワークであり、インターネットと同時に存在する「もう一つのネットワーク」と言っていい。今やほとんどのWebサイトでCDNは使われていて、負荷を「ネットワーク全体で支える」ことで快適なコンテンツ視聴が担保されている。

 Netflixなどの映像配信を使っていて、「なぜこんなにたくさんの人が見ているのに、ネットワークは混雑しないのだろうか」と思ったことはないだろうか? 米国のサービスを視聴しているのだから、普通に考えると「日本から大量の人が、海底ケーブルを介して大量の映像を伝送している」となり、とても無駄に思える。

 ただ実際には、CDNによって映像は事前に「各国の各地域」に転送済み。東京から視聴したとすれば、Netflixにアクセスしたとしても、実際には東京のどこかにあるCDNにアクセスし、映像が自分のところへと転送されている。

photo 代表的なCDNの一つ、Fastly

 ちなみに、Netflixの場合には、数年前のデータの場合、98%の映像再生が「その人の居住地近くのCDNから再生されている」という。すなわち、国際的なネット回線への負荷は小さなものに意外と小さくなっているのである。実際問題、こうした工夫がなければ、こうした映像サービスは成立しない。

 こうした仕組みは「コンテンツ表示」には非常によく効くものの、ショッピングや予約では有効ではない。利用者の情報登録などの処理が必須だからだ。だから、古典的な負荷分散などの手段は使えるが、CDNの効果は非常に限定的である。

 というわけで、予約サイトは今日も落ちるのだ。

「予約のアクセス集中対策」にはシステム外の知見が必須

 では解決法はなにか?

 答えは、意外とシンプルである。

 決まった時間に大量のアクセスが集中しないよう、「システムの外で工夫する」のだ。

 一番簡単な方法は、「“何時から”という告知をしない」こと。なんとなくこの日のこの時間帯から、というぼんやりした状態にしておけば、全てのアクセスが同じ時間に来る最悪の状態は防げる。ただこれも、結局は程度問題にすぎず、「予約が始まった」と周知されるとアクセスは集中してしまう。

 次に、「予約などを段階性とする」こと。アクセス集中するのはしょうがないとして、その場での処理を軽くすることで負荷を軽減するやり方だ。例えば、予約の「受付」だけをして情報の入力は後日に回すわけだ。

 また、「先着」でなく「抽選」にするのも効果がある。先着になるととにかくみんなが急ぐことになるが、一定期間抽選を受付、後日抽選に当たった人に正式予約を連絡……という形にすることで、「一斉に同じ時間に来なくてもいいですよ」とアナウンスし、アクセス集中を回避するのである。PlayStation 5などの人気商品販売では、このパターンが使われることが増えている。

 ただ、どの方法も完璧ではない。多数の人とアカウントを用意したり、Botなどを使って「自動アクセスする手段を用意したりできる、いわゆる「業者」の方が有利な点は否めない。そこで、過去の販売履歴やクレジットカードの種類など、ネットワービスの外にある工夫を組み合わせることになる。

 ワクチンの予約についても、全員に対してシンプルに「何日何時から」という予約の方法は、アクセス集中対策という面では問題があったと思う。例えば、対象者をグループに分けて予約受付日時・時間を変えて、その後で受付順を抽選して通知するなどの方法もあるだろう。

 そもそもワクチンについては、「確実に一定の時期に接種できる」よう周知と手続きを進めることの方が重要だ。人より1日早く接種を受けても影響は小さく、「社会全体での接種率が急速に上がる」ことの方が、個人の感染防止にも蔓延(まんえん)防止にも重要だ。ワクチンは重要だが免罪符ではない。不安感が殺到に直結している部分もあるので、ここもまた「システムの外」での対処が必要になる。

 混雑にシステムは弱い、という認識を皆が持った上で、「ではどうするといいのか」という点を考える必要がある。そこで必要になる知見やアイデアはシステム的なものだけではなく、その外にもある。ある意味で「ITリテラシー」とは、そうしたことを意識しておくことでもあるのだ。

Adblock test (Why?)


May 21, 2021 at 11:05AM
https://ift.tt/3v99BYD

「ネット予約」はなぜ落ちるのか どうすれば落ちないのか - ITmedia
https://ift.tt/3aYsXq7
Mesir News Info
Israel News info
Taiwan News Info
Vietnam News and Info
Japan News and Info Update

Bagikan Berita Ini

0 Response to "「ネット予約」はなぜ落ちるのか どうすれば落ちないのか - ITmedia"

Post a Comment

Powered by Blogger.