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
大規模webサービス開発の実態 #TechLunch
Search
Livesense Inc.
PRO
April 23, 2014
Technology
0
43
大規模webサービス開発の実態 #TechLunch
2012/03/28(水) @ Livesense TechLunch
発表者:平山 宗介
Livesense Inc.
PRO
April 23, 2014
Tweet
Share
More Decks by Livesense Inc.
See All by Livesense Inc.
27新卒_Webエンジニア職採用_会社説明資料
livesense
PRO
0
2.5k
株式会社リブセンス・転職会議 採用候補者様向け資料
livesense
PRO
0
53
株式会社リブセンス 会社説明資料(報道関係者様向け)
livesense
PRO
0
1.5k
データ基盤の負債解消のためのリプレイス
livesense
PRO
0
440
26新卒_総合職採用_会社説明資料
livesense
PRO
0
11k
株式会社リブセンス会社紹介資料 / Invent the next common.
livesense
PRO
1
38k
26新卒_Webエンジニア職採用_会社説明資料
livesense
PRO
1
13k
中途セールス職_会社説明資料
livesense
PRO
0
270
EM候補者向け転職会議説明資料
livesense
PRO
0
130
Other Decks in Technology
See All in Technology
バイブスに「型」を!Kent Beckに学ぶ、AI時代のテスト駆動開発
amixedcolor
2
580
普通のチームがスクラムを会得するたった一つの冴えたやり方 / the best way to scrum
okamototakuyasr2
0
110
研究開発と製品開発、両利きのロボティクス
youtalk
1
530
Autonomous Database - Dedicated 技術詳細 / adb-d_technical_detail_jp
oracle4engineer
PRO
4
10k
「どこから読む?」コードとカルチャーに最速で馴染むための実践ガイド
zozotech
PRO
0
540
スクラムガイドに載っていないスクラムのはじめかた - チームでスクラムをはじめるときに知っておきたい勘所を集めてみました! - / How to start Scrum that is not written in the Scrum Guide 2nd
takaking22
1
120
「全員プロダクトマネージャー」を実現する、Cursorによる仕様検討の自動運転
applism118
22
12k
品質視点から考える組織デザイン/Organizational Design from Quality
mii3king
0
210
機械学習を扱うプラットフォーム開発と運用事例
lycorptech_jp
PRO
0
580
はじめてのOSS開発からみえたGo言語の強み
shibukazu
3
940
AWSで始める実践Dagster入門
kitagawaz
1
710
Agile PBL at New Grads Trainings
kawaguti
PRO
1
450
Featured
See All Featured
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4k
A designer walks into a library…
pauljervisheath
207
24k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
285
14k
Raft: Consensus for Rubyists
vanstee
140
7.1k
The Power of CSS Pseudo Elements
geoffreycrofte
77
6k
Practical Orchestrator
shlominoach
190
11k
Rebuilding a faster, lazier Slack
samanthasiow
83
9.2k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
656
61k
Building an army of robots
kneath
306
46k
GitHub's CSS Performance
jonrohan
1032
460k
Why You Should Never Use an ORM
jnunemaker
PRO
59
9.5k
Site-Speed That Sticks
csswizardry
10
820
Transcript
RC 4PTVLF)JSBZBNB
lଞࣾ8&#αʔϏεͷ ӡ༻ͷݱͬͯΠϝʔδͰ͖·͔͢ʁz
ΠϯτϩμΫγϣϯ lਓੜ৭ʑɺ8&#αʔϏε৭ʑɻz ✓ ͿͬͪΌ͚جຊߏಉ͡ɻ ✓ ͔͠͠αʔϏεຖͷཁ࣮݅݁ߏҧ͏ɻ ɾผʹ࣌ؒ͘Β͍མ͍͍ͪͯΑ ɾ͓٬༷ʹ4-"ఆΊͯΔ͠ઈରམͪΔ͜ͱڐ͞Εͳ͍ ɾ࣌ؒৗʹτϥϑΟοΫ͕ͳ͍Μ͚͢Ͳ ✓
ଞࣾ8&#αʔϏεͷӡ༻ΛݱϨϕϧͰΔػձͬͯҙ ֎ʹগͳ͍ɻ ଞࣾ8&#αʔϏεͷߏʗӡ༻ΛͬͯΈͯ໘ന͍͔
RC େن8&#αʔϏε։ൃͷ࣮ଶ ʙ(3&&ͷ߹ʙ
l(3&&zΛऔΓר͘ڥ
ఏڙϝσΟΞ͔ΒΈͨ(3&& l4/4ӡӦऀz lιʔγϟϧήʔϜϓϥοτϑΥʔϚʔz ✓ ࠃ ສਓҎ্ͷձһΛ࣋ͭϦΞϧλΠϜ4/4 ✓ ܳೳਓϢʔβͳͲ༷ʑͳϓϩϞʔγϣϯΞΧϯτ ✓
͚ͩͰͳ͘SEϕϯμʔͷήʔϜ·ͰΛؚΉଟͷι ʔγϟϧήʔϜ͕ల։͞ΕΔϓϥοτϑΥʔϜ ✓ ιʔγϟϧήʔϜͱ͍͏ಛҟͳτϥϑΟοΫ ✓ ࿈ଧߋ৽Ϟσϧ͕ओྲྀ ✓ ༷ʑͳϦςϯγϣϯࢪࡦʢ੍࣌ؒݶɺটɺΠϕϯτʣ ✓ ϦΞϧλΠϜੑͷཁٻ
(3&&ͷτϥϑΟοΫ ✓ ౷߹͢ΔͱجຊతʹఆৗతʹzzߴτϥϑΟοΫ ✓ &Y ͍͍Ͷػೳͷߋ৽සݟੵΓɿ EBZ TFD
✓ ΤϯδχΞɺϝσΟΞΛ׆ੑԽͤͭͭ͞ɺ͍͔ʹ͜ΕΒͷτ ϥϑΟοΫΛ͔͘͞ͱ͍͏྆࣠ͰઃܭΛߟ͑Δ BWF
l(3&&zͷجຊγεςϜߏ
%$ɺ8&#αʔό -74 JQ@WT LFFQBMJWFE 64&3 WJQ 7331 8FC BQBDIF
QIQQIQ 1SPYZ BQBDIF NPE@QSPYZ -74 JQ@WT LFFQBMJWFE ✓ ࣾͷ֎෦%$Λར༻ɺαʔόͦΖͦΖສʁ ✓ MWTWJQʹΑΓΞΫηεΛड͚͚͓ͯΓWSSQʹΑͬͯ͏ҰͷMWT ͱԽ ✓ QSPYZNPE@QSPYZΛ༻͍ͯWJSUVBMIPTUຖʹଐ͢ΔXFCαʔόΛઃఆ ✓ XFCBQBDIF QIQQIQ
%#αʔό %#.BTUFS 64&3 %#4UBOCZ %#4MBWF ✓ ଏʹ͍͏ϚελʔɺεϨʔϒํࣜ ✓ .BTUFSʹߋ৽ΫΤϦΛ͚Δ ✓
4MBWFʹࢀরΫΤϦΛ͚Δ ✓ 4UBOCZόοΫΞοϓɺूܭ༻ 3FBE 8SJUF SFQMJDBUJPO
ը૾αʔό $%/ BLBNBJ MJNFMJHIU 64&3 ΞόλʔͳͲͷ ಈతੜը૾ إࣸਅ ✓
एׯ͜Ε͕ਖ਼͍͔͍͋͠͠ɻɻ ✓ ৭ʑࢄ͍ͯ͠Δͷྺ࢙తܦҢ͋ΔͬΆ͍ ɹϑΥτ DBDIF TRVJE
・ 何らかのイベント情報を関連する ユーザに配信するための仕組み ・ 非同期処理を行うミドルウェア ・ Q4Mライク ༷ʑͳϛυϧΣΞ lBTZODz lGFFEz
・ 永続的なmemcached ・ CTO作 ・ memcachedの持つ課題を解決 l'MBSFz ͳͲͳͲ ・ MySQL Proxy ・ 自動的なマスター切り替え lHQSPYZz ・ 分散ストレージ lOBOPGTz
جຊઃܭํͱ έʔεผઃܭΞϓϩʔν
جຊઃܭํ lԿΑΓεέʔϥϒϧͰ͋Δ͜ͱɻz ✓ ωοτϫʔΫɺετϨʔδɺ*0શͯʹ͓͍ͯεέʔϧՄ ೳͰ͋Δͱ͍͏͜ͱ͕࠷ॏཁࢹ ✓ +0*/ͷېࢭʢγϟʔσΟϯάͷ؍ʣ ✓ 03.ར༻ͷېࢭʢԆՕॴͷਝͳѲʣ ✓
.Z42-ϨϓϦέʔγϣϯԆఆৗతʹ͓͜Δͷ ✓ ༷ʑͳιϦϡʔγϣϯͷΈ߹ΘͤͰ࠷దͳղΛߟ͑Δ
έʔεʣϞϯϓϥʹ͓͚Δܦݧߋ৽ 64&3 <.Z42-> UCFYQ ܦݧߋ৽ 1IBTFαʔόͰ༨༟Ͱ͚͞Δ ECNPOTUFS ✓ ΫΤϦʔ͕૿͚͑ͯ͞ͳ͘ͳ͖ͬͯͯ͠·ͬͨɻɻɻ
έʔεʣϞϯϓϥʹ͓͚Δܦݧߋ৽ 64&3 <.Z42-> UCFYQ ܦݧߋ৽ 1IBTFෳαʔόͰ͘͞ ECNPOTUFS UCFYQ
ECNPOTUFS UCFYQ ECNPOTUFS UCFYQ ECNPOTUFS VTFS@JE ͳͲͰγϟʔσΟϯά ✓ ఆৗతʹى͜ΔεϨʔϒԆʹରԠ͠ͳͯ͘ɻɻɻ
έʔεʣϞϯϓϥʹ͓͚Δܦݧߋ৽ 64&3 <.Z42-> UCFYQ 1IBTFεϨʔϒԆʹରԠ͢Δ ECNPOTUFS UCFYQ ECNPOTUFS
UCFYQ ECNPOTUFS UCFYQ ECNPOTUFS ✓ NFNDBDIFͷFWJDUJPOɻɻɻ ✓ 'MBSFΛதؒΩϟογϡͱͯ͠࠾༻ ܦݧࢀর ܦݧߋ৽ Ωϟογϡ ʢϥΠτεϧʔʣ
έʔεʣλΠϜϥΠϯϑΟʔυ <ཁ݅> ୭͔͕ͻͱ͜ͱΛॻ͘ͱͦͷ༑ͩͪશͯͷλΠϜϥΠϯใ͕ߋ৽͞ΕΔ <՝> ಉظతʹ%#ߋ৽Λ͢Δͱͱͯͱͯ·ΘΒͳ͍ <ରԠํ> ຊཁ݅ʹेʹରԠ͢ΔͨΊͷ৽ͨͳϑϨʔϜϫʔΫΛ։ൃ ʢ"TZODʗ'FFEʣ
έʔεʣλΠϜϥΠϯϑΟʔυ 84 2VFVF "TZOD "TZOD ʜ 'MBSF λΠϜϥΠϯΛ֨ೲ͢ΔετϨʔδ ˞UNQGTͰಈ࡞͢Δ.Z42-αʔό )551ϦΫΤετ
)551Ϩεϙϯε ඇಉظΩϡʔͷՃ "TZOD 2VFVFͷ͍߹Θͤʢ1VMMʣ "TZOD্Ͱಈ͘ϓϩηεΛ ૿͢͜ͱͰແݶʹεέʔϧ͢Δ ͜ͱ͕Մೳ
ɹ·ͱΊ
·ͱΊ ✓ ୯७ʹ8&#αʔϏεͷ։ൃʗӡ༻ͱ͍༷ͬͯʑɻͦΕͧ ΕͰ։ൃऀͷۤ࿑ܙ͕Γࠐ·Ε͍ͯΔɻ ✓ ଞࣾ͞Μͷ։ൃʗӡ༻ϊϋΛΓ߹͍ͱ͔͔ΒͪΒͬ ͱͰฉ͍ͯΈΔͱݱࡏͷ։ൃʹཱͭ͜ͱ͖ͬͱ͋Δɻ ݱঢ়ͷӡ༻͕ઈରతʹਖ਼͍͠ͱ͍͏͜ͱͳ͍ɻ ✓ ৽ڵαʔϏεͳͲʢ:BNNFS-JOLFE*OʣͷγεςϜߏ
ΛαʔϕΠ͍ͯ͘͠ͱ৭ʑͱ໘ന͍ؾ͖͕ͮ͋Δͣʢ ใগͳ͍͚Ͳʣɻ
ؔ࿈ࢿྉ
ΣϒΦϖϨʔγϣϯ αΠτӡ༻ཧͷ࣮ફςΫχοΫ =
࣍ճ༧ࠂ ʢ࣍ճίΞͳΛ͍ͨ͠ʣ
࣍ճൃද༧ࠂ ిࢠ࡞ܥʢBSEVJOPJP#SJEHFʣ ը૾ೝࣝܥʢ0QFO$7ʣ ϞόΠϧܥʢ81 5JUBOJVNʣ Ϋϥυܥʢ"84 "[VSFʣ ˞ݸਓతʹ͔ɻͲΜҾ͖͞Εͦ͏ͳΒ͔ɻ