卒研メモ:WebサーバスタックとRDBMS

 Webアプリケーション開発も年数を経るにつれ,環境が固定化しつつあります。サーバ側では,WebサーバソフトとしてApacheの代わりにnginxが台頭してくるといった動きはありますが,RDBMSは定番の御三家(Oracle, MySQL, SQLServer)のシェアがほぼ不動状態になっています。(参考サイト: DB-Engines Ranking)

 時系列的に眺めても,Oracleに買収されたMySQLの代わりに完全互換のMariaDBのシェアが上がっているという動きはありますが,やはり定番の御三家の変化は殆どありません。

 この調査はWeb経由で行われているものなので,現在のWebサーバスタック,即ち,Webサーバ,RDBMS等のソフトウェア構成を反映しているものと言ってよいでしょう。本研究室では,開発環境としてはXAMPP for Windows(Apache, MariaDB, PHP)を使用しており,このサーバでもOSがLinuxであることを除けば同一の環境で稼働していますが,世界的にはOracleやSQLServerを利用しているWebアプリケーション動作環境の方が約2/3近く占めていることになる訳ですね。OracleはJava(JavaScriptに非ず)との組み合わせが多いように思えます。
 これらをまとめたWebサーバ側のソフトウェアスタックを図にしたものが下記になります。

 昨年にはMicrosoftがLinux環境向けのSQLServerのプレビューバージョンを公開し,C#を動かすための.NET core環境もLinux上に構築できるようになりました(こちらの記事が詳しいです)。こうなると,Linux上でもWindowsと同じ.NET環境で稼働するWebアプリケーションが実用になるかもしれません。

 近い将来は既存の教材をASP.NET MVCを使ったバージョンに展開していく必要が出てくるかもしれません。とはいえ,PHPとMySQLの牙城もWordPressやXoops等の有力CMSが存在するおかげで結構堅牢なので,そう簡単に乗り換える必要はないでしょうが,同じWebアプリの機能を違う環境で動作させるテクニックを知っておくのは悪いことではないでしょう。当方も一応心に留め置いております。