AWS別アベイラビリティゾーン(AZ)にEC2を建ててしまった
AWSを構築している際、2台の連携が必要なEC2を別のアベイラビリティゾーンに建ててしまうことがあります。
マネジメントコンソールでポチポチと項目を選択していると、subnetの選択をデフォルトのままにしてしまうことが主な要因だと思います。
間違えてしまった構成
私も下記のような構築をしてしまいました。
WordPressの構築で、ドキュメントルートを伴うWeb用EC2とmariaDBをインストールしているEC2を2台のEC2で実現しようとしました。
ところが、EC2の場所を東京アベイラビリティゾーンのaz-aとaz-dに建ててしまったのです。
構築後は構築の誤りに気づくことなく2週間程度過ぎていました。
本来であればaz-aもしくはaz-dのどちらかに2台のEC2を構築するべきでした。
アベイラビリティゾーン(AZ)を跨いだEC2の遅延時間
WordPressを運用し始めて、ページのレスポンスが普段よりもかなり遅いように感じました。
調べてみると下記のような感じでした。
(誤)az-a/d構成 | (正)az-a構成 | |
管理画面 | 5-7 sec | 1-2sec |
トップページ | 9 sec | 3 sec |
記事ページ | 15 sec | 7 sec |
このようにかなりレスポンスが遅くなっています。
約3-4倍程度の違いが出ていました。
なぜこのような遅延時間になるのか
一般的にAWSではリージョン間でも数ミリsecの通信速度を実現していると謳っています。
https://dev.classmethod.jp/articles/monitor-aws-region-network-latency/
WordPress特有の事象
WordPressはアクセス毎にデータベースに何十回(プラグイン導入数によっては数百回も接続します。
このため、数ミリsecの差でも秒単位で遅延時間が現れてきます。
レスポンス遅延時間の解決方法
EC2を正しいAZに配置する
これが最適な解決策となります。
EC2を一度削除し、正しいAZで再構築をしましょう。
web側とDB側どちらを合わせるかはどちらでも良いですが、wp-config.phpの設定やDBの設定で工数が少ない方が良いと思います。
東京のAZでは性能も異なってくるためそれも考慮すると良いでしょう。
AWSの効果的な学習方法は?

最後に、AWSの効果的な学習方法をご紹介します。
自学自習はUdemy講座
オンラインプラットフォームであるUdemyは安価で手軽にAWSの学習が可能です。
しかし、上記で紹介したような実際のAWSエンジニアが実施している構築スキルまでは教えてくれません。初心者~中級者向けの講座が多くなっています。
私も受講した、初心者向けAWS講座を下記記事でまとめています。ご参考ください。
1人で学習が難しい場合はオンラインレッスン
1人で学習が難しい場合はオンラインレッスンがおすすめです。
最近では、AWS講座を提供するオンラインレッスンも増えてきました。
料金は高くなりますが、現役エンジニアからAWSについて学ぶことができます。
本ブログ執筆者のメンタリングも受付中
本ブログを執筆している[KAITech]もメンタリングを受け付けています。
オンラインレッスンは高くて手が出せないという方は私までお気軽にご相談ください。
下記から承っております。