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
m3.comを支える巨神の話 / atlas-in-m3
Search
progrhyme
May 22, 2018
Technology
2.5k
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
m3.comを支える巨神の話 / atlas-in-m3
Healthtech Meetup #1で行ったLT資料です。
progrhyme
May 22, 2018
More Decks by progrhyme
See All by progrhyme
shelp - brief introduction
progrhyme
0
90
実践RDBMS〜PostgreSQL編〜
progrhyme
7
130k
Other Decks in Technology
See All in Technology
推論基盤と Scale-Up Interconnect の現状と制約から俯瞰する技術動向
markunet
2
830
AWS構成から考えるWebセキュリティ ― WordPressの構築経験から考える公開範囲と更新運用【JAWS FESTA 2026 in AKITA】
cscengineer
PRO
1
320
増え続けるプロダクトの品質をどう担保するか。ProductSpecとTypeScriptによる取り組み
joere
3
710
リアクションエンジニア ― 小さなリアクションから、話しかけやすい組織をつくる ―
ryuguyana
1
130
業務でAWSをあまり使っていない私が、AWSへのモチベを保つ方法
smt7174
0
170
Sinatra on PicoRuby ローカルでセルフホスト
bash0c7
0
110
AI時代のエンジニアの情報発信〜個人の発信を組織の力に変える〜
ryo_kawamata
1
7.4k
視野はAIに、視座は人に / ai-for-breadth-humans-for-perspective
nkzn
6
3.2k
re:Invent の去年のスケジュールを公開します!
miu_crescent
PRO
0
310
Kiro Crew の Bot (続く役目を任せる窓口) | 目指せ Kiro マスター 12
inariku
PRO
2
280
AIコーディングはじめました
miso
0
150
Copilot Coworkで「みのるん式」やってみた
minorun365
PRO
2
1.6k
Featured
See All Featured
My Coaching Mixtape
mlcsv
0
380
Site-Speed That Sticks
csswizardry
13
1.6k
Mobile First: as difficult as doing things right
swwweet
225
10k
Context Engineering - Making Every Token Count
addyosmani
9
1.3k
Have SEOs Ruined the Internet? - User Awareness of SEO in 2025
akashhashmi
0
540
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
47
8.4k
The Straight Up "How To Draw Better" Workshop
denniskardys
239
140k
Applied NLP in the Age of Generative AI
inesmontani
PRO
4
2.6k
How to Ace a Technical Interview
jacobian
280
24k
So, you think you're a good person
axbom
PRO
2
2.3k
AI Search: Where Are We & What Can We Do About It?
aleyda
0
8.2k
How To Speak Unicorn (iThemes Webinar)
marktimemedia
1
630
Transcript
m3.comを支える巨神の話 2018/5/22 Healthtech Meetup #1 @progrhyme 1
自己紹介 ➢ @progrhyme ◦ https://github.com/progrhyme ◦ https://twitter.com/progrhyme ➢ 職歴 ◦
〜2017 Oct. @DeNA ◦ 〜現在 @M3 ➢ 担当: インフラ 2
m3.com : https://www.m3.com 3 日本最大級の医師プラットフォーム
会員トップページ(ログイン後LP) 4
会員トップページ(ログイン後LP) 5 ヘッダー メガメニュー CA RHS ハイライト イベント枠 コンテンツエリア
m3.com主要機能 ➢ MR君 ➢ Web講演会 ➢ ワンポイントeディテール ➢ QOL君 ➢
m3 Point Club ➢ Select(会員優待) ➢ アンケート ➢ メールマガジン ➢ ニュース ➢ ジャーナル 6 ➢ ストア(EC) ➢ 医師求人 ➢ Doctors Community ➢ カンファレンス ➢ 治験 ➢ G-TAC ➢ ...and so on. 実際は複数のサイトの集合体。 m3.comに登録することで、多くの機 能が利用できる
2015年に大規模リニューアル 7
リニューアル前のシステム構成イメージ 8 www.m3.com xxx.m3.com mrkun.m3.com httpd + Resin quiz その他
バックエンド Octoparts 問題点: ➢ 複雑なサービス間通信 ➢ ビュー要素を再利用できない ➢ API Aggregator(=Octoparts)はあった が、フル活用できていなかった httpd + Tomcat API Aggregator httpd + Play m3dev/octoparts
リニューアル後のシステム構成イメージ 9 www.m3.com mrkun.m3.com Atlas Octoparts Play news quiz その他
バックエンド xxx.m3.com ➢ www.m3.comの新しいフロントエンド ◦ 主要な多くの画面でHTML生成を担当 ➢ 全サイトの共通HTMLパーツをAPIとして提供 ◦ ヘッダー、フッター、メニュー等 ➢ DBを持たず、Octoparts経由でデータ取得 NEW httpd DB直参照していたものをAPI化
Atlas導入の効果 ➢ UIパーツの再利用性の向上 ◦ 共通コンポーネントをAtlasで一元管理することで、各サー ビスで再実装が不要に ➢ AtlasのパーツAPIにより、サービス間連携が標準化 された ◦
ビュー要素を提供する側も利用する側も共通のJSON Schemaに沿って開発すれば良い ◦ Octoparts経由でAPIコール 10
Octoparts + HAProxy 11 httpd + Play + HAProxy L
B Octoparts→APIリクエスト時にHAProxyを経 由
Octoparts + HAProxy 12 httpd + Play + HAProxy L
B モノによっては外部からアクセスされるサー ビスだが、遅いリクエストによってhttpdプロセ スを滞留させたくない
現在の課題 ➢ 一部、リニューアル前のページがAtlasに乗っていな い ◦ 技術的負債になっているのでなんとかしたい ➢ Octoparts利用増によるサービス間通信の複雑化 ◦ A
=> B => A のようなフローもあるらしい ◦ トレーシングを強化したい ▪ Zipkinを入れているが、ログ量等の問題で一部に留まっている 13
まとめ ➢ m3.comは歴史のある複雑なシステム ➢ 折を見てアーキテクチャーの刷新を行い、レガシー化 や技術的負債と戦っている ➢ まだまだ課題もある 14
We are hiring! https://jobs.m3.com/engineer/ 15
ご清聴ありがとうございました。 16