ChatWork 株式会社は、自社開発のビジネスチャットツール「チャットワーク」を通じて、多くの企業に新しい働き方を提案しています。導入企業は185,000社を超え(2018年7月末日時点)、建設業やメーカーなどを中心に幅広い業種で活用され、組織内の円滑な情報共有やコミュニケーションの活性化などに役立てられています。 

チャットワークは日本で初めてのビジネスチャットツールです。ChatWork 株式会社がチャットワーク事業をスタートしたのは、日本にまだビジネスチャットの市場がなかった7年前のことでした。その後、市場が拡大し、さまざまな競合が現れる中で、同社は順調に成長を続けています。チャットワークが多くの企業に支持される理由は、その使いやすさです。勤怠報告といった社内コミュニケーションはもちろんのこと、他企業との社外コミュニケーションにもすぐに活用できるところが、他にはない強みです。チャットワークは開発当初から社外とのやりとりを重視してサービスを提供してきました。チャット機能だけではなく、タスク管理、ファイル共有などの機能も兼ね備えているため、チームメンバー間での仕事の進捗管理や、スケジュール管理にも利用されています。このように、顧客の業務の中枢を担うツールとなっているため、常に安定したサービス提供を行う必要があります。また何かシステム上の問題が起こった際には、即座の対応が求められます。

チャットワークのシステム環境

現在、新旧の環境が存在しています。旧環境では、AWSのEC2上で、モノリシックなPHP のアプリケーションが運用されています。新環境では、主にScalaを利用したマイクロサービスがコンテナ上で運用されており、順次、旧環境から新環境に移行されています。

問題解決における課題

New Relic 導入以前は、自社製ツールでサーバー監視を行いながら、顧客からの障害連絡を手掛りに問題解決がなされていました。しかし、顧客からの情報だけでは原因が即座に把握できず、対応に多大な時間と労力がかかっていました。問題が起きていることに気付かない、そして、問題の把握や切り分けが困難であることが当時の課題でした。これらの課題解決を期待してNew Relic が導入されました。

問題解決においてNew Relic が果たした役割「問題の可視化」

New Relicを導入してまず変わったこととして、以前はサーバーの問題はサーバー担当者だけが調査をしていましたが、New Relicによって、誰にでも状況や問題が見えるようになりました。課題の一つであった問題検出についても、New Relicの画面を見るだけで状況をすぐに把握することができるため、プロアクティブに問題を検出することができるようになりました。その結果として、New Relicがカスタマーエクスペリエンスの向上にも大きく貢献するようになりました。さらには、作業が効率化したことでサーバー台数も削減でき、コスト削減にも繋がったのです。

New Relicによる「見える化」は、カスタマーエクスペリエンス向上およびコスト削減という素晴らしいベネフィットをもたらしてくれています。

尾崎耕多氏 ChatWork株式会社開発者

もう一つの課題であった問題の把握や切り分けについても、New Relicによるアプリケーションの可視化によって解消されました。切り分けた後に問題を再現できる、そのような情報をきちんと確認できることで、開発者の業務効率向上にも役立っています。 

New Relic APMは、問題の可視化と早期対応・迅速な対応を可能にします。朝のピークタイムにおけるパフォーマンス、毎日行われているリリース前後のパフォーマンス、更にはエラーの詳細な内容も可視化、比較することができます。

New Relic導入がもたらすメリット

New Relicは、エージェントをインストールするだけで簡単に導入できるため、テストから本番まで全ての環境に導入されています。

チャットワークのスループット量は過去1年間でほぼ倍増していますが、ピークタイムのサーバー台数には変更がありません。これは、New Relic を活用したパフォーマンス最適化の結果として最も分かりやすい例です。2013年にNew Relicが導入されて以来、問題の早期解決ができるようになったので、数年前にユーザー数が急激に増加した際も、サービスダウンの頻度を大幅に下げることができました。

もはやNew Relicなしでは開発運用を考えられず、New RelicがChatWorkに欠かせないサービスとなっていることは間違いありません。

尾崎耕多氏  ChatWork株式会社開発者

今後の予定

今後は、New Relicでマイクロサービスを可視化する、特にcross transaction tracesの利用が検討されています。アラート条件を簡単に作成することができるDynamic Baseline Alertsや、機械学習を通じてアプリやシステム環境の変化をすばやく察知して提示するNew Relic Radarの機能にも重要性が見出されています。