BliBliは、インドネシアで急成長中のEコマースサービスです。2011年の設立以来、現地市場をターゲットとした商品やサービスを提供し、優れた顧客体験を提供する技術に投資して成長を続けています。

顧客体験の継続的な改善は、BliBliのIT部門にとって最優先事項の一つです。「BliBliは顧客満足度を重視しています」と、主任リード・パフォーマンス・エンジニアであるWilliam Chewardyは述べています。「BliBliはすべてのお客様に、安全で効率的な満足度の高いショッピング体験を目指しています。その実現のためには、ビジネスの成長のペースに合わせて拡張できる安定したショッピング環境の提供が不可欠です。

その目的を達成するために、BliBliは最新のITベストプラクティスとテクノロジーを採用してきました。DockerとKubernetesを使用したコンテナアプローチを採用し、ITインフラストラクチャー全体をGoogle Cloud Platform(GCP)で構築しています。

マイクロサービス環境下で不可欠な可観測性(オブザーバビリティ)

新しいITプラクティスの採用は、多くの課題を提示したとChewardy氏は言います。「2015年にモノリシックなアーキテクチャからマイクロサービスをベースにしたアーキテクチャに移行し、現在では約350のマイクロサービスからなる複雑な環境を作り出しています。これだけ多くのサービスをサポートするためには、可観測性(オブザーバビリティ)が非常に重要です。ウェブサイトのパフォーマンスやトランザクションシステムに支障をきたすようなインシデントが発生した場合、根本原因を迅速に特定しなければいけません。顧客体験の良し悪しはコンバージョン率にも影響するため、アプリケーションのパフォーマンスを追跡する指標は当社にとって非常に重要です。

BliBliの可観測性はNew Relicで支えられています。同社では、New Relic Oneプラットフォームを構成するあらゆる製品を採用し、開発環境、顧客向けWebサイト、Eコマース・アプリケーションなど、すべてのシステムをモニタリングしています。New Relic Oneは、すべてのテレメトリーデータを集約してくれるため、アプリケーションやサービスを構成する複雑なエコシステム全体で発生しているすべての事象を包括的かつ分かりやすく表現してくれます。具体的には、増加する観測データのコレクション間の関連性を迅速に特定することで、問題が顕在化する前に問題を特定し、能動的にアクションをすることができます。

New Relicを導入する前、BliBliはPrometheusをイベントモニタリングとアラートのために使用していましたが、収集したデータの幅がNew Relicほど包括的ではなく、使い勝手もよくありませんでした。

Chewardy氏によると、New RelicはBliBli内の複数の業務分野にポジティブな影響を与えています。

ソフトウェア開発において、New Relicは、IT管理者の最大の関心事の1つである、顧客体験を向上させるための新機能や機能を最も早い方法で展開することをサポートします。「ソフトウェア開発のペースが速いため、すべてのアプリケーションのパフォーマンスを追跡し、期待通りの高いパフォーマンスと質の高い顧客体験の提供ができているのかを把握することが困難です」とChewardy氏は述べています。「New Relicと当社のDockerおよびKubernetes環境とのシームレスな統合により、ソフトウェア開発がより効率的かつ効果的になる詳細な情報を収集することができています。」 

「たとえば、多くのサービスに影響する大規模なデプロイメントの場合、デプロイ後のアプリケーションの動作を検証するのは困難です。さまざまな負荷をシミュレーションして結果を分析するのに何時間もかかることもあります。しかしNew Relicを使えば、デプロイメントを簡単に記録して監視することができます。デプロイメントマーカーを使用することで、重要なパフォーマンス指標とデプロイメントを簡単に関連付けることができ、1時間以内にデプロイメントのパフォーマンスを検証することができます。」 

