他サービスとの比較について
Q. espar を導入することとリバースプロキシを自前で立てることの違いはありますか?
表示の高速化だけが要件で、かつWebサーバの設定/運営に関する経験がある場合は自前でリバースプロキシを立てるのが最適です。
但し、リバースプロキシはセキュリティ対策にはならないことは留意すべきです。
リバースプロキシは、Webサイトの応答をキャッシュして再利用する仕組みですが、その仕組み上、全ページにおける初回アクセスがCMSサーバにリクエストが届いてしまいます。また、悪意ある第三者からの不正アクセスはキャッシュが効く程にパターン化されたリクエストではなく、CMSサーバまで届きます。
また、リバースプロキシでは、CMSサーバがダウンした場合にはキャッシュヒットしないページに応答できなくなるため、可用性UPにはならないことにも留意すべきです。
esparは、高速化だけでなくセキュリティ向上も同時に達成していることを特徴としています。
Q. espar を導入することとCDNを導入することの違いはありますか?
サイト高速化にはCDNという選択肢があります。しかし、CDNを使いこなすことは非常に困難で、往々にして以下のようなトラブルが発生しがちです。
- 意図した通りにサイトが反映されない
- 削除した筈のページがまだ見えている
- 意図しないページが公開された
優秀なエンジニアを抱える上場会社ですらCDNの設定を誤って事故を起こした例もあります。(*)
高速化のみが要件でCDNを使いこなせる技術者がチーム内に在籍している場合、CDNの導入は適切な選択肢の1つです。espar の導入は不要である可能性が高いです。
CDNを使いこなせるかどうかの判断基準として、例えば、
HTTPレスポンスヘッダの Cache-control: や Expires: の役割や用途は何でしょうか?
という問いが考えられます。この質問の意味を説明できる方がチームに在籍しているかご確認下さい。もし不在ならCDNを扱うスキルを持ちあわせていないチームであると言えます。運用フェーズで前述のようなトラブルに遭遇した場合に、調査の糸口すら見つけられない状況になる可能性があります。
またCDNは、改ざん対策等のセキュリティ要件は基本的に満たさないことに留意して下さい。
Q. esparを導入することとWordPressの静的化プラグインを入れることとの違いはありますか?
WordPressのプラグインマーケットには、StaticPressやWP2Staticなどの静的化プラグインが存在しますが以下の点が課題となることがあります。
- 画像やCSSの取り漏れが発生する
- WordPress配下にないページの静的化ができない
- 問い合わせフォームを諦める必要がある
- PopularPostsやUltimateFAQなど動作しないプラグインがある
- オープンソースのため困った時のサポートを受けれない
また、セキュリティの観点から、プラグインが脆弱性を増大させてしまう点も無視できません。
- WordPressの人気プラグイン「LiteSpeed Cache」に重大な脆弱性があることが判明、数百万ものウェブサイトが乗っ取られる可能性も)
- WordPress用プラグインSiteGuard WP Pluginにおける変更したログインパスが漏えいする脆弱性
責任の所在が明らかでないプラグインを導入すればするほど、WordPressのシステムをインターネット上に公開するリスクが増すことを念頭におく必要があります。
esparは上記の課題や懸念を全て解決した上で静的化技術をサービスとしてご提供しています。これらの課題が発生しないと断定できる場合や、課題が発生した際にチーム内で調査・解決が可能な場合は、それらプラグインを御利用になることが有効な選択肢となりえます。
Q. 既に静的化プラグインやサービスを使っていますが静的化の所要時間が長くストレスを感じています。esparに切り替えるとどれぐらい速くなりますか?
大変恐縮ながら、「切り替えてみなければ分からない」というのが正直ベースの回答となります。ただし、espar には以下のような特徴があり、静的化所要時間にストレスを感じない・感じにくい作りになっています。これらを御勘案の上で御検討下さい。
- 高速処理が得意な言語(Go言語)を使った独自開発の静的化エンジン
- マルチタスクでの並行処理による高速静的化
- サーバ負荷を勘案したマルチタスク数・ウェイト処理の最適化機構
- サイトの一部分のみを静的化できる指定パスの静的化機能やテンプレートを使った静的化機能
また、既存プラグインやサービスでの所要時間と稼働中CMSサーバのIPアドレス(またはドメイン)をご教示頂く前提となりますが、espar による静的化を試行して所要時間を計測することも可能です。詳しくはお問い合わせ下さい。
Q. wgetなどのコマンドで静的化も可能ですがesparと何が違うのでしょうか?
wgetとの比較という意味では、esparの静的化エンジンは静的化クオリティとスピードが違います。例えば、wgetでは以下のような要素の取得に対応していません。
- html内のsvgタグ
- html5におけるdata属性に記載されたリソース
- CSS内の
background-url:url()
に記載された画像
esparではこれらの解析にも対応しています。また万が一、未対応要素が新たに発覚したとしても弊社がその対応を行って品質を担保します。つまり静的化エンジンを espar 導入サイトに合わせて個別に学習・設定させられることに特徴があります。
またesparの静的化エンジンは、並列処理が得意な言語を使って開発しているため、wgetを始めとする既存コマンド・ツールと比較してスピードに数倍・数十倍の差が開くこともあります。
Q. MovableTypeなど静的生成する仕組があるCMSでesparを導入する意味はありますか?
はい
確かに一部のCMSではあらかじめ静的化機能を備えています。しかし、例え静的化機能が備わっていても、同じサーバで管理と配信の役割を担う限り、悪意ある第三者攻撃を許す可能性があることは留意しておく必要があります。
2016年4月にはケータイキット for MobileType というプラグインの脆弱性によってサーバ上の任意のコマンドが実行される被害が発生しました(参考 : ケータイキット for Movable Type の脆弱性 (CVE-2016-1204) に関する注意喚起)
この事件が示すとおり、静的化機能を備えているから安心という訳ではありません。この種の被害を回避するためには、静的化したファイルを別サーバに転送し公開サーバとして応答させる必要があります。
なお、esparのサーバでは、
- https対応のための証明書取得や更新を無償で行っている
- HTTP/2プロトコルなど最新の高速化配信の仕組みを導入している
- その他、静的配信に特化したテクノロジ・機能を継続的に搭載
など、共通基盤ならではの特徴を多数備えていますので、既存のMovableTypeと連携することによってより良い静的化配信を実現できることになります。
esparは決して既存CMSの置き換えを意図したサービスではありません。既存CMSと連携して静的化によるセキュリティを理想的な形でアドオンすることを意図しています。