Slide 1

Slide 1 text

ISUCON޲͚ͷπʔϧΛ࡞ͬͨ࿩ ISUCON9େ൓লձ

Slide 2

Slide 2 text

pprofͷ݁ՌΛ؆୯ʹՄࢹԽ • pprofͷίϚϯυ๨Ε͕ͪ • Port։͚ͨΓFileΛscpͨ͠Γେม • ϕϯνϚʔΫճͨ͠͝ͱʹऔΓ͍ͨ

Slide 3

Slide 3 text

DataDogͷSQLͷAPMΛऔΓ͍ͨ • DatadogͷAPM͸࠷ߴɻ͓͔͔ͨͩۚ͠Δɻ • SlowLog͚ͩͩͱΈΕͳ͍܏޲ΛΈ͍ͨɻ

Slide 4

Slide 4 text

alpͷ݁ՌΛ؆୯ʹग़͍ͨ͠ • ϕϯνϚʔΫճͨ͠͝ͱʹऔΓ͍ͨ

Slide 5

Slide 5 text

N+1 QueryΛ؆୯ʹൃݟ͍ͨ͠ • ໨ࢹͰN+1 QueryΛݟ͚ͭͯ௚ͨ͠Γ͢Δ͕ ࿙Ε͕͋ͬͨΓ͢ΔͷͰ؆୯ʹൃݟ͍ͨ͠

Slide 6

Slide 6 text

΍Γ͍ͨ͜ͱ·ͱΊ • pprofͷ݁ՌΛ؆୯ʹՄࢹԽ͍ͨ͠ • alpΈ͍ͨͳ݁ՌΛ؆୯ʹग़ྗ͍ͨ͠ • DataDogͷSQLͷAPMͷ݁ՌΈ͍ͨͳͷग़ྗ ͍ͨ͠ • N+1QueryΛ؆୯ʹൃݟ͍ͨ͠

Slide 7

Slide 7 text

͜ΕΒΛղܾ͢Δ࡞Γ·ͨ͠ɻ

Slide 8

Slide 8 text

ͦͷ໊΋

Slide 9

Slide 9 text

github.com/yudppp/isutools Iikanji ni speed up suru tools

Slide 10

Slide 10 text

github.com/yudppp/isutools/profile • Initialize͢Δؔ਺ͷதʹ1ߦ௥Ճ͢Δ • Initializeͷؔ਺Λݺͼग़͔ͯ͠Βࢦఆͨ͠ඵ਺ ͷpprofͷ݁ՌΛSlackʹૹ৴͢Δ

Slide 11

Slide 11 text

github.com/yudppp/isutools/profile • ϕϯνϚʔΫͷ࣮ߦ͝ͱʹຖճܭଌ݁ՌΛ Slackʹ౤͛ͯ͘ΕΔ • ϩάͱͯ͠࢒͞ΕΔͷͰ࣌ܥྻͰऴ͑ͯศར

Slide 12

Slide 12 text

No content

Slide 13

Slide 13 text

github.com/yudppp/isutools/tracereporter • DataDogͷAPMͷlibrary(dd-trace-go)Λ࢖ͬ ͯ৭ʑͳ಺༰ΛSlackʹϨϙʔτ͢Δ • LibraryʹରԠ͍ͯ͠ΔϑϨʔϜϫʔΫશͯʹ ରԠ͞Ε͍ͯΔ

Slide 14

Slide 14 text

sqlxͷྫ

Slide 15

Slide 15 text

No content

Slide 16

Slide 16 text

gojiͷྫ

Slide 17

Slide 17 text

No content

Slide 18

Slide 18 text

github.com/yudppp/isutools/tracereporter • ্هͷΈ͍ͨͳ΍ͭΛ্ख͘࢖͍߹ΘͤΔͱ

Slide 19

Slide 19 text

No content

Slide 20

Slide 20 text

github.com/yudppp/isutools/utils/throttle • ࢦఆͨ͠ඵ਺ؒʹ࠷ॳͷ1ճ໨͔࣮͠ߦ͞Εͳ ͍΍ͭ(sync.Onceͱಉ͡ײ͡Ͱ࢖͑Δ)

Slide 21

Slide 21 text

·ͱΊ • དྷ೥ͦ͜͸݁Ռग़͍ͨ͠ɻ