オンプレミス環境からGCPへの移行の際も、BliBliはNew Relicを使用して各サービスの負荷テストを実施し、移行後のサービスの可用性やパフォーマンスの低下を特定しました。「New Relicが提供する詳細なパフォーマンスデータにより、移行プロセスの分析や進捗状況の確認が容易になりました」とChewardy氏は述べています。移行後、BliBliはNew Relicを使用してクラウドリソースの使用量を最適化し、コストを管理しています。Chewardy氏によると、2ヶ月後にはコストが約30%削減されたとのことです。

「New Relicが提供する詳細なパフォーマンスデータにより、クラウド移行プロセスの分析や進捗状況の確認が容易になりました」

William Chewardy Principal Lead Performance Engineer, BliBli

エンドツーエンドの可観測性により企業利益に貢献

New RelicはBliBliの売上とITプロセスを連動させる上で重要な役割を果たしています。「当社では、社内および顧客の両方の観点から、業務のあらゆる側面に対してサービスレベル目標(SLO)を設定しています」とChewardy氏は述べています。たとえば、ウェブページのロード時間、特定の機能の使用回数、カート放棄(カゴ落ち)の頻度、Eコマースサイトの新機能の利用率などが挙げられます。 New Relicはメトリクスの閾値を監視し、閾値を超えた場合にはIT管理者へ通知します。IT管理者はNew Relicのデータを利用して問題の原因を診断することができます。

Chewardy氏は、可用性とパフォーマンスの向上にNew Relicが重要な役割を果たした具体的な例を挙げています。「当社の重要なバックエンドサービスの1つがダウンしました。その際、New Relicによってメモリの問題を特定し、問題が発生した時点でどのようなソフトウェアの変更が行われていたのかを遡って確認することができました。私たちは以前のコードに戻し、New Relicを使って変更をシミュレーションし、修正すべき点を特定しました。同時に、New Relicがコードのパフォーマンスを最適化する方法も提案してくれたので、2倍のメリットを得ることができました。」

「New RelicはBliBliの複雑なソフトウェア環境をあらゆる側面から、シングルプラットフォームでモニタリングすることができます。」

William Chewardy Principal Lead Performance Engineer, BliBli

新サービスの提供を支えたNew Relic

New Relicは、BliBliチームにBliBli Walletと呼ばれる複雑な新しい決済サービスを導入する自信を与えました。「これは、15の異なるサービスで構成されており、複数の依存関係を持ち、かつそのすべてが新しいものだったため、非常に挑戦的なプロダクトでした。」とChewardy氏は述べています。New Relicはそのすべての依存関係を追跡するのに役立ちました。これにより、サービスがどのように機能しているのか、どこに注目すべきなのかを非常に簡単に把握することができました。

New Relicのオブザーバビリティプラットフォームは、PEDAS(「パフォーマンス・ダッシュボード」の略)と呼ばれる自作アプリケーションの成功にも大きな役割を果たしています。PEDASは同社の350のマイクロサービスのパフォーマンスを監視する統合プラットフォームです。 New Relicが提供するエンドツーエンドの可視性とモニタリングにより、エンジニアは潜在的な問題を発見するためのアラートを設定することができます。

PEDASはソフトウェアエンジニアだけでなく、顧客が特定の機能をどのように使用しているかを知りたいプロダクトマネージャーや、顧客体験のあらゆる側面を詳細に追跡したい品質管理チームにも利用されています。

Chewardy氏は、New Relicが提供する3つの主なメリットを以下のようにまとめています:

  • シングルパネルで全てを見通せる:New Relicは、単一のプラットフォーム上でソフトウェア環境のあらゆる側面を追跡、可視化します。複数の監視ツールを統合したり、重要なコンポーネントを見落としたりする心配はありません。
  • 使いやすい:New Relicのレポートは非常にわかりやすく、問題が発生したときにはいつでも、何がどこにあるのかが非常に明確になります。そのため、解決までの時間が短縮され、顧客体験の低下を最小限に抑えることができます。
  • タイムリー:New Relicを使えば、主要なパフォーマンス指標をほぼリアルタイムでモニタリングすることができます。問題があるかどうかを知るために、何日も何週間も待つ必要はありません。