サーバサイドスクリプトで使用される言語の割合。

サーバサイドスクリプトとは、Webサーバ上で動作し、Webサーバ上でプログラムの実行が要求されるたびに、結果をウェブブラウザに対して送信するようなプログラムである。[1]

サーバサイドスクリプトでは、Webサーバからウェブブラウザに送信される時点で既に処理が完了しており、スクリプトを含まない通常の HTML がデータとして送出される。この点で、HTMLと同時に送信され、ウェブブラウザにて実行されるクライアントサイドスクリプト(この用途では、主に JavaScript が使われている)とはまったく異なる概念である。

ウェブサーバプログラムの機能の主体は、あらかじめ用意された情報を利用者(クライアント)の要求に応じて送り返すことである。そのためサーバプログラム単体では情報をその場で動的に生成してクライアントに送信するような仕組みを作ることはできなかった。 そこでサーバプログラムから他のプログラムを呼び出し、その処理結果をクライアントに送信する方法が考案された。

実行速度やテキスト処理の容易さなどの兼ね合いにより Perl が使われることが多かった。近年では、Perl に加えて PHPPythonRuby なども広く使われている。

代表的なアプリケーションには、電子掲示板アクセスカウンタWikiブログシステムなどがある。

Webサーバとスクリプト処理系をつなぐ機構としては、CGI、データベースとスクリプト処理系をつなぐ機構としてはSQLクエリが使われてきたが、近年ではウェブアプリケーションに使うインタプリタや、アプリケーション本体を常駐させたり、スクリプトの実行結果[2]や実行に必要なデータ[3]キャッシュすることにより高速化、スケール化を図っている。

2010年代に入り、サーバサイド JavaScript も多用されるようになった。特に Node.js は、ウェブアプリケーション構築に頻繁に用いられている。

脚注

編集
  1. ^ Client-side and server-side scripts - Web pages and web apps - GCSE Computer Science Revision” (英語). BBC Bitesize. 2022年5月26日閲覧。
  2. ^ varnishなど、リバースプロクシとよばれるもの。
  3. ^ memcachedなどのキャッシュサーバ。

📚 Artikel Terkait di Wikipedia

ウェブアプリケーション

なわれる。クライアントに近ければ近いほどネットワーク遅延は小さくオフライン動作に強く、一方で同期の難しさも発生する。 アプリ内キャッシュ client-side proxy: Service Worker API Cache ブラウザキャッシュ:HTTPキャッシュ(HTTP ETag) Web Proxyキャッシュ

ウェブストレージ

Storage Web Storage API on Mozilla Developer Network Opera: Web Storage: easier, more powerful client-side data storage Local Storage on BlackBerry DevZone

Google Chrome

のためにウィンドウプロセスとの通信は増加するも、個別タブのクラッシュやメモリリークの影響が他のタブへ影響しない。 処理を高速化するためにJavaScriptエンジンはV8を採用した。 セキュリティ対策機能は、個々のプロセスを保護して問題が発生しても他へ影響を及ぼさぬサンドボックス機能、Google以外のページ閲覧履歴や

静的ウェブページ

updating content on a static site: “I can do it with JavaScript”. Doing processing on the client-side and appending the results to the page after it’s been

GlTF

https://github.com/KhronosGroup/UnityGLTF 2017年9月26日閲覧。  ^ “Web-based client-side preview and validation · Issue #1081 · KhronosGroup/glTF” (英語). GitHub

Javaバージョン履歴

2008年5月6日時点のオリジナルよりアーカイブ. 2006年7月8日閲覧. ^ “SUN MICROSYSTEMS RELEASES FASTEST CLIENT-SIDE JAVA PLATFORM TO DATE” (Press release) (英語). Sun Microsystems.

Blazor

相互運用機能を利用することで、alertなどのJavaScript関数や外部のJavaScriptライブラリを利用することもできる。 asm.js – C言語またはC++で記述された、クライアント側のWebアプリケーションを可能にするWebAssemblyの前身。 Google Native Client –

ExifTool

Renamer website. 2022年3月6日閲覧。 ^ cberry (2012年6月1日). “Parsing Exif client-side using JavaScript”. code.flickr.com. 2015年11月16日閲覧。 ^ “Hugin Preferences - PanoTools