Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
DMMブックスにNewRelicを導入した話
Search
ono-hiroshi1
January 24, 2022
Technology
1.1k
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
DMMブックスにNewRelicを導入した話
ono-hiroshi1
January 24, 2022
More Decks by ono-hiroshi1
See All by ono-hiroshi1
ログ基盤をCloudWatchLogからNewRelic Logs + S3に変えたら 利便性も上がってコストも下がった話
onohiroshi1
1
4.6k
モダンとレガシーが混在するDMMブックスで培った SRE Practices
onohiroshi1
0
6.6k
60億円の損害を出した 「DMMブックス」 70%OFFキャンペーンでプラットフォームに何が起きていたか
onohiroshi1
8
49k
Other Decks in Technology
See All in Technology
Patterns in AI Driven Software Development
akosma
PRO
0
420
Jev の中身は50行で再現できる。でも本物との差はどこにあるのか
hisuzuya
0
270
AI秘書と毎日働くのはもう当たり前。開発以外の業務に足りない機能をどう埋める?
minorun365
PRO
4
2.1k
E2Eってつらくないですか?E2Eの管理コストを下げる手段とその実践
akaboshinit
6
2.9k
Content Mapper APIの応用例~CSS Modules、言語ファイル~
uhyo
2
470
Agent Loopを組み込んだ アンビエントなAI機能を実現する / Ambient AI fetures with Agent Loop
nekorush14
0
120
AIに任せられるFlutterコードベースを作る 〜仕様をコードで表し、ハーネスで守る〜
myohei
1
590
[FECONF-2026] 신대륙을 향한 카카오페이증권 프론트엔드 항해기 (이주승)
l1ghthouse
0
340
書き手が人でもAIでも正しくなる道、SREを埋め込んだDeveloper Platform / tech drivers day8
chmikata
4
870
20261031_IoTLT_vol140_kitazaki_v1.pdf
kitazaki
0
150
AIエージェント時代、Kaggleにどう取り組むか
takanao
2
450
LLMの知識とAIエージェント
happysamurai294
0
150
Featured
See All Featured
A brief & incomplete history of UX Design for the World Wide Web: 1989–2019
jct
2
550
The Organizational Zoo: Understanding Human Behavior Agility Through Metaphoric Constructive Conversations (based on the works of Arthur Shelley, Ph.D)
kimpetersen
PRO
0
520
Ecommerce SEO: The Keys for Success Now & Beyond - #SERPConf2024
aleyda
1
2.2k
Balancing Empowerment & Direction
lara
6
1.4k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
360
31k
How to make the Groovebox
asonas
2
2.5k
SEO for Brand Visibility & Recognition
aleyda
0
4.8k
Claude Code のすすめ
schroneko
67
230k
Side Projects
sachag
456
43k
Java REST API Framework Comparison - PWX 2021
mraible
34
9.8k
How to Align SEO within the Product Triangle To Get Buy-In & Support - #RIMC
aleyda
2
1.8k
Highjacked: Video Game Concept Design
rkendrick25
PRO
1
510
Transcript
© DMM.com DMMブックスに NewRelicを導入した効果 合同会社 DMM.com SRE部 小野 博志 2022/1/20
© DMM.com 自己紹介 2 小野 博志 / Ono Hiroshi 合同会社DMM.com
ITインフラ本部 SRE部 エンジニアリング マネージャー 2005年に新卒で中小独立系Sierに入社。Javaを使ったWeb系開発に従事。 2008年よりMSP(マネージド・サービス・プロバイダ)の業務に従事。アカウントSEから始まり、サービス企画や テクニカルディレクターを務める。エンタープライズの領域で大規模なコーポレートサイト、WebCMSを中心とし て担当していた。 2018年よりB2Cもやってみようかなって思って2020年にDMM.comに入社。DMMブックスやNewRelicの導 入推進を主に担当しています。 たまに山登りしてます
© DMM.com 最初にPRさせて下さい! 3
© DMM.com 話題のコミックや小説などを パソコンやスマホで 読めるプラットフォーム コミック、雑誌、小説、写真集等の電子書籍を配信しております。現在は 66万冊以上の作品を取り揃えており さまざまなジャンルの作品を提供しています。
© DMM.com 本題 5
© DMM.com 導入背景 6 • DMMブックスは20年以上の歴史を持つサービスで、段階的にモダンなアーキテクチャに変えていってはい ます。ただし、まだレガシーなアーキテクチャが一部残るシステムになっています。 • モニタリングツールはDatadogを利用していました。インフラストラクチャ(AWSインテグレーション含む)は活 用できていましたが、APMはPHPフレームワークが対応しておらず取得できる情報は非常に限定的で活用
できていませんでした。 • またログ周りが非常に高額になっており、一部ログを破棄していてもコストがかなりかさんでおりプラット フォーム全体に対するコストバランスに課題がありました
© DMM.com DMMにおけるNewRelicの導入状況 7 • 全社的には2年前にDatadogの導入を推進していたこともあり、Datadogの利用が多めです • NewRelic One の登場で改めて検証しなおし、DMMブックス含めDMM動画、オンラインサロンなどい
くつかのサービスで利用してもらうようになっています • (当時ではないが)最近は3ヶ月で1〜2件ぐらいのペースでプロダクトに対して部分的または全面的に 導入してもらっていました。
© DMM.com APMの導入 Step.1 8
© DMM.com AWSの制約でAPMを入れるもCPU高負荷に・・ 9 • PHP Agent (諸事情ありバージョン古め) を利用している •
ステージングでは気づかず、本番投入するとピーク時にレスポンスタイムが2〜3倍悪化することに・・・ • newrelic.transaction_tracer.detail = 0 (トレースを限定的にする)を試してみたが状況は変わらず だった。newrelic.transaction_tracer.enabled = false (欲しい情報が出なくなったので見送った) • 調べてみると時刻周りのクロックソースがXenの場合に問題がありそうだと分かった
© DMM.com AWSサポートに問い合わせるも 10 • Fargateのクロックソースに何が選択されるかは内部仕様で公開されてないとのこと • ただガチャっぽく、何度か試すと問題ないクロックソース(kvm-clock)が選ばれることがある 公式からはこれ以上情報貰えそうにないので後は個別検証した •
Fargate PV を変更(1.3 -> 1.4など) サービス作り直すレベルの変更で変わるらしく、一度問題ないク ロックソースになると固定になるような動きになっていた。 • DMMブックスはこれで問題が解消したので再度本番投入した。以後数百回デプロイしているが問題は 再発したことはない
© DMM.com 導入した結果 (1) 11 • 負荷の高いSQLが簡単に見つかるようになった。 この時点ではAWSインテグレーションは Datadog使っています
© DMM.com 導入した結果 (2) 12 • デプロイメントマーカーを活用することで、デプロイ単位でのレスポンスタイムの影響がわかりやすくな り、原因調査がしやすくなった
© DMM.com 導入した結果 (3) 13 • もちろんトレース・スパンを分析することで非効率な処理を見直すこともできました。 この時点ではAWSインテグレーションは Datadog使っています
© DMM.com 全体導入 Step.2 14
© DMM.com 複数チームがNewRelicで分析できるように 15 インフラストラクチャ、APMが一つにつながった事から派生して最近ではモバイル(まずは Android)も導入することに。 様々なチームが一つのツール上で横断的に調査ができるようになり、開発スピードの向上につながった
© DMM.com 「サイトが遅い」を定量的に分析できるように 16 ユーザ体感でサイトが遅いというモニタリングを NewRelicブラウザの機能の一つ、CoreWebVitalsとして取得できるようになり、Metric Aggregatorと組み合わせて長期トレンドに変換し、改善指標として複数のチームでモニタリングしていくことに
© DMM.com SRE部が横断的に見ることでナレッジ展開 17 DMMブックス固有の話ではないですが、各プロダクトの NewRelicアカウントを横断的にみることで各プロダクトでよい取り組み、ダッ シュボードなど別のプロダクトへ取り込むことができ全体的な最適化への取り組みが可能になった。
© DMM.com 月額コストの削減に繋がった 18 Datadogでは月額コストが高かった兼ね合いで一部ログを捨てていた。その結果ピーク時にログが欠損するという課題があった。 NewRelicではすべてのログを取りつつも大きなコスト削減になり、大きな効果が得られました。
© DMM.com 監視テンプレート(Terraform)の作成 19 現在ブラッシュアップ中ではあるが、よくある監視内容(例えば CPU使用率監視やデータベースの死活監視など)は SRE部が提供する NewRelic Alertの監視テンプレートを利用すれば各サービス単位で最低限の監視はすぐに導入できるように。
© DMM.com まとめ 20
© DMM.com 良かったこと一覧(他にもありますが) 21 • APMできちんとアプリケーションがモニタリングできるようになり改善活動が捗った • コスト削減になり浮いたコストで新しいモニタリングができるように • CoreWebVitalsをモニタリングするようになり、ユーザ目線の遅いが定量的に図れるようになりました
• SREやネイティブなど様々なチームが共通のモニタリングツールを見るようになり、障害調査や性能情 報などを共有しやすくなりました
© DMM.com 宣伝 22 https://book.dmm.com/coupons/