横浜市のコロナウイルスワクチン予防接種サイトが200万アクセス/分と言うアクセス過多で利用不能になったらしいが、サーバー台数を増やし処理能力を3倍にして対応すると言う「物量作戦」で対応するらしい。
https://www.yomiuri.co.jp/national/20210504-OYT1T50084/
一見すると極当たり前の内容にも思えるが、翌々考えてえほしい。
アクセス過多なのだからサーバー増強による対応は間違えてないのでは?
横浜市の人口って何人だっけ?
と調べてみると「373万人」だそうだ
ん??
あれれ?
なんか比率がおかしいような?
https://datacommons.org/place/wikidataId/Q38283?utm_medium=explore&mprop=count&popt=Person&hl=ja
つまり、人口の半分以上のアクセスが毎分行われていると言うのは、そもそもの前提がおかしいと思う。
更に、接種券が無いと実際の予約は行えない。
優先接種の人ってもっと少ないよね?
これは「DDoS攻撃(distributed denial-of-service attack)」と言われるサイト攻撃を受けているのでは無いかと推測される。
このDDoS に対抗してサーバー増強をしてしまうと「アクセスの間口」を広くしてしまう為、更なる攻撃対処余力が生まれてしまい対応としてはあまりよろしくない方法である。
とするとどうすればよいの?
【対処法1】「DDoS緩和装置」を導入する。
サイトURLが接種券にしか記載されていないので確認出来ないけどサービスしている ISP や クラウド事業者が緩和装置を低額で共有提供してくれる場合もあるので確認してみるのが一番ですね。
これを使った場合の大きなメリットとしては「不正パケットを無視させる」と言う事が出来るのでアクセスとは関係の無いデータは篩い落とされる為、サーバリソース低減と言うメリットがありますね。
高くて面倒だけどメリットもあるのね
【対処法2】 Rate Limit を掛ける
ただ、サーバ台数分の設定を行わなければならないし微調整が面倒ではあるがそこそこ有効な手ではある。
Nginxでの例
https://qiita.com/niisan-tokyo/items/f7176fb0d4d3cff64f2c
手間次第と言ったところかしら?
【対処法3】 CDN&クラウドWAFを入れる
これを行うだけでもオリジナルサーバへの負荷はかなり低減出来るはずである。
欠点としては、契約回線容量がある程度決まってしまう点とアクセス頻度によって価格が上がってしまうという事であろう。
とは言っても、DDoS緩和装置を導入・運用する費用と比べれば微々たるものである。
費用対効果しだあいって事ね?
そもそも「200万アクセス」と言う数値の根拠はどこから算出されたのだろう?
- アクセスログから?
- TCPのネゴシエーション数から?
- サーバのセッション数から?
根拠のもとになるところを示して欲しいな
数値の根拠次第で対応も変わるということですね
PR: WAF標準装備で WordPressサイト が簡単に作成出来る Conoha Wing
コメント