Slide 1

Slide 1 text

*46$0/ॳࢀՃͰ Կ΋Ͱ͖ͳ͔ͬͨ࿩ LPOEPUBLFTIJ !DIBTQZ NLNL

Slide 2

Slide 2 text

http://isucon.net/

Slide 3

Slide 3 text

3FHVMBUJPO w ΞϓϦέʔγϣϯͷύϑΥʔϚϯεվળ w ෳ਺ݴޠͰ࣮૷͕༻ҙ͞Ε͍ͯΔ w Πϯϑϥ͸714্ͷ7. w ओ࠵͕༻ҙͨ͠ϕϯνϚʔΫࢼݧͷ఺਺Ͱڝ͏ w )5.-ͷ%0.ߏ଄ͷมߋ͸ېࢭ w ֎෦Ϧιʔεͷ࢖༻͸ېࢭ w ڝٕ࣌ؒ࣌ؒ͸࣌ʙ࣌ͷ࣌ؒ w ࠷ޙͷϕϯνϚʔΫͷ఺਺͕࠾༻͞ΕΔ http://isucon.net/archives/52445389.html

Slide 4

Slide 4 text

5FBNɿʮ༧બམͪʯ w ʮࡢ೥z༏উzͱ͍͏νʔϜ໊Ͱ༧બམ͔ͪͨ͠Βʯ w !VKJIJTB8FCEFWFMPQQFSBU2VJQQFS w !TBUZV8FCEFWFMPQQFSBU2VJQQFS w !DIBTQZ43&BU2VJQQFS

Slide 5

Slide 5 text

༧બຊ൪·Ͱ w ɿ!VKJIJTB͕TMBDLͰνʔϜืू w ɿνʔϜ݁੒ ਃ͠ࠐΈకΊ੾Γ೔ w ɿ.FFUJOH w ɿ༧બຊ൪

Slide 6

Slide 6 text

౰೔ w σΟεϓϨΠ΍ςʔϒϧɺిݯͳͲ෺ཧ४උ w w ߏ੒೺ѲɺTTILFZϩάΠϯ֬ೝɺ࣮૷೺Ѳɺϕϯν ϚʔΫ࣮ࢪɺHJU؅ཧԽɺSFMFBTFTDSJQU࡞੒FUD w ͓ன w ؂ࢹMPHHJOHઃఆ௥ՃɺϘτϧωοΫ਍அ w ࢄาˍίʔώʔϒϨΠΫ☕ w "QQվળ w ࠷ऴௐ੔࠶ىಈࢼݧ

Slide 7

Slide 7 text

Πϯϑϥߏ੒ JTVDPOB$FOU04 JTVDPOC$FOU04 JTVDPOD$FOU04 )0 )0 )0 #FODI.BSLFS (MPCBM*1 (MPCBM*1 (MPCBM*1 1SJWBUF*1 1SJWBUF*1 1SJWBUF*1 #FODI*1 #FODI*1 #FODI*1 ※ Bench IP͸࠶ىಈࢼݧͷͱ͖ʹ࢖͏Μͩͱࢥ͏ 80 8080

Slide 8

Slide 8 text

ΞϓϦߏ੒ w Πϕϯτ؅ཧαΠτ w ओ࠵ऀ͸ΠϕϯτΛ࡞੒Ͱ͖Δ w ϕʔεՁ֨Λܾఆ͠ɺ ͱ࠲੮ϥ ϯΫʹΑͬͯՁ͕֨ҟͳΔ w ར༻ऀ͸ΠϕϯτΛ༧໿ͨ͠ΓɺΩϟϯηϧͨ͠Γ Ͱ͖Δ

Slide 9

Slide 9 text

ࣗ෼͕΍ͬͨ͜ͱʢʹޮՌ͕ͳ͔ͬͨ͜ͱʣ w ࣄલ (JU)VCLFZͰTTI͢ΔͨΊͷTDSJQU࡞੒ w .BSJB%#HFOFSBMMPHTMPXRVFSZMPHग़ྗ w .BSJB%#΁VQHSBEF w %BUBEPHಋೖ w TMPXRVFSZվળͷͨΊͷJOEFY࡞੒ w )0Ͱෛՙ෼ࢄ ࣦഊ w %#ॻ͖ࠐΈઌ੾Γସ͑ ࣦഊ

Slide 10

Slide 10 text

ਪଌ͢ΔͳɺܭଌͤΑ

Slide 11

Slide 11 text

ܭଌ͸͕ͨ͠ʜ

Slide 12

Slide 12 text

ͦ΋ͦ΋*46$0/߈ུͷఆੴ͸ʁ w ҆શʹมߋΛՃ͑Δ४උ HJU؅ཧSFMFBTFTDSJQU w Πϯϑϥͷߏ੒Λ೺Ѳ͢Δ w ΞϓϦͷϩδοΫΛ೺Ѳ͢Δ w ϕϯνϚʔΫͷ)551ϦΫΤετ಺༰Λ೺Ѳ w ϘτϧωοΫΛಛఆ w վળ

Slide 13

Slide 13 text

ͦ΋ͦ΋*46$0/߈ུͷఆੴ͸ʁ w ҆શʹมߋΛՃ͑Δ४උ HJU؅ཧSFMFBTFTDSJQU w Πϯϑϥͷߏ੒Λ೺Ѳ͢Δ w ΞϓϦͷϩδοΫΛ೺Ѳ͢Δ w ϕϯνϚʔΫͷ)551ϦΫΤετ಺༰Λ೺Ѳ w ϘτϧωοΫΛಛఆ w վળ ͜͜·Ͱ͸Ͱ͖ͨ RubyͱɺSQLͷཧղ଎౓ෆ଍ ͦΕΒ͍͠஗͍Query͸Θ͔Δ͕ɺ ͲΕ͕ϕϯνϚʔΫʹޮ͔͘Θ͔Βͳ͍

