1stdibs は、高級品を専門とするオンラインマーケットプレイスの世界的リーダーです。デザインや美術品、コレクター向け商品を専門とする2千人以上のディーラーが世界各国から選りすぐった魅力的なアイテムを、いつでもどこでも手に入れることができる eコマースサイトです。1stdibs の2014年の流通取引総額は前年を20%上回り、11億ドルに達しました。
1stdibs.com
業界 : オンライン販売
本拠地 : ニューヨーク州ニューヨーク
利用開始 : 2014年
主な利用機能
カスタム VCL
Stale-While-Revalidate 機能
Stale-If-Error 機能
リアルタイムログストリーミング
1stdibs のグローバルな顧客ベースにとって、高速かつ信頼性の高いサイトが不可欠です。そこで、1stdibs は Fastly を選びました。それまでにも同社はさまざまなコンテンツ配信ソリューションを試してきましたが、従来の CDN では進化し続ける最新の脅威に対して効果的に対処することができませんでした。1stdibs は、インターネットの目まぐるしい変化に対応でき、今後の攻撃に耐えられる高度なセキュリティ機能を備え、かつきめ細かいコントロールが可能な CDN を求めていました。
「Fastly のテクノロジーにより、コントロール性を犠牲にすることなく、他のサービスよりも効果的に攻撃に対処することができます。Fastly のおかげで、今後攻撃が発生してもサービスに影響が及ぶ心配がありません」
DDoS 攻撃によって一時的なサービス停止を経験した 1stdibs は、Fastly を採用することに決めました。以前の CDN では、既知の悪意のある IP アドレスであったにもかかわらず、攻撃をブロックするのに2時間以上かかりました。Fastly では、それまでオリジンで実行されていたロジックをエッジで実行できます。これにより、レイヤー3や4の低いネットワーク層への攻撃はもちろん、複雑なレイヤー7やアプリケーション層への攻撃もブロックすることができます。HTTP リクエスト (ヘッダー、Cookie、リクエストパス) を完全に分析し、フィルタリングをよりスケーラブルなエッジまたはキャッシュレイヤーにプッシュしてオリジンを保護できます。
攻撃者は攻撃中にメソッドを変更することがよくあるため、新しいテクニックに迅速に対応できる DDoS 攻撃対策が必要です。このような場合に、Webサイト、API、モバイルアプリケーションなどの動的コンテンツ向けにデザインされた最先端の Web アクセラレーターである Varnish と Varnish Configuration Language (VCL) が力を発揮します。1stdibs は VCL を更新することで新たな種類の攻撃をブロックし、わずか数秒で Fastly ネットワーク全体にアップデートをデプロイすることができます。
Fastly を採用する以前から、1stdibs はすでに Varnish を使用していました。Fastly は Varnish をベースに構築されているため、1stdibs は Fastly の UI または API を使用してカスタム VCL を作成およびデプロイし、CDN サービスを完全にカスタマイズできます。同社はカスタム設定を使用し、オリジンではなくエッジでトランスポートレイヤーセキュリティ (TLS) を経由して接続されるようトラフィックを誘導しています。これにより、エンドユーザーのパフォーマンスが向上し、オリジンへのリクエストが削減されます。
「Fastly と他の CDN の大きな違いは、Fastly はコントロールの効かないブラックボックスではないということです。Fastly は私たちのインフラストラクチャの一部として機能しています。Fastly を利用することは、単に Varnish ノードとして機能するデータセンターを世界中で稼働させるようなものです。Fastly のカスタム VCL を使用することで、Varnish のパワーと技術を利用しながら、最高レベルの柔軟性とコントロール性が得られます」
CDN サーバーがエッジノードまたは Origin Shield として機能しているかによって、キャッシュヘッダーをカスタム VCL で調整することも可能です。CDN サーバーがエッジノードとして機能している場合、コンテンツがユーザーに配信される前に s-maxage を削除することで、別のネットワークプロキシがコンテンツの決定と競合するのを回避できます。
「1stdibs のコンテンツの多くは長期間キャッシュ可能ですが、コンテンツが更新された場合に新しい情報を素早く配信する必要があります。そこで Fastly に対して s-maxage を1か月に設定し、ブラウザに対しては max-age を1分に設定しました。コンテンツが新しく更新された場合、Fastly の Instant Purge 機能を使って古いキャッシュを削除できます」
1stdibs は重要なイベントの最中に IRC を通じて Fastly のサポートチームからリアルタイムのフィードバックとインサイトを得ることができます。同社は、サイトの大部分を HTTPS にリダイレクトすることに決めた際、VCL への変更をローカルでテストし、変更のデプロイをクラウドのライブ環境で行うことにしました。その間、Fastly チームは IRC チャンネルを通じて、設定の変更を最も効果的にテストし、修正する方法についてアドバイスしました。
「問題がほとんど無いのでサポートサービスを利用する機会は滅多にありませんが、Fastly のチームはいつもプロアクティブにサポートしてくれます。中でも、IRC チャンネルは非常に便利です。さまざまな変更を実行した際、当社の運用チームのリーダーは IRC チャンネルを通じて Fastly のチームからすぐにアドバイスを得ることができました」
可視性の向上
Fastly のストリーミングログを利用することで、1stdibs はサイトのパフォーマンスをモニタリングし、問題の発生と同時に迅速にトラブ ルシューティングを行うことができます。バッチでストリーミングを行う従来の CDN とは異なり、Fastly のログはリアルタイムでストリーミングされます。その上、ログを LaaS プロバイダーや S3 バケット、分析ツールなど、ほぼすべての主要なログエンドポイントにストリーミングすることが可能です。
「当社のオリジンのログを確認する前に、Fastly のログを確認することがよくあります。以前のリリースでエッジケースが生じ、大量のサービスエラーが発生したことがありました。オフィスに設置した大きな Fastly ダッシュボードでログを確認したところ、エラーパターンの大きな変化に気づきました。Fastly のログを視覚化することで、バグを特定してすぐに修正できました」
高級品を専門とするオンラインマーケットプレイスとして、1stdibs は位置情報に基づいてパーソナライズされたエクスペリエンスを可能にする、スケーラブルなソリューションを求めていました。同社はできるだけ多くのコンテンツをキャッシュしながら、動的コンテンツを AJAX 経由で処理しています。先日、現地通貨を表示する機能をサイトに追加したところ、予測不可能に変化するコンテンツに対応しなければならなくなりました。そこで 1stdibs は、サイトをキャッシュすることで得られるパフォーマンスやインフラストラクチャのメリットを失うことなく、必要に応じて素早くコンテンツを更新できるソリューションを探し求めました。
「ユーザーがある商品を別の通貨で表示する場合も、商品ページ全体をキャッシュしています。為替レートは動的コンテンツなので、キャッシュされたページを配信した後、AJAX リクエストがオリジンから最新の価格情報を取得し、動的に価格表示をアップデートします。これにより、失効済みデータを配信することなく、キャッシュのメリットを活かして高速にページを配信できます」
1stdibs はサイトのキャッシュとルーティングを Fastly を通して行い、Fastly の Origin Shield 機能を利用することで、リクエストが急増してもエンドユーザー側のパフォーマンスに影響が出ることがなくなったのです。その結果、オリジンの容量を増やすことなくビジネスの成長に合わせてスケールできるようになりました。
「ある時、クローラーの異常な行動によってトラフィックが10倍に増加したことがありました。Fastly が不正リクエストをすべてブロックしてくれたおかげで、トラフィックがオリジンに影響を及ぼすことはありませんでした。何よりも、お客様側のパフォーマンスに影響がなかったのが幸いでした。Fastly の優 れたスケーラビリティが、これからも私たちのビジネスの成長を後押ししてくれることを信じています」
「Fastly はインフラストラクチャについての認識を変えてくれました。Fastly は 1stdibs のスタックの延長として機能するため、ログストリーミングや設定の即時変更など、他の CDN には無いメリットがあります」
Ross Paul 氏
CTO