aiCacheのユニークな機能をまとめます。
- HTTPSターミネーション
- モバイル端末対応(リダイレクト、リクエスト書き換え・TTL変更など)
- GSLB対応(Dyn.com連携)
- レスポンスによるキャッシュ削除
- セッション毎のキャッシュ管理(ログイン中もキャッシュ管理可能)
- POSTリクエストのキャッシング
- 指定URLのプリフェッチ
特に「レスポンスによるキャッシュ削除」と「セッション毎のキャッシュ管理」は良い機能です。
○レスポンスによるキャッシュ削除
掲示板のようなウェブサイトでは、各ページはできるだけパフォーマンスを上げるためにキャッシュする設定にしてしまいますが、コメント投稿があったりした場合には、すぐには反映されず待つ必要があります。コメント投稿者が混乱する可能性もあり、このような場合はできればすぐに反映させたいところです。
aiCacheでは、ある処理をしたときに指定ページのキャッシュを簡単に削除することができます。これは、アプリケーションのレスポンスヘッダーに下記をを入れるだけです。
X-ExpireURL: /path/to/expire/page
これでaiCacheがキャッシュを削除してくれるので、これ以降/path/to/expire/pageへアクセスすると最新のページが表示されキャッシュされることになります。さらに複数のヘッダーを返せば、まとめてキャッシュを削除することもできます。
アプリケーションのわずかな変更で動的なサイトも簡単にパフォーマンスを上げることができるのはすばらしいです。
○セッション毎のキャッシュ管理
ログインするようなサイトの場合、ユーザー毎にページ内容が違うためページ全体をキャッシュさせることは通常しません。しかし、aiCacheではセッションIDを判断するCookieを設定しておくことで個別セッションのキャッシュ管理が可能になります。
もちろんCookieに加えて指定URLからのセッション対応開始・終了などの設定も可能なので、細かなキャッシュコントロールを実現でき、ユーザー毎のページを1分間だけキャッシュするなどということもできます。
最後にCloudFrontと簡単な比較をすると下記のようになります。(キャッシュ管理の機能を中心にまとめてます)。
aiCache/CloudFront比較 : 比較表
CloudFront | aiCache | |
配信性能 | -非公開(限度を上げることは可能) | ○最大性能は250,000RPS |
グローバル対応 | ○全世界19カ所のエッジサーバー | △AWSの5リージョン、または別データセンターで自前で準備することも可能 |
構成の容易さ | ○S3との連携またはオリジンサーバーの指定 | ○仮想サーバー起動後オリジンサーバー指定するだけ |
キャッシュコントロール | △キャッシュ期限指定が最短1時間まで全体設定と個別ファイル指定のみ | ○ファイルタイプやURL正規表現による指定が可能オリジンサーバー複数指定プログラマブルなルール定義レスポンスによるキャッシュ削除セッション毎のキャッシュ管理 |
価格(東京) | ○最初の10TB/月 $0.201/GB次の40TB/月 $0.148/GB次の100TB/月 $0.127/GB | △Large利用料 +$0.40/時間データ転送料 +$0.19/GB |
その他機能 | △API動画ストリーミング配信(Flash Media Server) | ○コンテンツ圧縮地理的なキャッシュ/オリジンサーバーの分散 |