geta1972TweetPocketCheckこんにちわ。普段から、歩くことも、食べることも、エスカレーターを歩いて登る時も、早くやりがちな下駄です。食べる時はゆっくりがいいとか、のんびり行ったほうが良いという人に反発しながら、高速にすることで無駄がなくなるとアホナ持論を展開していますが、インターネットサーバーに関しては、少しでも早いに越したことがありません。スマートフォンのホームページでは、3秒以上表示に時間がかかると、53%以上の人がページを閉じてしまう(閲覧を諦めてしまう)という調査結果などもあります。https://boxil.jp/beyond/a5835/もちろん、ユーザーの使用しているネットワーク環境による影響も大きいのですが、それでも、表示速度を早くする手段を講じておく必要は大きくあると言えるでしょう。今回は、限定的ですが、PHPによる高速化のポイントを少し解説したいと思います。WordPressが遅いわけ何かと人気のwordpressフレームワークですが、人気の秘密は世界的に豊富なOSSの恩恵を受けられるプラグインやテーマデザインの手軽な構築でしょう。処理速度の高いサーバーを使うことで、ある程度のスピード担保はできるのですが、そもそもwordpressは、PHPの構造自体に無駄が多く、ボトルネックが存在するので、プログラミングができるエンジニアが利用する場合は、あまりおすすめできるフレームワークではありません。プログラムが苦手なフロントエンジニアや、管理パネルだけでホームページを作りたい、ライトユーザー向けのツールなので、仕方がないでしょうね。具体的には、wordpressのphpファイルの中身を見てみるとよく分かるのですが、何にもプログラムが書かれていないプログラムファイルが膨大に存在することに、びっくりするでしょう。した無駄ファイルを全て読み込み時にメモリに格納する仕様のため、非常に効率が悪い構成になっているのですね。自分フレームワークのオススメ今どきのPHP開発環境で人気なのはlalavelのようですが、いろいろな採用現場の話を聞いていると、phpでかつlalavelが使えるエンジニアが比較的ニーズが多いようですね。なんとなく気持ちはわかりますが、そうしたツールの機能に依存して「出来る・出来ない」の判断をする開発が苦手な僕としては、常に手作りフレームワークを用いるようにしています。自分の開発においてこれほど効率的なフレームワークは他にない状態になってしまいました。どちらかというと、プログラムのDIY的なイメージですが、そうしたのが好きな人には、自分フレームワークがオススメですね。僕の作成したフレームワークで、最近気がついたのですが、GoogleSpeedInsightsで計測すると、非常にいい点数を獲得できるようになっていました。実行する関数(そのclassが含まれているphpファイル)のみをその場で読み込み、メモリ常駐する仕様にすることで、無駄な処理がほぼ無くなることに気が付き、それをフレームワークに組み込むことで、スピードアップに貢献できたということなんです。具体的な構造は以下のとおりです。action-sampleファイル構造にそったnamespaceを設置し、ファイル名とclass名を合わせることで、その対象メソッドがない場合に、requireを実行するだけなのですが、これをすることで、無駄なメモリが消費されなくなるので、非常に効率の良い実行が行われる事になります。あと、wordpressの遅い原因としてMySQLの構造体もあるのですが、今回はPHP構造のみの解説にしておきます。コメントをキャンセルメールアドレスが公開されることはありません。*サイト次回のコメントで使用するためブラウザーに自分の名前、メールアドレス、サイトを保存する。