このブログ、来るたびに記事なんて書かずにサーバーの構成変えたり記事を整理したりばっかりで全然更新していない。
そもそもサイトのレスポンスが悪すぎてストレスしかなかったので、ちょっとまたサーバーを引っ越しさせてみた。
さくら共用サーバーからVPSへ
遡ること、5年くらい前。
勉強のためにVPSを借りて、当時はcentos6とかだったと思うが、月数千円の維持費をかけて
どうせサーバー余ってるんだからと思ってWordpressを乗っけた。
旅行に良く行ったり、少しだけ一眼を触っていたこともあって、写真を乗っけてたまに文章書くみたいな。
プロカメラマンのお友達yagiken.com に行き来してたまーにコメントを残すみたいなことをしていた。
当時は楽だった。SSLとかしなくていいし、nginxなんて発展してなくてパッケージインストールそもそも出来ないから、じゃあApacheで良くね?みたいなノリで市場シェアもApache1強だったし。
centosも単純明快、しかもめっちゃ軽いのでVPSにお金をそこまでかけなくてもいいし、PHPはアップデートしてめっちゃ軽くなったし。
ということで数千円か、そんなにいかないくらいの値段でVPSを維持。してたんだけど、
VPSで遊んでいたりしたらめっちゃ重くなって、スペックの限界を感じた。
それでも、ずーっと放置していたのだけど、複数サイトを運営したりだとかSSL問題がどうしても大変で、どうせ大して更新しないなら
さくらの共用サーバーでクッソ安い金額で運用すれば良くね?ということでさくら共用サーバーへ移行。。。
したら、まあ安いのでしょうがないけれども、重い重い。
たまーに気が向いて、記事更新しようかなとか思っても、管理ページ開くだけでも5秒10秒表示に時間がかかる。
そんなのではやる気が起きない。大きなイベントが終わって、多少手が空いてきたところで着手。
ノウハウというノウハウはないですが、流行りの構成にしたというわけです。
centosはどんどんリッチになって、折角手が慣れてきたコマンドが変わりまくってあーーーー!!!!もう!!!!ってなったので、ubuntuを選定
dockerとかにすればいいんだけど、k8s入れるとか何だかんだで重くなるし、一気にやりすぎて満足して燃え尽き症候群になるのは良くないので
次の課題として残して、今回はLAMP+Nginx導入。
NginxでやっとけばWebサーバーだけ切り出したり、Mysqlだけ切り出したり、超人気サイトになって負荷分散したいってなったとき多少楽なのでNginxだけリバプロ構成で組んだ。
VPS環境 どうせなら今の最新環境で
個人が借りられるVPS環境で最強なとこはどこか。
Conohaがカスタマイズも出来て最強そうではあるが、別サービスの運営のために借りていて、ここを使うのはなんか面白味がない。
WordPressでブログ程度、仕事とは全く関係がないのでカスタマイズ性とか機能性よりロマン重視で行きたいということで、
今回は、Web arenaを借りた。※ステマじゃないよ
選定の理由は、NW500Mbps対応というところ。
これは相当なトラフィックを耐えそうだ(実際このサイト程度では超過剰スペック。10Mbpsで足りるUUしかない)
V6対応あり。IPOE、IPV6の研究もしたかったため、これも合ってて、月額料金も1500円くらいで、Ubuntu最新22.04LTSも使える。
サポート期限は2027年までOK!5年は安心できます。
OSまで決めて、PHP、Mysqlをパッケージからインストール。自動的にPHP8.1になったのも良かった。PHP8.1も2024/11までサポートされます。
最新過ぎても、パッケージ管理できなくなって、何インストールしたかわからなくなるのでパッケージでインストール可能な最新なものを入れる。
ということでNginx⇔Apache⇔Mysql環境ができた。
速度向上と今後の目標
共用サーバーから比べるとかなりの速度向上をしたわけだが、これはあくまでも干渉が多い混雑している環境から抜け出しただけであって、本質的なスピード向上はされていない。
Wordpressのセキュリティアップデート等にも追従しつつ、更なる速度向上を目指すために行きついたのはテーマの自作である。
サーバー側が読み込むものは必要最小限。画像データは圧縮。転送サイズを極限まで少なく。
回線速度が上がってきている中、”今風”な見た目で、めちゃ早いサイトを目指す。PCやスマホのスペック厨ではなくてスピードのスペック厨となるのです。
(国内クリアしたら次は海外からアクセスとか気にしだして終わりがない世界・・・ww)
エクストリームワードプレスマスターを自称していますが、何故だか相当内部構造については詳しくなりました。
マルチサイトの構築もできるし、マルチサイトでリバースプロキシ、インターネットには出れないみたいな激やば環境でCDNが無駄に禁じられてる環境でも、CDNを内包して
Wordpressの比較的コアな部分の改修も何故か出来ちゃうくらい無駄な知識があって、そんな経験から言うと「何でもプラグイン入れて解決してはいけない」というのがあります。
やったとしてもclassicエディターとか、そのあたりまでにしておかないと数年後絶対に動かない痛い目に合うので、
カスタマイズする機能はテーマに内包したほうがあとあと楽です。
モバイル環境が微妙。
テーマ弄りに関しても、functions.phpが肥大化するので、これもうまいこと機能ごとにfunctionを分けてファイル管理する。
functions.phpはmain関数で全ての機能に影響するので。mainにはなにも書かない。
と言うのが、Wordpressわかってない人とか、変な業者がfunctions.phpの小手先対応でやるし、
ユーザーが導入するならまだしも、変なプラグイン入れて後々のアップデート対応できなくなって脆弱性だらけになってしまってどうにもこうにもならなくなってしまう現実が悲しい。