【イベントレポート】会員ポータルからヘッドレスCMSまで!柔軟なサイト構築とオブザーバビリティの実現
先日、New Relic株式会社の清水さんをお招きして『会員ポータルからヘッドレスCMSまで!柔軟なサイト構築とオブザーバビリティの実現』ウェビナーを開催しました。
Acquia Cloud Platformによる柔軟なサイト構築方法、オブザーバビリティの重要性とNew Relic APM活用のポイント、さらにサイト分析を実際にどのように行うのかをデモを通じて分かりやすく解説いただきました。
本記事では、ウェビナー内容についてレポートしたいと思います。なお、ウェビナー内容は動画でもご視聴いただけます。
アジェンダ
柔軟なサイト構築を叶える「Acquia Cloud Platform」
登壇者:アクイアジャパン合同会社 望月政夫
資料:PDF形式
Drupalとは、2001年に誕生した、PHP製のオープンソースのコンテンツ管理システム(CMS)です。
CMSと言うと日本ではWordPressが有名ですが、DrupalでもWordPressのようにブログサイトを構築することができます。さらに、ブログサイトだけではなく、会社のコーポレートサイト、多数のユーザー管理が必要になる会員ポータルサイト等の幅広い要件で実績があるソフトウェアです。
アクイアでは、Drupalを適切にホスティングするための「Acquia Cloud Platform」を提供し、お客様がDrupalサイトを安全に構築、運用する支援を行っています。
最近のCMS界隈ですと、「ヘッドレスCMS」と呼ばれるような、CMSがコンテンツを吐き出す際にHTMLだけではなくWeb APIを介してさまざまなチャネルに配信する技術トレンドがあります。フロントエンドとバッグエンドが結合した従来型のCMSと、ヘッドレスCMSのいいとこ取りができるのがDrupalです。従来型CMSとしてWebサイトを運用しながら、スマホアプリやスマートウォッチなどの媒体にはWeb API経由でコンテンツを配信する、といったハイブリッドなアプローチを採用できます。
Drupalは、Webフレームワークのようにカスタムコードを追加して機能を拡張することが可能です。お客様の要望に対して柔軟に対応できるのは良い点ではありますが、作り込んだコードの品質担保は自分たちで責任を持って行っていく必要があります。そこで役に立つのが「New Relic」です。
サイトのオブザーバビリティを高めるNew Relic活用術
登壇者:New Relic株式会社 清水毅
資料:PDF形式
現代のWebサイトは便利な反面、より複雑の一途を辿っています。外部システムとの連携、ヘッドレスCMSによるフロントエンドとバッグエンドの分離によって複雑に絡み合ったシステムで何かトラブルがあったときに、どこで何が発生しているのかを追うことがログだけでは難しくなっています。そこで登場したのが「オブザーバビリティ」というコンセプトです。
オブザーバビリティプラットフォームである「New Relic」によって、インフラからアプリケーションまで全てのレイヤを通じて問題を素早く特定し、ユーザーに本当の価値を届けることに注力することができます。
Acquia Cloud Platform上で構築される、モダンサイト・オブザーバビリティで見るべき観点は、サービスレベル、フロントエンド、バックエンドの3点です。
1. サービスレベル ー Webサイトが使いたい時に使える状態なのか?
- New Relic APMの機能の一部であるSLM(Service Level Management)を使用して、フロントエンド、バックエンドをひっくるめたアプリケーション全体や特定ページ、モジュール単体などのサービスレベルをリアルタイムに可視化できます。
- プロアクティブに良い顧客体験を提供するためにAIOps & Lookoutを活用してアプリケーションの未知の振る舞いや傾向を自動検知できます。
2. フロントエンド ー ブラウザ上でのJSエラーや描画遅延などのユーザー体験はどうか?
- New Relic Browserの機能群を活用して、描画時間やJSエラーを検知したり、アクセス元分析や利用ブラウザの分析ができます。
- いくつか用意されているサンプルダッシュボードから、特定ページごとのBrowser上での描画時間をリアルタイムに可視化したり、どのページにいつアクセスが集中しているのか、遅いのか、エラーが多いのかを分析できます。
- ※無料枠であるBrowser Liteでは閲覧可能1日分のみ(かつ、その他機能制限あり)なのでご留意ください。
3. バックエンド ー カスタムコードやAPI、SQLの遅延やエラーは大丈夫か?
- New Relic APMの機能群を活用して、アプリケーションの稼働状況をユーザー視点で監視することで、ユーザーに影響を与える可能性のある問題を解決したり、パフォーマンスを改善に繋げることができます。
- New Relicが長年培ってきた経験をノウハウに基づいたシステムの状態把握に必要なビューとして、サービスを構成する要素をマップ化する Service map や個別トランザクションの詳細を分析する Transactions、データベース視点からパフォーマンスを確認する Database などの切り口があります。
- Drupalに特化した分析メニューが用意されており、Views, Hooks, Modulesのカテゴリから分析が可能です。
- Custom Attribute機能を活用することで、アプリケーションのユーザーIDなどのキーをPHPコードから簡単にNew Relicに送信し分析することが可能です。Custom AttributeをNew Relicに送信するPHP関数
newrelic_add_custom_parameter()
は、New Relic PHPエージェントが導入されている環境で利用できます。
次の4つのライセンスがAcquia Cloud Platformユーザー向けに解放されています。New Relic有償ライセンスでは全機能利用可能ですので、Browser ProやSynthetics Pro、その他フル機能(Logs, Infrastructure, etc)を利用したい場合はNew Relicの有償ライセンスをぜひご検討ください。
- New Relic APM (Pro Licence)
- New Relic Browser (Lite License)
- New Relic Synthetics (Lite License)
- New Relic One Dashboards (Free)
Drupal / New Relic連携のベストプラクティス
登壇者:アクイアジャパン合同会社 望月政夫
資料:PDF形式 (p.20〜)
Acquia Cloud Platformユーザーの方は、Acquia Cloud Platform管理画面からボタンクリックですぐにNew Relicにデータが送信され、使い始めることができます。これだけでも十分便利ですが、さらに活用の幅を広げることができる追加の設定をご紹介します。
- Acquia Cloud Hooksは、コードデプロイ後をトリガーに任意のシェルスクリプトを実行できます。この機能を使用してNew RelicのDeploymentをコードデプロイ時に自動的に作成できます。サンプルコードですぐに設定できます。
- 有志のDrupalコントリビューターが作成したNew Relicモジュールを使用することで、より細かな設定をDrupal管理画面から行えるようになります。
さいごに
オブザーバビリティプラットフォームが求められている理由、PaaS上で構築されたDrupalアプリケーションにおけるパフォーマンスの勘所、そしてNew Relicの豊富な機能群をどう活用すれば良いのかを分かりやすくご紹介いただきました。ぜひ今日からお役立てください。