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

WordBench_Niigata1007

 WordBench_Niigata1007

10/7のWordBench新潟でお話しした内容です。

A70240332e1b47799b75bb9442f9014c?s=128

Kenji Kojima

October 10, 2017
Tweet

Transcript

  1. WordPress+CDNでドはまりした話 2017年10月7日 小島健司 WordBench新潟

  2. 自 己 紹 介 小 島 健 司 Twitter https://twitter.com/nu_nrgist

    Facebook https://www.facebook.com/kenji.kojima.96 ファーストサーバで2001年くらいから働いています。 CMS コミュニティ: WordCamp Kansai 実行委員 WordBench 大阪 モデレーターの一員
  3. 社名 ファーストサーバ株式会社 FirstServer, Inc. 所在地 大阪市中央区安土町1丁目8番15号 野村不動産大阪ビル3F 事業開始 1996年7月 資本金

    3億6,357万円 主要株主 ヤフー株式会社 事業内容 レンタルサーバーサービス ドメイン名登録サービス クラウドサービス 会 社 紹 介
  4. クラウド型レンタルサーバーZenlogic

  5. メモリやCPUなどをデータ移行なしに サーバーリソースを強化できる

  6. 0 100 200 300 400 500 600 700 800 900

    1000 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 0 50 100 150 200 250 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 ずっとアクセスが多いのか 一時だけすごく多いのか
  7. 今日の内容 前半:急なアクセス増の事例と レンサバでの対処 後半:WordPress+CDNでドはまりした話

  8. 急激に増えるアクセスの事例

  9. http://fusenucyu.com/ 風船で宇宙撮影している方のサイト

  10. 2015/10/18放送 「情熱大陸」砲!!

  11.  サーバリソースUP  サーバ台数追加  CDN アクセスが増えた時の対処例

  12.  サーバリソースUP メモリやCPUを増やすとか 専用サーバにするとか アクセスが増えた時の対処例

  13. サーバ台数追加 • 同じコンテンツのサーバを用意して 振り分け DNSラウンドロビン ロードバランサー →データの同期のしくみを検討する

  14. CDN コンテンツデリバリネットワーク (content delivery network) 全国に設置されたサーバから キャッシュで配信 1台

  15. CDN 元々のサーバー 最初のアクセスは 元サーバで返す &キャッシュ保持 次からはCDNで キャッシュで返す

  16. 「情熱砲」にはこんな装備で • リソースの追加 • 諸事情で 画像のみCDN配信

  17. お詫び・経緯の説明など炎上系で アクセスが増えた時 数日前から 準備できるものではない ケース

  18. さすがに事例は・・・

  19.  ノーガード戦法  コンテンツを軽く お詫び・経緯の説明などで アクセスが増えたケース対処例 対応を検討する • 嵐が過ぎるのを待てば 大丈夫なケース

    • サイトが見れなくて 更に炎上するリスクも検討
  20. イベント・お祭り系サイト

  21. イベント・お祭り系 横浜開港祭 中津川 THE SOLAR BUDOKAN 2015 世界コスプレサミット

  22. イベント・お祭り系 • アクセスは多いが突発的なのは あまりない ※トラブル、出演者などによる • 当日は参加者のスケジュール確認が多い →当日の様子などはSNSや動画サイトに 分散される •

    イベント前後以外は極端にアクセス減 イベント前にリソースUP+CDNがいい感じ
  23. バズり系

  24. 俺の嫁がかわいい

  25. まずはSNSから

  26. ノーガードだとこうなります

  27. Y!砲も

  28. ラジオも侮れない!

  29. 高アクセス対策の費用など • レンタルサーバでリソースUP、コースUP • 複数台 →だいたいネットワーク転送量は無料 突発的アクセスにあわせると 普段はオーバースペック • CDN

    →転送量課金 =ずっと使っているとレンサバで不要な 転送量も必要になる。 逆に準備したけどアクセス無ければかからない。
  30.  もしもバズったらどうするか考えておく  費用も検討  事前の相談、準備は大切 突発でどうしようもない時は コンテンツを極力軽く!  相談できるところをもっておく

  31. イイ感じにアクセスさばいてくれるCDN

  32. いろいろなサービスがあります

  33. JETPACKにあるPhoton

  34. CDN 元々のサーバー 最初のアクセスは 元サーバで返す &キャッシュ保持 次からはCDNで キャッシュで返す

  35. CDN導入ステップ  サービスを申込む  設定する オリジンサーバやキャッシュ時間などの設定  DNS設定 cnameでCDNに向ける

  36. CDN導入ステップ  サービスを申込む  設定する オリジンサーバやキャッシュ時間などの設定  DNS設定 cnameでCDNに向ける 静的ページでやったこと

    あったので、WordPressでも すんなりできると思ってたが
  37. DNSでハマる ハマりポイント①

  38. cname www.example.jp cname cdn.hoge.example.com CDNサービスに 向ける

  39. www.example.jpでなくて example.jpで正規化しています。

  40. Zone Apex (Naked Domain) ホスト名無し example.jp のこと

  41. RFC1912 CNAMEレコードは他のデータと共存できない A CNAME record is not allowed to coexist

    with any other data
  42. Aliasレコードなるサービスがあった!!

  43. Dozens https://dozens.jp/ 1,000円/月のプランから Aliasレコードが使える

  44. ゲヒルン https://www.gehirn.jp/ 1日2円/1ゾーンあたり

  45. その他のDNSサービス • Route53 AWSのインスタンスのみ可 • CloudFlare 無料CDNサービスの会社

  46. ハマりポイント② キャッシュされない・・・

  47. Cache-Controll: no-cache, max-age=0

  48. キャッシュされてるような されてないような・・・ ハマりポイント③

  49. プラグインMulti Device Switcher https://ja.wordpress.org/plugins/multi-device-switcher/

  50. 「URL」に対してキャッシュデータを管理 ↓ 「URL + User-Agent」に対してキャッシュ データを管理 Vary: User Agent

  51. Mozilla/5.0 (Linux; U; Android 4.0.1; ja-jp; Galaxy Nexus Build/ITL41D) AppleWebKit/534.30

    (KHTML, like Gecko) Version/4.0 Mobile Safari/534.30 Mozilla/5.0 (Linux; U; Android 4.0.3; ja-jp; URBANO PROGRESSO Build/010.0.3000) AppleWebKit/534.30 (KHTML, like Gecko) Version/4.0 Mobile Safari/534.30 Mozilla/5.0 (Linux; U; Android 4.0.3; ja-jp; Sony Tablet S Build/TISU0R0110) AppleWebKit/534.30 (KHTML, like Gecko) Version/4.0 Safari/534.30 Mozilla/5.0 (Linux; U; Android 4.0.4; ja-jp; SC-06D Build/IMM76D) AppleWebKit/534.30 (KHTML, like Gecko) Version/4.0 Mobile Safari/534.30 Mozilla/5.0 (Linux; U; Android 4.1.1; ja-jp; Galaxy Nexus Build/JRO03H) AppleWebKit/534.30 (KHTML, like Gecko) Version/4.0 Mobile Safari/534.30
  52. キャッシュされてるけど・・・ ハマりポイント④

  53. rank作成のための DB負荷

  54. 常時SSL化したい ハマりポイント⑤

  55. CDNに証明書インストールする必要! 証明書によっては ダメなのも。 ダメなやつだったら追加予算。 ※最近はだいたいOK

  56. まとめ • しっかりと計画を立てる • ホスト名の有無(wwwなど)は非常に重要 • プラグインに気を付ける • CDNサービスも様々、仕様を確認する 最近のサービスは今回紹介したトラブルを

    回避するような機能が付いてるのもある
  57. ご清聴ありがとうございました