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
OpenJDKアンカンファレンス 2022-09
Search
orekyuu
September 30, 2022
Programming
0
150
OpenJDKアンカンファレンス 2022-09
orekyuu
September 30, 2022
Tweet
Share
More Decks by orekyuu
See All by orekyuu
[JJUG CCC 2022 fall] Fargate上のJVMからCPUを認識するまで 〜正しく認識されないCPUの謎を追え〜
orekyuu
1
2.1k
至極の難問言語仕様クイズ 〜最強のマルチリンガル決定戦〜
orekyuu
2
2.1k
burikaigi2021 Rails製ECサイトの決済速度を上げろ!〜決済処理チューニングの記録〜
orekyuu
3
1.6k
実際困る!クロスドメイン間のセッション管理を考えよう
orekyuu
1
830
pixiv PAYで運用している フレンズパターン
orekyuu
1
3.4k
日本初のキャッシュレス即売会を支えた決済アプリ pixiv PAYの技術
orekyuu
1
1.5k
Other Decks in Programming
See All in Programming
たのしいSocketのしくみ / Socket Under a Microscope
coe401_
8
1.3k
Honoとフロントエンドの 型安全性について
yodaka
7
1.4k
『テスト書いた方が開発が早いじゃん』を解き明かす #phpcon_nagoya
o0h
PRO
8
2.4k
新宿駅構内を三人称視点で探索してみる
satoshi7190
2
120
DRFを少しずつ オニオンアーキテクチャに寄せていく DjangoCongress JP 2025
nealle
2
270
Datadog DBMでなにができる? JDDUG Meetup#7
nealle
0
140
Ruby on cygwin 2025-02
fd0
0
180
一休.com のログイン体験を支える技術 〜Web Components x Vue.js 活用事例と最適化について〜
atsumim
0
950
クリーンアーキテクチャから見る依存の向きの大切さ
shimabox
5
1k
ファインディLT_ポケモン対戦の定量的分析
fufufukakaka
0
920
Rails アプリ地図考 Flush Cut
makicamel
1
130
Rails 1.0 のコードで学ぶ find_by* と method_missing の仕組み / Learn how find_by_* and method_missing work in Rails 1.0 code
maimux2x
1
200
Featured
See All Featured
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
3.7k
KATA
mclloyd
29
14k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.4k
It's Worth the Effort
3n
184
28k
Producing Creativity
orderedlist
PRO
344
40k
RailsConf 2023
tenderlove
29
1k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
356
29k
Done Done
chrislema
182
16k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
4
430
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
7
640
How GitHub (no longer) Works
holman
314
140k
Git: the NoSQL Database
bkeepers
PRO
427
65k
Transcript
!PSFLZVV ͬ͘͟Γ4FSJBM($ͷ࣮ΛಡΉ 0QFO+%,݄ΞϯΧϯϑΝϨϯεPQFOKELKQ
ࠓͷΰʔϧ 0QFO+%,ͷ($ͷ࣮ΛಡΜͰΈΑ͏ͷͱ͔͔ͬΓʹͳΔ ͲͷίʔυಡΊ͍͍ͷʁ ॲཧͷྲྀΕͲ͏ͳͬͯΜͷʁ ཪͷΰʔϧ
0SFLZVVͷೝࣝζϨͷൃݟ $PNJUUFSͷิͰ͕ٙղܾͰ͖Δͱخ͍͠ʂ
ࠓͷྲྀΕ ($ͷॲཧΛಡΉલͷͬ͘͟Γͱͨ͠ొਓͷཧ :PVOHྖҬͷ($ͷྲྀΕΛಡΜͰݟΔ 0MEྖҬʹ͕ؔͯ࣌ؒ͠ͳ͍ͷͰ·ͨผͷػձʹʂ
0QFO+%,ͷ($ܥͷॲཧͷॴ w TSDIPUTQPUTIBSFHD w TFSJBMˡ͜͜ʹ4FSJBM($ͷ࣮ w TIBSFEˡ͜͜ʹෳͷ($ΞϧΰϦζϜͰ͏࣮͕ೖ͍ͬͯΔ w ͦͷଞ($ΞϧΰϦζϜຖʹσΟϨΫτϦ͕۷ΒΕ͍ͯΔׂ͕Ѫ
7.ͷΫϥεͱΦϒδΣΫτΛཧ͢Δਓ
6OJWFSTFͷॳظԽλΠϛϯάͰ )FBQΛ࡞͢Δ
($$PO fi HͲͷ($ΞϧΰϦζϜΛ ͏͔ͷϩδοΫΛ͍࣋ͬͯΔ ($$PO fi HTFMFDU@HD
(D"SHVNFOUT($ΞϧΰϦζϜ͝ͱʹ αϒΫϥεΛ࣋ͭ
DFBUF@IFBQΛ࣮ͯ͠ɺ $PMMFDUFE)FBQΛ࡞ͬͯฦ͢
$PMMFDUFE)FBQ)FBQྖҬͷཧ (FO$PMMFDUFE)FBQੈผͷώʔϓͰ ZBOHͱPMEͷ(FOFSBUJPOΛ͍࣋ͬͯΔ ͦͷαϒΫϥεͱͯ͠4FSJBM)FBQ͕͍Δ
(FO$PMMFDUFE)FBQ @ZPVOH@HFOͱ@PME@HFOΛ࣋ͭ
۩ମతͳ($ͷॲཧ(FOFSBUJPO ʹهड़͞Ε͍ͯΔ
(FOFSBUJPO($ͷॲཧঢ֨ͷॲཧͳͲΛ͍࣋ͬͯΔ
4FSJBM($ͷ͓͞Β͍
ώʔϓͷߏ w ώʔϓେ͖͘ZPVOHͱPMEʹ͔Ε͍ͯΔ w ZPVOHʹFEFOTVSWJWPS ͞ΒʹதͰGSPNUP ͷྖҬ͕͋Δ
ώʔϓͷߏ w ৽͘͠࡞ΒΕͨΦϒδΣΫτFEFOʹׂΓͯΒΕΔ
ώʔϓͷߏ w ($ͰUPʹҠಈͯ͠ྸ͕૿͑Δ
ώʔϓͷߏ w ͋ΔҰఆͷྸʹͳΔ·Ͱ̜̘͞Εͳ͚ΕPMEʹҠಈ͢Δ
%FG/FX(FOFSBUJPODPMMFDU
4FSJBM)FBQIFBQ Ͱ 4FSJBM)FBQͷࢀর͕औΕΔͬΆ͍
͜ͷΜ($ͷ౷ܭใΛऔΓ͍͚ͨͩΈ͍ͨͳͷͰ ຊےͱؔͳͦ͞͏
PME@HFO͋ͱͰग़ͯ͘ΔͷͰ ͦ͏͍͖͑࣋ͬͯͯͨͳʔ͘Β͍ʹ͓͍͍֮͑ͯͯͩ͘͞
($͕ޭͦ͠͏ʹͳ͍ͳΒHDΛఘΊͯͯ࣍ͷੈʹ·͔ͤΔ ͭ·Γ'VMM($
5Pεϖʔε͕ۭͰͳ͍ͳΒޭ͠ͳͦ͞͏
VTFECZUFT͕ͯ͢PMEੈʹঢ֨ͨ͠ͱ͖ʹׂΓͯΒΕΔʁ VTFE͕ͯ͢ঢ֨͢ΔΘ͚Ͱͳ͍͚Ͳɺ࠷ѱέʔεͰߟ͑ͯΔΆ͍
ޙͰग़ͯ͘Δ3FG1SPD1SPYZ5BTLͰΘΕΔΫϩʔδϟͰɺ ΦϒδΣΫτ͕ੜ͖͍ͯΔ͔Λฦ͠·͢
ऑࢀরΛॲཧ͢ΔͨΊͷΫϩʔδϟͰ͢ ੈؔͳ͘Ұׅॲཧ͢ΔΒ͍͠
ྸͷςʔϒϧΛΫϦΞͯ͠ΔͬΆ͍͚Ͳͳͥʁ 4VSWJWPSؒͷҠಈͰྸ͕૿͍͑ͯͣ͘Ͱʜ
5PྖҬΛফڈ
4VSWJWPSͷίϐʔɺঢ֨Λ͍ͬͯͦ͏ʁ
ͭͷΫϩʔδϟ'BTU4DBO$MPTVSFΛܧঝ͍ͯͯ͠ɺ ੜ͖ͬͨΦϒδΣΫτ PCKJT@GPSXBSEFE ΛUPྖҬίϐʔ͍ͯ͠Δ
͖͍͠ͷྸ·Ͱ͍͔ͳ͚ΕUPྖҬίϐʔ
ྸ͕͖͍͠Λ͑͜ΔͱPMEঢ֨
&EFO :PVOH(FO 0ME(FO 'SPN 5P 0ME 4VWBJWFS " # $
%
&EFO :PVOH(FO 0ME(FO 'SPN 5P 0ME 4VWBJWFS " # $
% ; ৽͍͠Πϯελϯε &EFOʹஔ
&EFO :PVOH(FO 0ME(FO 'SPN 5P 0ME 4VWBJWFS " # $
% ; ($SPPUΛ5Pίϐʔ "` ;` %`
લͷͭͷΫϩʔδϟͰॲཧͨ͠ΦϒδΣΫτ͔ΒḷΕΔ ΦϒδΣΫτΛ࠶ؼతʹ5PίϐʔPSঢ֨ͤ͞Δ
&EFO :PVOH(FO 0ME(FO 'SPN 5P 0ME 4VWBJWFS " # $
% ; ($SPPU͔ΒḷΕΔΦϒδΣΫτΛ 5Pίϐʔ "` ;` %` $`
ऑࢀরͷΦϒδΣΫτʹJT@BMJWFͱLFFQ@BMJWFͷΫϩʔδϟΛద༻͢Δ
͜͜·ͰͰɺϚΠφʔ($ͷ ΦϒδΣΫτͷίϐʔ͕ऴྃ
ίϐʔޙͷॲཧ
ࠓճͷ($Ͱঢࣦ֨ഊͨ͠߹ɺ@QSPNPUJPO@GBJMFE͕USVFʹͳΔ
ঢ֨ʹࣦഊ͍ͯ͠ͳ͍߹ɺFEFOͱGSPNΛۭʹ͢Δ UPͷίϐʔ͕ऴΘ͍ͬͯΔͷͰɺΓੜ͖͍ͯͳ͍ͣ
&EFO :PVOH(FO 0ME(FO 'SPN 5P 0ME 4VWBJWFS " # $
% ; ($SPPU͔ΒḷΕΔΦϒδΣΫτΛ 5Pίϐʔ "` ;` %` $`
&EFO :PVOH(FO 0ME(FO 'SPN 5P 0ME 4VWBJWFS # &EFOͱ'SPNΛۭʹ͢Δ "`
;` %` $`
&EFO :PVOH(FO 0ME(FO 5P 'SPN 0ME 4VWBJWFS # 'SPNͱ5PΛೖΕସ͑Δ "`
;` %` $`
ঢࣦ֨ഊͨ͠߹ɺGPSXBSEJOHQPJOUFSΛআ͢Δ ҠಈΛऔΓফ͢ʁ
'SPNͱUPΛަ͢Δ ঢ֨ʹࣦഊ͠ͳ͔ͬͨͱ͖GSPNͱFEFOΛۭʹ͍͕ͯͨ͠ɺ ࠓճͦΕ͕ͳ͍
ίϐʔ͞Ε͕͍ͨͭͬͯΔͷͰɾɾɾʁ ͙͢ʹGVMMHD͞ΕΔ͔Βஔ͍͓ͯͬͯ͘͜ͱ͔ͳʁ
ঢࣦ֨ഊͨ͜͠ͱΛ௨ͯ͠ऴྃ
·ͱΊ
&EFO :PVOH(FO 0ME(FO 'SPN 5P 0ME 4VWBJWFS
&EFO :PVOH(FO 0ME(FO 'SPN 5P 0ME 4VWBJWFS " # $
%
&EFO :PVOH(FO 0ME(FO 'SPN 5P 0ME 4VWBJWFS " # $
% ; ৽͍͠Πϯελϯε &EFOʹஔ
&EFO :PVOH(FO 0ME(FO 'SPN 5P 0ME 4VWBJWFS " # $
% ; ($SPPUΛ5Pίϐʔ "` ;` %`
&EFO :PVOH(FO 0ME(FO 'SPN 5P 0ME 4VWBJWFS " # $
% ; ($SPPU͔ΒḷΕΔΦϒδΣΫτΛ 5Pίϐʔ "` ;` %` $`
&EFO :PVOH(FO 0ME(FO 'SPN 5P 0ME 4VWBJWFS # &EFOͱ'SPNΛۭʹ͢Δ "`
;` %` $`
&EFO :PVOH(FO 0ME(FO 5P 'SPN 0ME 4VWBJWFS # 'SPNͱ5PΛೖΕସ͑Δ "`
;` %` $`