Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
PHPConference2013Presentation #phpcon2013
Search
bash0C7
September 14, 2013
Technology
14
5.3k
PHPConference2013Presentation #phpcon2013
PHPカンファレンス2013 11:20〜11:50 小展示ホール発表
ミッションクリティカル&ハイパフォーマンスシステムにおける技術統合と運用の勘所
bash0C7
September 14, 2013
Tweet
Share
More Decks by bash0C7
See All by bash0C7
#oedo10 継続的 #RubyMuscleMixin 実践入門/RubyMuscleMixin
bash0c7
0
730
inside_announce
bash0c7
0
610
【公開版】マネジメントにおける 「技術選択」の勘所 / The key to technology selection in engineering management
bash0c7
0
280
数百人規模の会社でアイデアを組織的にインストールする実例と再現性の要/Pragmatic Fearless Change #devkan
bash0c7
0
180
【公開版】明日から動ける 切り拓け「おいしい」キャリア/build one's career #careerkaigi
bash0c7
2
450
[公開版]現役VP of Engineeringはこう見る!エンジニアを取り巻く環境と2020年代を生き延びる作戦/survive2020
bash0c7
5
2.1k
「アジャイル」な取り組みを 支えるマネジメント / Agile Support
bash0c7
2
2.1k
【公開版】「創作活動がもっと楽しくなる場所をつくることを楽しむ活動」/retty_pixiv_goodpatch
bash0c7
0
180
夏色のナンシー(寺嶋由芙カバー) カンペ/natsuiro_no_nansy_yufu
bash0c7
0
300
Other Decks in Technology
See All in Technology
サービスメッシュ環境における OpenTelemetry 活用 / OpenTelemetry in Service Mesh
k6s4i53rx
2
850
実務への応用例から考える 変更に強いオブジェクト指向設計 / 20240324-ooc2024
bengo4com
7
5.3k
技育祭2024春 LT Finatextホールディングス
kevinrobot34
1
160
Tohoku.Tech #1 「Cursorを使ったRaspberry Piの開発」by ねこまた
jun2882
0
250
GraphQLに入門してみた
chiroruxx
2
130
#51 “Empowering Azure Storage with RDMA”
cafenero_777
3
210
私のRSpecの書き方 / How I write RSpec
tmtms
4
830
統計的学習理論読み Chapter 1
kmatsui
3
860
エバンジェリスト活動を7年やってきて見えてきた、コミュニティとエバンジェリストの関係
soracom
PRO
1
200
LLMプロダクト事業の立ち上げにおける挑戦
layerx
PRO
7
1.4k
やっていきテスト
k6s4i53rx
0
160
既存プロセスからの脱却と変化に適応するために必要なこと
cybozuinsideout
PRO
2
170
Featured
See All Featured
Six Lessons from altMBA
skipperchong
19
2.9k
Keith and Marios Guide to Fast Websites
keithpitt
407
22k
Debugging Ruby Performance
tmm1
68
11k
The Cost Of JavaScript in 2023
addyosmani
13
3.7k
The World Runs on Bad Software
bkeepers
PRO
60
6.6k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
225
51k
For a Future-Friendly Web
brad_frost
170
8.9k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
67
38k
WebSockets: Embracing the real-time Web
robhawkes
59
6.9k
Pencils Down: Stop Designing & Start Developing
hursman
115
11k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
319
20k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
501
140k
Transcript
ミッションクリ ティカル&&ハイ パフォーマンス システムにおけ る技術統合と運 用の勘所 @@bbaasshh00CC77 こしば としあき ((株))VVOOYYAAGGEE
GGRROOUUPP,, ((株))ZZuucckkss
『古きよき時代から来ました 真面目なSSEE 真面目にSSEE』 優等生担当、bbaasshh00CC77こと こしばとしあき 基幹業務からBB22CCサービス運営まで、 管理・設計・開発・運用を幅広くかつ フルスタックに担当 株式会社VVOOYYAAGGEE GGRROOUUPP
エンジニア アジャイル戦略室ファウンダー 株式会社ZZuucckkss アドネットワーク事業部 関西RRuubbyy会議0055スピーカー((22001133//0088)) 東京RRuubbyy会議1100実行委員長((22001133//0011,,0033)) SShhiibbuuyyaa..rrbb
闇PPHHPPMMaattssuurrii22001111首謀者 IUUQUFDIWPZBHFHSPVQDPNBSDIJWFTIUNM
広告配信システムというミッションクリティカルかつハ イパフォーマンスが要求されるシステムの開発・運用を 通じて会得した技術的・チーム的な知見をお話します。 IUUQQIQDPOQIQHSKQX ミッションクリティカル&&ハイパフォーマンス システムにおける技術統合と運用の勘所
l 11.. このようなシステムで PPHHPPがはどのような部分で 活躍するのか
l 22.. PPHHPPを含めて様々な技術 要素を統合した""システム""と して成り立たせるためには 何が必要か
システム
スマートフォン向�け クリック課金型アドネットワーク ZZuucckkssアドネットワーク IUUQ[VDLTDPKQTFSWJDFBEOFU
ス マ ホ 広 告 大 戦 争 IUUQTUVETKQ.0#J41300'IUNM
22001133年77月新システムに フルリプレース完了
特徴
✓リアルタイムレポート ✓莫大な配信ボリューム ✓無停止メンテナンス ✓柔軟な改�修対応
None
✓インフラ ✓アプリケーション ✓モニタリング
インフラ
ほぼAAWWSS ((DDNNSSとCCDDNNは他所))
鉄板の富豪構成パターン MMuullttii LLooaadd BBaallaanncceerr MMuullttii--DDaattaacceenntteerr MMuullttii--SSeerrvveerr
MMaannaaggeemmeenntt CCoonnssoollee IUUQBXTBNB[PODPNKQDMPVEGPSNBUJPO
作業の再現性が皆無 手順書頼りになる…�
の、ようなもの IUUQBXTBNB[PODPNKQDMPVEGPSNBUJPO
CClloouuddFFoorrmmaattiioonn IUUQBXTBNB[PODPNKQDMPVEGPSNBUJPO
l システム開発や運用保守において は、テスト環境やステージング環 境を準備するのが一般的である。 これらの環境は常時利用するもの ではないので、本番環境と同じ台 数のサーバーを用意するのはコス ト効率が悪い。 IUUQBXTDMPVEEFTJHOQBUUFSOPSHJOEFYQIQ $%14UBDL@%FQMPZNFOUύλʔϯ
テンプレート ++ CCLLIIの併用
テンプレから変更が少ない ネットワーク部分を構築
次にCCLLIIでネットワーク上に 置く変更激しいもの設置
富豪構成らくらく実現
インフラまとめ
インフラ、変更怖い…� テンプレ化で脱手順書 クイックな変更の考慮
アプリケーション
None
11.. ddllvv((配信)) SSccaallaa 22..99 ++ SSeerrvvlleett 33..00 22.. jjss SSccaallaa
22..99 ++ SSeerrvvlleett 33..00 33.. kksskk((計測)) PPHHPP 55..44 ,, GGaauucchhee 00..99 44.. mmss((管理画面)):: PPHHPP 55..44 ++ SSyymmffoonnyy22
開発環境
✓テストコード完備 ✓PPuullll RReeqquueesstt運用 ✓継続的インテグレーション完備 ✓ワンクリックデプロイ完備 ✓本番同等検証環境完備
ワンクリックデプロイ
zzggookkコマンド
どの種類のAAPPサーバでも zzggookk ((ssttaarrtt||uuppddaattee||ssttoopp))
夜も寝れない こわーいこと
サ ー ビ ス 停 止 ! IUUQGBSFBTUWJCFTDPNXQDPOUFOUVQMPBET*%0-JT%&"%QOH
配信できない 計測できない
✓ぼっちで動く ✓レスポンスだけ速攻返却 ✓書き込みを調整
ぼっちで動く
None
レスポンスだけ速攻返却
薄いAAPPと ffaassttccggii__ffiinniisshh__rreeqq uueesstt
11.. リクエスト受ける 22.. ffaassttccggii__ffiinniisshh__rreeqquueesstt を呼んでレスポンス返す 33.. AAPPのアクセスログ出力 44.. 別プロセスでログからDDBB 書き込み
書き込みを調整
フロントが吐いたログを バックが読んでDDBBに書き込む
fflluueennttdd IUUQqVFOUEPSH
TPVSDF ņUZQFUBJM ņQBUIQBUIUPMPH ņUBH[HPLBE ņLFZTMPH@UZQF WFSTJPO SFRVFTU@UJNF TPVSDF NBUDI[HPLBE
ņUZQFFYFD ņDPNNBOEFOWHPTIQBUIUPBQ ņLFZTMPH@UZQF WFSTJPO SFRVFTU@UJNF NBUDI
✓事実上リアルタイム処理 ✓パフォーマンス調整 ✓自動リトライ機能 ✓手動リカバリー容易
レスポンスを速攻返却
例えばPPHHPPをやめる
AAPPに囚われない
富豪的解決
鉄板の富豪構成パターン MMuullttii LLooaadd BBaallaanncceerr MMuullttii--DDaattaacceenntteerr MMuullttii--SSeerrvveerr
スケールアウト + スケールアップ
アプリケーションまとめ
ワンクリックデプロイ、テス ト、CCIIなど活動の基礎 必要さを満たす技術を選ぶ 富豪的解決の道も大いにあり
モニタリング
None
だいたい鉄板
✓fflluueennttddでログ収集 ✓GGrroowwtthhFFoorreeccaassttでグラフ化 ✓XXyymmoonnでアラート通知
fflluueennttdd IUUQqVFOUEPSH
✓インスタンスのログ集約 ✓hhttttppステータス集計 ✓レスポンスタイム集計 ✓CClloouuddWWaattcchhの情報集約 ✓総CCPPUU利用率取得 ✓インスタンス台数取得 ✓などなど
GGrroowwtthhFFoorreeccaasstt
グラフ事前定義不要
XXyymmoonn(旧HHoobbbbiitt)
クライアントからppuusshh
fflluueennttddのデータも扱いたい IUUQqVFOUEPSH
XXyymmoonnサーバにTTCCPP でメッセージ投げ ssttaattuuss ##{{hhoossttnnaammee}}..##{{tteessttnnaammee}} ##{{ccoolloorr}} ##{{ttiimmee}} ##{{bbooddyy}}
ӡ༻ࢹπʔϧʹ͛Δ qVFOUग़ྗϓϥάΠϯ qVFOUQMVHJO YZNPO IUUQSVCZHFNTPSHHFNTqVFOUQMVHJOYZNPO IUUQTHJUIVCDPNCBTI$qVFOUQMVHJOYZNPO
モニタリングまとめ
手軽に計測 手軽に監視 足らんなら作って公開
スマートフォン向�け クリック課金型アドネットワーク ZZuucckkssアドネットワーク IUUQ[VDLTDPKQTFSWJDFBEOFU
✓インフラ ✓アプリケーション ✓モニタリング
l 11.. このようなシステムで PPHHPPがはどのような部分で 活躍するのか
どこでも。 あなたがそれが良い 選択だと評価できる ならば。
l 22.. PPHHPPを含めて様々な技術 要素を統合した""システム""と して成り立たせるためには 何が必要か
自分たちで 検討して、動かして、 測定して、評価する。
そして、これから ttoo BBee
新しい事業を展開 より多くのトラフィック
もっとシンプルに もっと高速に もっと構成要素を少なく 他、色々!
目 下 、 大 戦 争 激 化 中 IUUQTUVETKQ.0#J41300'IUNM
変 わ り 続 け な け れ ば 死
ぬ IUUQGBSFBTUWJCFTDPNXQDPOUFOUVQMPBET*%0-JT%&"%QOH
変わり続ける 事が安定 cchhaalllleennggeerr
暁の水平線�に勝利を刻め IUUQXXXRFUJDKQNBJOXQDPOUFOUVQMPBETOFXT@CJT@NBJOKQH DF