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
jsconfeu 2018
Search
Yosuke Furukawa
PRO
June 20, 2018
Programming
0
230
jsconfeu 2018
NodeGirls で発表した jsconfeu 2018 の話です。
Yosuke Furukawa
PRO
June 20, 2018
Tweet
Share
More Decks by Yosuke Furukawa
See All by Yosuke Furukawa
デザインシステムが必須の時代に
yosuke_furukawa
PRO
2
210
Node.js, Deno, Bun 最新動向とその所感について
yosuke_furukawa
PRO
10
5k
Welcome JSConf.jp 2024
yosuke_furukawa
PRO
1
4.6k
tc39 x jsconf.jp Panel Discussion 2024
yosuke_furukawa
PRO
0
310
Removing Corepack
yosuke_furukawa
PRO
9
1.9k
JavaScript Runtime とはなにか
yosuke_furukawa
PRO
15
3k
Strip Types と Storage
yosuke_furukawa
PRO
4
480
Module Harmony について
yosuke_furukawa
PRO
4
1.8k
LTのやり方
yosuke_furukawa
PRO
16
2.9k
Other Decks in Programming
See All in Programming
Agentic AI: Evolution oder Revolution
mobilelarson
PRO
0
180
「やめとこ」がなくなった — 1月にZennを始めて22本書いた AI共創開発のリアル
atani14
0
390
CS教育のDX AIによる育成の効率化
niftycorp
PRO
0
130
Ruby x Terminal
a_matsuda
7
600
文字コードの話
qnighy
44
17k
PostgreSQL を使った快適な go test 環境を求めて
otakakot
0
560
CSC307 Lecture 15
javiergs
PRO
0
250
Docコメントで始める簡単ガードレール
keisukeikeda
1
120
The free-lunch guide to idea circularity
hollycummins
0
230
Agent Skills Workshop - AIへの頼み方を仕組み化する
gotalab555
15
8.9k
米国のサイバーセキュリティタイムラインと見る Goの暗号パッケージの進化
tomtwinkle
2
590
猫の手も借りたい!ので AIエージェント猫を作って社内に放した話 Claude Code × Container Lambda の Slack Bot "DevNeko"
naramomi7
0
270
Featured
See All Featured
The Invisible Side of Design
smashingmag
302
51k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
31
10k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
16k
Avoiding the “Bad Training, Faster” Trap in the Age of AI
tmiket
0
100
Making Projects Easy
brettharned
120
6.6k
Statistics for Hackers
jakevdp
799
230k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
37
6.3k
Embracing the Ebb and Flow
colly
88
5k
The Organizational Zoo: Understanding Human Behavior Agility Through Metaphoric Constructive Conversations (based on the works of Arthur Shelley, Ph.D)
kimpetersen
PRO
0
270
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
25
1.8k
Exploring the relationship between traditional SERPs and Gen AI search
raygrieselhuber
PRO
2
3.7k
Marketing to machines
jonoalderson
1
5k
Transcript
jsconf.eu 2018 2018/06/20 @ Recruit Technologies
Twitter: @yosuke_furukawa Github: yosuke-furukawa
jsconf.eu 2018
Ұ൪໘ന͔ͬͨͷ
None
Ұ൪໘ന͔ͬͨͷίϨ ͚ͩͲɻɻɻ
ৄࡉ͜͜Ͱ͠·͢
͓͠Ζ͔ͬͨηογϣϯ 3ͭհ EFOPҎ֎ͷ
None
৫ͷͨΊͷഉଞతͳߦҝͷݮ Β͠ํ • ܭଌͰ͖ͳ͍ͷཧͰ͖ͳ͍ • Ͳ͏ͬͯ৫Λվળ͢Δ͔ɺͱ͍͏৫վ ળͷ • ·͔͞ JavaScript
ͷΧϯϑΝϨϯεͰ৫վ ળωλΛฉ͘ͱɻɻɻ
None
৫ͷͨΊͷഉଞతͳߦҝͷݮ Β͠ํ • ͯ͢ͷεςʔΫϗϧμʔ͕Ͳ͏ײ͡Δ͔Λ ૾ͯ͠ɺͦͷίΞόϦϡʔΛఆٛ͠ͳ͍͞ • ܭଌͰ͖ͳ͍ͷޭ͔ͨ͠Ͳ͏͔ଌΕͣɺ ͦΕʹΑͬͯݕূͰ͖ͳ͍ͷͰɺܭଌͯ͠ς ετ͠ͳ͍͞ •
ςετͨ͠Βͦͷ݁ՌΛඪ४Խͯ͠Ίͳ͍͞
৫ͷͨΊͷഉଞతͳߦҝͷݮ Β͠ํ • ૾͢Δ͜ͱ • ఆٛ͢Δ͜ͱ • ద༻͢Δ͜ͱ • ݕূ͢Δ͜ͱ
• ඪ४Խ͢Δ͜ͱ • ͜ΕΒΛܧଓతʹ࣮ࢪ͢Δ͜ͱ
None
https://ejzimmer.github.io/event-loop-talk/#/
Event Loop ͬͯΑ͘ฉ͚͘Ͳ Կʁ • TaskͷཧͷͨΊͷΩϡʔʢΈ͍ͨͳΜʣ • TaskͬͯͳʹΑʁ document.body.addEventListener('keydown', (event)
=> { if (event.key === 'PageDown') { location.href = "/#/36"; } }); ͜͜ͷ͜ͱ
Event Loop ͬͯΑ͘ฉ͚͘Ͳ Կʁ
Event Loop ͬͯΑ͘ฉ͚͘Ͳ Կʁ • TaskͷཧͷͨΊͷΩϡʔʢΈ͍ͨͳΜʣ • TaskͬͯͳʹΑʁ document.body.addEventListener('keydown', (event)
=> { if (event.key === 'PageDown') { location.href = "/#/36"; } }); ͜͜ͷ͜ͱ
Event Loop ͬͯΑ͘ฉ͚͘Ͳ Կʁ • Πϕϯτϧʔϓʹ͍ͭͯղઆͯ͠Έͨ • ࠷ۙTaskͱ͍ͬͯsimpleͰͳ͘ɺPromise ͷmicrotaskwebworkerΛͬͨผεϨου ଘࡏ͢Δ
• Node.jsͷEventLoop·ͨಛత setImmediate process.nextTick ͕͋ͬͨΓɻ
None
None
None
None
None
TCPͷղઆ • ΊͪΌͪ͘Ό໘ന͔ͬͨɻ • Slow Start ͷղઆͱͯ͜͠ΕҎ্ແ͍͘Β͍ຊ࣭ Λଊ͑ͯͨɻ • Head
of Line blocking ΛύϯέʔΩΛ৯͗ͯ͢ ৯ΒΕͳ͘ͳͬͨঢ়ଶͱදݱͯͨ͠ͷਧ͍ͨ • രস͠ͳ͕ΒݟΕͨؾ͕͢Δɻ
None