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
Webcamp Zagreb 2013
Search
Goran Peretin
October 27, 2013
Programming
1
210
Webcamp Zagreb 2013
Slides for a talk "Concurrency" that I gave at Webcamp Zagreb.
Goran Peretin
October 27, 2013
Tweet
Share
More Decks by Goran Peretin
See All by Goran Peretin
On Concurrency
gperetin
1
300
Greenlet-based concurrency
gperetin
2
550
WebcampZG 2012
gperetin
1
380
Other Decks in Programming
See All in Programming
『WordPressコミュニティで学ぶ』OSS貢献の多様性
ippey
0
230
Runtime Objects in Rust
mitsuhiko
0
220
TypeScriptで使いやすいOpenAPIの書き方
yukimochi_dwango
1
780
Sheets API使ってみた
toshi0383
2
180
株式会社ゼネテック
genetec
0
120
Try creating your own orderedmap
kazamori
1
280
CDKコントリビュートの最初の壁を越えよう! -簡単issueの見つけ方-
badmintoncryer
3
420
The Cutting Edge Of Versioning (LambdaConf 2024)
chriskrycho
0
250
[RubyKaigi 2024] Ruby Mixology 101: adding shots of PHP, Elixir, and more
palkan
0
120
TypeScriptの型とパフォーマンス (TSKaigi 2024)
ypresto
14
4.5k
酒飲んでたらテックリードになった話
spbaya0141
0
210
TypeScriptから始める VR生活
tamagokakeg
2
110
Featured
See All Featured
Embracing the Ebb and Flow
colly
80
4.2k
The Illustrated Children's Guide to Kubernetes
chrisshort
32
47k
Bash Introduction
62gerente
605
210k
Teambox: Starting and Learning
jrom
128
8.4k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
228
16k
Design by the Numbers
sachag
274
18k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
126
32k
Code Review Best Practice
trishagee
56
15k
The Invisible Customer
myddelton
114
12k
Intergalactic Javascript Robots from Outer Space
tanoku
266
26k
GraphQLの誤解/rethinking-graphql
sonatard
56
9.3k
Visualization
eitanlees
137
14k
Transcript
Concurrency @gperetin Sunday, October 27, 13
Goran Peretin (@gperetin) Sunday, October 27, 13
Goran Peretin (@gperetin) Sunday, October 27, 13
Goran Peretin (@gperetin) Sunday, October 27, 13
Goran Peretin (@gperetin) Sunday, October 27, 13
Sadržaj Concurrency Parallelism Problemi/rješenja Sunday, October 27, 13
Sunday, October 27, 13
Demo time! Sunday, October 27, 13
Python3 & Ruby Sunday, October 27, 13
Concurrency Izvršavanje više taskova u nekom vremenskom periodu. Sunday, October
27, 13
Parallelism Izvršavanje više taskova istovremeno. Sunday, October 27, 13
Concurrency != Parallelism Sunday, October 27, 13
Process-based concurrency task == proces Sunday, October 27, 13
Thread-based concurrency task == thread Sunday, October 27, 13
GIL (Ruby & Python) • Global Interpreter Lock • dva
threada se ne mogu izvršavati istovremeno Sunday, October 27, 13
Ruby i Python ne mogu imati thread-based parallelism. Sunday, October
27, 13
PHP Sunday, October 27, 13
PHP • PHP nema threadove • Nije thread-safe • PHP-FPM
• Apache (mod_php) Sunday, October 27, 13
Java & .NET Sunday, October 27, 13
Java & .NET Sunday, October 27, 13
Problemi? • broj procesa i threadova • RAM Sunday, October
27, 13
Blocking I/O OS pauzira thread koji napravi I/O request. Za
izvršavanje drugog requesta treba nam novi thread. Sunday, October 27, 13
Rješenja? Non-blocking I/O Lightweight processes Sunday, October 27, 13
Non-blocking I/O Twisted, Tornado EventMachine Node.js Sunday, October 27, 13
Lightweight processes Erlang (actors) Go (goroutines) --- Python (greenlets) Ruby
(fibers) Sunday, October 27, 13
Što da koristim? Sunday, October 27, 13
Hvala! Pitanja? Sunday, October 27, 13