Slide 14

Slide 14 text

ԿΛܭଌ͢Δͷ͔ʁ w جຊతͳίϯϐϡʔλʔϦιʔε w $16 NFNPSZ EJTL*0 -PBE"WFSBHF w )551Ϩεϙϯεछผɺ࣌ؒ w 42-ΫΤϦछผɺ࣌ؒ w %BUBCBTFͷ಺෦ੑೳ஋

Slide 15

Slide 15 text

ͳͥԿ΋Ͱ͖ͳ͔ͬͨͷ͔ w 8FC%FWFMPQFSͷਓʹΞϓϦΛ·͔ͤɺΠϯϑϥ໘Ͱ ߩݙ͠Α͏ͱͨ͠ w Α͘஌Βͳ͍΋ͷ )0 Ͱෛՙ෼ࢄΛ͠Α͏ͱͨ͠ w FUDIPTUTͰ%/4Ͱ΍Ε͹Α͔ͬͨΆ͍ ࢥ͍͔ͭͣ w ܦݧͷ͋ΔOHJOY΍IBQSPYZʹೖΕସ͑Δ΂͖ͩͬͨ w 42-&91-"*/ޙͷΞΫγϣϯ͕औΕͳ͍ ஌ࣝෆ଍ w %BUB%PHྗෆ଍ 43&ͱͯ͠Ϡό͍ w ϕϯνϚʔΫ͸୹࣮࣌ؒߦͳͷͰɺՄࢹԽ͕೉͍͠ w IUPQͰோΊΔ΄͏͕ଥ౰

Slide 16

Slide 16 text

Ͳ͏͢΂͖ͩͬͨͷ͔ w ఢΛ஌ΔʹϕϯνϚʔΫΛ஌Δ w ϕϯνϚʔΫͷJOJUॲཧͷཧղʹ࣌ؒΛ͔͚Δ΂͖ w JOJUॲཧ͕MPDBMIPTUͷ%BUBCBTFʹରͯ͠૸͍ͬͯͨ w ͦͷͨΊ%#ͷ޲͖ઌΛ੾Γସ͑Δͱࣦഊͨ͠ w BQQTFSWFSͷෛՙ෼ࢄΛ࠷༏ઌ͢΂͖ w ࠓճ͸QVNBʹΑͬͯϝϞϦ͕ރׇ͍ͯͨ͠ w QBUIʹΑͬͯQSPYZઌΛม͑ΔͳͲͯ͠ॏ͍ॲཧͱɺ ͦ͏Ͱͳ͍ॲཧΛ෼͚Δͱ͍͏͜ͱ͕Ͱ͖ͨ͸ͣ

Slide 17

Slide 17 text

ͤΊͯ͜Ε͙Β͍͸Ͱ͖͍͔ͯͨͬͨ JTVDPOB$FOU04 JTVDPOC$FOU04 JTVDPOD$FOU04 #FODI.BSLFS (MPCBM*1 (MPCBM*1 (MPCBM*1 1SJWBUF*1 1SJWBUF*1 1SJWBUF*1 #FODI*1 #FODI*1 #FODI*1 ※ Bench IP͸࠶ىಈࢼݧͷͱ͖ʹ࢖͏Μͩͱࢥ͏ 80

Slide 18

Slide 18 text

དྷ೥͸Πϯϑϥ͸શͯ Զʹ೚ͤΖঢ়ଶͰ͋Γ͍ͨ

Slide 19

Slide 19 text

ݶΒΕͨ࣌ؒͰྗΛൃش͢ΔͨΊʹ͸ w ೔ࠒ͔Βπʔϧ ٕज़ Λखʹͳ͡·͓ͤͯ͘͜ͱ w ܭଌπʔϧɺղੳπʔϧ w ఆ൪044 w खʹͳ͡Μٕͩज़Ͱ࠷ߴͷύϑΥʔϚϯεΛൃش͢Δ w ೔ʑͷΩϟονΞοϓˍτϨʔχϯά͕େࣄʜ w ΊͬͪΌ౰ͨΓલͷ݁࿦

Slide 20

Slide 20 text

༧બ௨աνʔϜͱͷҧ͍ w ࣄલ४උෆ଍ w ໾ׂ෼୲ w ఆੴͷܭଌํ๏ɺܭଌޙͷΞΫγϣϯ͕͋Δ͸ͣ w ٕज़ྗෆ଍ w 42-ΫΤϦͷಡղྗ w *OEFYͷ࢓૊Έͱ&91-"*/ͷ࢖͍ํ w σʔλϕʔεͷੑೳࢦඪͷݟํ w ߏ੒มߋΛߦ͏༐ؾͱखࡳ

Slide 21

Slide 21 text

ࠓͷ͓ؾ࣋ͪ w ΊͬͪΌչ͍͠ w Ͱ΋͜ͷչ͠͞͸ࢀՃ͠ͳ͍ͱಘΒΕͳ͍ w ΧϯϑΝϨϯε ग़ΔΑΓࣗ෼ͷ੒௕ʹͭͳ͕Δ w չ͠͞ΛֶͼͷϞνϕʔγϣϯʹͭͳ͛Δ w Ұॹʹग़ͯ͘Εͨਓʹײँ

Slide 22

Slide 22 text

དྷ೥͸༏উ͢Δͧʂʂʂ

Slide 23

Slide 23 text

དྷ೥͸ΈΜͳग़·͠ΐ͏ʂ

Slide 24

Slide 24 text

8IPBN* Site Reliability Engineer at Quipper Takeshi Kondo chaspy chaspy_