Upgrade to Pro — share decks privately, control downloads, hide ads and more …

高コスパ高負荷耐性サイトの作り方 / mtddc-meetup-tokyo-2020-letsusecdn

GENKI TANIGUCHI
October 10, 2020
130

高コスパ高負荷耐性サイトの作り方 / mtddc-meetup-tokyo-2020-letsusecdn

MTDDC2020で登壇した際の資料です。
https://mtddc2020.mt-tokyo.net/track-a-07.html
気軽に安価で利用できるレンタルサーバですが、付加機能を組み合わせることで高負荷、大量アクセスに適応することもできます。オプション機能や外部ソリューションを組み合わせてコストパフォーマンスが高くセキュアなWeb配信環境を作る方法をご紹介します。AWS等複雑なサーバーは必要ないけれど、SNSキャンペーン、CMなどで高負荷が予想されるといった場合や、学校のサイトなど天候急変、合格発表等負荷状況の読めないサイト運営などに備えたインフラノウハウをご紹介します。

GENKI TANIGUCHI

October 10, 2020
Tweet

More Decks by GENKI TANIGUCHI

Transcript

  1. © SAKURA internet Inc. 2 自己紹介 谷口元紀(たにぐちげんき)  1979年生まれ 北海道函館市出身

     2016年さくらインターネット入社  Webディレクターとして事業会社、制作会社等で勤務  レンタルサーバ/ドメイン/SSL/CDNのサービス企画を担当
  2. © SAKURA internet Inc. 3 お品書き  SNS時代におけるCDNの重要性  セキュアなWebサイトを作ろう

    以上20分程度の予定。ご質問は随時↓のQA機能をご利用くださ い。 ハッシュタグは #MTDDC
  3. © SAKURA internet Inc. 5 CDN、使ってますか?  負荷分散にはContent Delivery Networkは選択肢の一つ

     突発的負荷急増時でも適切に設定すればサイトが表示可能  自治体HPでも利用が推奨されるなど、利用が拡大しています POINT 10年に1回の海外旅行のために大きなスーツケースを買うのは非効率。 レンタルで済ました方が安いのに似てます!
  4. © SAKURA internet Inc. 6 CDNでなぜ負荷分散&高速化できるの? CDN CDN レンタル サーバ

    初回アクセス時、CDNを使っていてもレンタルサーバ(オリジンと 言います)までアクセスされるのでCDNの効果はありません。
  5. © SAKURA internet Inc. 7 CDNでなぜ負荷分散&高速化できるの? CDN CDN レンタル サーバ

    2回目以降、キャッシュ時間が切れるまではCDNのサーバで代理応答。 PHPやデータベース処理がボトルネックにならない! レンタルサーバの転送容量もカウントされません!
  6. © SAKURA internet Inc. 9 どんな業者があるの?  クレカさえあれば始められる超高機能系。英語多め  Cloudflare/CloudFront(AWS)/Fastly

     営業の人が売りに来るめちゃくちゃ大手  Akamai  日本語サポートが魅力の国産系  ウェブアクセラレータ(弊社)/IDCF/IIJ/Jstream等
  7. © SAKURA internet Inc. 11 お客様の業種など  天気予報  ホテル

     学校等の教育機関  イベントの集客サイト  CM露出等のある食品  オウンドメディア  ECサイト  生配信サイト  自治体等の官公庁  普通のコーポレートサイト
  8. © SAKURA internet Inc. 12 ここがすごいぞ!CDN  そもそもレンタルサーバではない  高価なレンタルサーバプランでも限界は訪れます

     広帯域回線に接続しているCDNの限界値は遥かに高い  応答がめちゃくちゃ速い  PHP/DBの処理がないので1桁~10ms台でHTMLの応答ができます  キャッシュなので元ページがどんなに動的で重くても高速応答します ※物理的に大容量の場合を除く  Core Web VitalsのLCP改善にも  休日夜間などにダウンしたサイトの対応をしなくてもよいのが 最高!と制作会社さまより高評価です。
  9. © SAKURA internet Inc. 13 ここは気をつけよう!CDN  管理画面などはキャッシュできないので速くならない  キャッシュしてはいけない情報に注意

     個人情報/リアルタイム性の高い情報/スマホ出し分け  課金が青天井のものが多い ※定額のサービスもあります  アクセス数が少なすぎると効果が薄くなる
  10. © SAKURA internet Inc. 15 いわゆるサーバーが落ちたとき  レンタルサーバの鯖落ちと呼ばれる現象について  正確には落ちているわけではなく、アカウントごとに使えるリソース

    が制限されている状態  同時リクエスト数や転送量によって制限がかかり503/504エラーなど が表示されます  高いプランほど制限値がゆるい場合が多い  VPSなどで本当にサーバが落ちているときもあります  connection refused等ブラウザ側のエラーが出る
  11. © SAKURA internet Inc. 16 運営者/制作者側でできること  アクセスが減るのを待つ(制限値内に戻ると解除される)  リソース拡張機能やキャッシュ機能を使う

     リソースブースト/エックスアクセラレータ/ロリポップ!アクセラ レーターなど  リソース大食いしているコンテンツを軽量化する(よくある)  CDNを設定する
  12. © SAKURA internet Inc. 18 なぜ今CDNなのか?  コスト削減(これは昔から) →ピークトラフィックに合わせてサーバ設計するのが大変 

    LINE等のプッシュ通知による同報機能の普及 →メールと違い一気に届くのでアクセスも一気に増える  SNSによる思わぬ拡散効果→予想できないアクセス増が生まれやすい  災害、異常気象の増加→主に自治体系  画像のリッチ化による転送容量超過 →高精細ディスプレイの普及による画像容量の肥大  スマートフォンの普及によるインターネット利用者の増加
  13. © SAKURA internet Inc. 19 レンサバでいう「高速」について  当社含めて「高速」をアピールするレンサバは多い  この「高速」はPHPアプリケーション処理やデータベース処理

    を指す場合が多く、動的CMSの動作速度に効果がある  静的ファイルを事前に出力するMTであれば安価なプランでも対 応可能。 ※ダイナミックパブリッシング、転送容量とアクセス数に注意
  14. © SAKURA internet Inc. 23 ここがすごいぞ!コンテンツブースト  課金上限が設定でき、設定を超過すると自動的にレンタルサー バ配信に戻る。予算固定したい人にピッタリ! 

    翌月になるとまた自動的にコンテンツブースト利用状態になる  コンテンツブースト解除状態でもレンサバ利用なのでサイトは 継続表示される  とにかく設定が簡単である
  15. © SAKURA internet Inc. 28 最近のセキュリティ事情  フィッシングサイト設置/フィッシングメール送信が多数  脆弱なWordPressサイトは狙われやすい

    (古いコアや古いプラグイン)  パスワード漏洩/簡単過ぎるパスワード要因が9割  レンサバアカウント/CMSユーザ/メール全てのパスワードを 要チェック!
  16. © SAKURA internet Inc. 31 レンタルサーバが受ける主な攻撃の種類  インフラ系  SSH/POP3/IMAP/FTPへのブルートフォース/パスワードリスト攻撃

     脆弱なミドルウェアなどへの攻撃  レンサバアカウントへの攻撃  アプリ系  WebアプリへのXSS/CSRF/SQLインジェクション  脆弱性の存在する古いWordPress/WordPressプラグインへの攻撃  CMSのダッシュボードへのブルートフォース/パスワードリスト攻撃 →静的ファイルを出力するMTはアプリ系の攻撃を受けづらい
  17. © SAKURA internet Inc. 32 今日からできる対策  パスワードは複雑で長いものに  最近は十分に長い英単語を複数つなげたものでもいいと言われていま

    す。HarddiskLancableNetworkServer!みたいな  メールパスワードなどにも気をつける  自分が管理者の場合、ルールを徹底する  CMSは最新版を使う  アプリ系対策はMTの場合不要なものが多いが、ダッシュボード ログイン情報、レンサバアカウントなどは要注意
  18. © SAKURA internet Inc. 33 今日からできる対策2  ダッシュボード保護はBASIC認証がおすすめ  サーバ負荷が低い/簡単

     無料SSL機能などによる通信の暗号化  あわせてFTPなどでもSFTPやFTPSを使う  API等不要な場合は口をふさぐ  無駄に管理者権限のあるサーバを借りない