Laravel Octaneでアプリケーションのパフォーマンスを向上させる
Laravel Octane ご存知の通り、従来のLaravelアプリケーションでは、PHPは1回のリクエストを1回ずつ処理することしかできませんが、Laravel Octaneを使用すると、複数のリクエストを同時に処理できるようになり、ウェブサイトの速度が向上します。 1. Laravel Octaneとは? Laravel Octaneは、Laravelアプリケーションのパフォーマンスを向上させるために作成されたオープンソースのパッケージです。最初にアプリケーションを1回だけ起動し、それをメモリ(RAM)に保持し、その後のリクエストは、アプリケーションを最初から再起動するのではなく、メモリ内で保存された状態を再利用して処理されます。 Laravelのリクエストライフサイクル Laravel Octaneのリクエストライフサイクル Laravel Octaneのもう一つの特徴は、複数のワーカーを同時に使用してリクエストを処理できることです。これにより、以前のようにリクエストを1回ずつ処理するのではなく、複数のリクエストを同時に処理できるようになります。 Laravel Octaneのリクエスト処理の概要 Octaneは、FrankenPHP、Swoole、RoadRunnerという3つのPHPの非同期処理ツールを基盤として開発されています。この記事では、Swooleに焦点を当てます。 PHP Swooleは、Erlang、Node.js、Nettyの原則を基にPHP向けに設計されています。しかし、SwooleはLinuxカーネル上でのみ動作するため、現在はLinux、OS X、Cygwin、またはWSLでのみ使用できます。 2. PHP SwooleとPHP-FPMの違い 以下は、PHP SwooleとPHP-FPMの違いを比較した表です。 PHP Swoole PHP-FPM TCP、UDP、HTTP、HTTP2、Unixソケットのサポート あり なし。追加のライブラリが必要 非同期I/Oの使用 あり なし 各CPUに対してワーカープロセスの分割 – 同時処理のサポート あり なし PHPファイルをメモリに読み込む あり なし WebSocketサーバーやTCP/UDPサーバーのための長期接続サポート あり なし 3. Laravel OctaneとPHP-FPMの速度比較 Laravel Octaneの実力を証明するため、簡単なデモを行い、PHP OctaneとPHP-FPMの結果を比較してみましょう。 次のベンチマークテストを仮想マシン(VMware)で行いました: テストベンチの統計情報: CPU: 2コア(11th..
もっと見る- 945 ビュー
- 0 コメント
AsynchronousおよびDeferred Javascriptでウェブサイトの速度を最適化する
ほとんど、いや、現代のウェブサイトはすべて、過剰なJavascriptを使用しています。ソーシャルメディアのボタン?プラグイン?テーマさえも?90%の場合、スクリプトが埋め込まれています。あなたはスクリプトを実行しています。スクリプトはページの読み込み速度を遅くします。ここでは、この問題を解決するための2つのプラグインを紹介します。 Webmasterからのメモ AsynchronousおよびDeferred 覚えておくべき3つのこと: 基本的に、パーサーはHTMLを読み込む段階で止まります ネットワークはスクリプトが呼び出されてから読み込まれるまでの時間です 実行は、スクリプトがユーザーのブラウザで実行される時間です。 基本的に、ウェブサイトの通常のプロセスは、スクリプトが実行されている間にHTMLの解析を一時停止します。もしあなたのウェブサイトが私と同じようであれば、それはユーザーがHTML(ウェブサイトの本体コード、デザイン、コンテンツなど)を見るまでにかなりの遅延があることを意味します。これがスクリプトを読み込む通常のプロセスです: スクリプトをDeferredすることは、HTMLがユーザーのブラウザで読み込まれる前にスクリプトを実行しないことです。これにより、ウェブサイトがユーザーのブラウザで即座に表示され、読み込み速度が非常に速いように感じさせます。アドバイスとしては、すべてのユーザーが非同期スクリプト読み込みをサポートしていない場合にDeferredを使用することです。Deferredスクリプトは次のように動作します: 非同期スクリプトの読み込みは最も良い選択肢です。HTMLの解析とスクリプトの読み込みは同時に実行されますが、スクリプトは準備が整ったときにのみ実行されます。これにより、最も少ない読み込み時間で済みます。しかし、すべてのブラウザが非同期スクリプトの読み込みをサポートしているわけではありません。非同期のプロセスは次のように動作します: もちろん、私のアドバイスは、スクリプトをDeferredと非同期の両方で最適化することです。これを実現するために、次のガイドラインに従うことができます: W3C Editor’s Draft (HTML 5.1 nightly). これらの属性を使用する場合、3つのモードから選択できます。async属性が使用されると、スクリプトは非同期で実行され、準備ができ次第実行されます。async属性がない場合、defer属性があれば、スクリプトはページの解析が終了した後に実行されます。どちらの属性もない場合、スクリプトはページが解析される前に即座にフェッチされ、実行されます。 どこから始めるべきか? 非同期Javascriptは最適な選択肢なので、WordPressのプラグインで非同期Javascriptを検索します。 こちらをクリックしてプラグインページに移動。ダウンロードしてインストールすれば、すぐに使用できます。プラグインの中には、一部で競合が発生することがあります。特にスライダーを使用している場合に問題が発生することがあります。WordPressのバックエンド設定には、インストール後に設定をカスタマイズするオプションがあります。非同期Javascriptに干渉してほしくないスクリプトを除外することができます。 次にDeferred Javascriptです。調べた結果、同名のプラグインが最良であることがわかりました。私が推奨するDeferred JavascriptプラグインはWP Deferred Javascriptです。 こちらをクリックしてWP Deferred Javascriptsプラグインページに移動。ダウンロードしてインストールしてください。このプラグインには便利なオプションはありませんが、非同期Javascriptがサポートされていないブラウザで役立ちます。 参考文献: seo-hacker.com
もっと見る- 71 ビュー
- 0 コメント