勉強したことのメモ

Webエンジニア / プログラマが勉強したことのメモ。

Ajaxで負荷軽減

   2024/01/12  jQuery JavaScript

業務中、専用のページでfile_get_contents的なものは
あまり使わないようにとの指示があり聞いたところ、
別サーバーのファイルをしょっちゅう取得すると共倒れする
ことがあるとか。

なので出来たらajaxでやりなさいとのこと。
ただ、なんでajaxはサーバーに優しいとか
クライアントサイドに負担を分けるとかがよく分かってないのでメモ。

調べた結果、自身で噛み砕いた結果としては、

・必要最小限のデータだけ取得すればいいから
 サーバーが発行するデータ量は減る
・サーバーサイド(例えばPHP)でのロジックとか描写を
 クライアントに投げることが出来る

っぽい。あと、これは口頭で聞いてまだ理解できてないけど、
「同期通信だとどっかで処理がとまった際、
プロセスが溜まるから共倒れする可能性がある」
とのこと。これは今一度確認する。

もう一点、調べている際にajaxのデメリットで、
個人的に盲点だったのがSEOに弱いという点。

確かに、ajaxで取得したページでは、

・ほしいページのURLをコピペしても
 ajax処理される前の初期ページに飛ぶ
・ソースも同様に初期ページ。なので、職場では
 ダミーページというかSEO用のページを作ったりしてた。

という点。その点はpjaxがむっちゃ熱そう。

 - jQuery JavaScript

  関連記事

JavaScript / jQueryで〇番目、最初、最後の要素を指定する方法
JavaScript / jQueryで〇番目、最初、最後の要素を指定する方法

jQueryでリストタグ(<li>)の〇番目、最初、最後の要素を指定 ...

「slick」でarrows(次に進む・前に戻るボタン)を設定しても表示されない場合の対応方法
「slick」でarrows(次に進む・前に戻るボタン)を設定しても表示されない場合の対応方法

「slick」で画像スライダーを表示する際にarrows(次に進む・前に戻るボタ ...

「display: block !important;」指定された要素をjQueryで非表示にする方法
「display: block !important;」指定された要素をjQueryで非表示にする方法

jQueryで特定の要素を非表示にしたかったのでhide()を使用したところ非表 ...

jQueryでユーザーが編集可能な文字列をページ上に表示する際にエスケープする方法
jQueryでユーザーが編集可能な文字列をページ上に表示する際にエスケープする方法

GETパラメータを取得し、その内容をページ上に表示したいケースがあった。また、A ...

FormDataを使ったAjax通信がiPhoneのみエラー
FormDataを使ったAjax通信がiPhoneのみエラー

FormDataオブジェクトを使用したAjax通信するシステムがあり、PCやAn ...