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
Pipeline Architectures
Search
Michael Heap
October 03, 2015
Technology
760
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Pipeline Architectures
Pipeline Architectures at PHPNW15
Michael Heap
October 03, 2015
More Decks by Michael Heap
See All by Michael Heap
WTF are OKRs?
mheap
0
560
But why does the business care?
mheap
0
370
Advanced GitHub Actions
mheap
0
680
Controlling Your Kong Gateway With decK and CI/CD
mheap
0
720
API Standards 2.0
mheap
1
1.3k
API Standards 2.0
mheap
0
700
Dr Sheldon Cooper Presents: Fun with Flags (NEPHP)
mheap
0
790
Dr Sheldon Cooper Presents: Fun with Flags
mheap
0
1.3k
Behat for characterization tests
mheap
0
580
Other Decks in Technology
See All in Technology
トヨタ⽣産⽅式(TPS)⼊⾨
recruitengineers
PRO
3
880
Master Dataグループ紹介資料
sansan33
PRO
1
4.8k
ガバメント AI 源内を地方自治体は活用できるのか可能性と課題、期待について
takeda_h
1
410
2026-08-05 IBM Z開発最前線!IBM Bob Premium Package for Zって何がすごいの?
yutanonaka
0
130
【CEDEC2026】コードレビュー支援ツール開発から学ぶ:LLMを用いた業務システムの実践的な運用設計と誤出力対策
cygames
PRO
0
800
SO-101×VLAによる3色キューブのピック&プレース
abeja
0
210
老害フォレンジッカーはAI羊の夢を見るか?
tadmaddad
0
330
え?フロントエンドエンジニアの ワイがインフラも!?
puku0x
1
610
Contract One Engineering Unit 紹介資料
sansan33
PRO
0
19k
変化の早いClaude Codeを 書籍に落とし込む
oikon48
7
1.4k
サイバー捜査員研修(前半)
nomizone
1
2k
SmartHR Engineering Team Deck
smarthr
1
2.2k
Featured
See All Featured
[RailsConf 2023] Rails as a piece of cake
palkan
59
6.9k
svc-hook: hooking system calls on ARM64 by binary rewriting
retrage
2
480
How People are Using Generative and Agentic AI to Supercharge Their Products, Projects, Services and Value Streams Today
helenjbeal
1
260
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4.5k
Bridging the Design Gap: How Collaborative Modelling removes blockers to flow between stakeholders and teams @FastFlow conf
baasie
0
640
Test your architecture with Archunit
thirion
1
2.3k
Building Adaptive Systems
keathley
44
3.2k
How to make the Groovebox
asonas
2
2.3k
Why Mistakes Are the Best Teachers: Turning Failure into a Pathway for Growth
auna
0
200
AI: The stuff that nobody shows you
jnunemaker
PRO
9
910
It's Worth the Effort
3n
188
29k
How to build a perfect <img>
jonoalderson
1
5.9k
Transcript
Pipeline Architectures
@mheap
Pipelines
Tea/Coffee
Waterfall
Manufacturing
None
Engine: 20 mins Frame: 40 mins Windows: 10 mins
1x Engine: 20 mins 1x Frame: 40 mins 1x Windows:
10 mins
2x Engine: 20 mins 4x Frame: 40 mins 1x Windows:
10 mins
Code Pipelines
This is a unix system I know this
cat attendees.txt
cat attendees.txt | grep Michael
cat attendees.txt | grep Michael > michaels.txt
cat attendees.txt | grep Michael | sort > michaels.txt
Write programs that do one thing and do it well.
Write programs to work together. Write programs to handle text streams, because that is a universal interface.
read(file.txt). map(u => return u.name). filter(n => return n ==
“michael”)
read(file.txt). map(u => return u.name). filter(n => return n ==
“michael”)
read(file.txt). map(u => return u.name). filter(n => return n ==
“michael”)
producer.go channel <- sum foo.go val <- channel
app.php $bus->handle( new UserRegisteredEvent )
Input Processing Output
Controller Model View
Action Domain Responder
POST /foo Domain echo $twig->render()
$ php foo.php ‘bar’ Domain echo cli_output($output);
zmqpp <your application> zmqpp
zmqpp <your application> redis-pipe
nsq <your application> nsq
Human Pipelines
+ =
None
Data ??? Profit!
Data Profit!
Data Profit!
Data Profit!
Data Profit! JSON JSON JSON JSON
Data Profit! JSON JSON JSON JSON
Data Profit! JSON JSON JSON JSON ? ?
Data Profit! PHP PHP C++
Data Profit! PHP Golang C++
Data Profit! PHP Golang Michael
Building Pipelines
Data-Driven
Demand-Driven
Data-Driven
push/pull
Back Pressure
pub/sub
Sequence Numbers
Demand-Driven
Unique Jobs
Transport
Serialization
Error Handling
Testing Pipelines
Pros/Cons
Examples
https://www.flickr.com/photos/neotsn/2246759100/ https://www.flickr.com/photos/theenmoy/15255488518 https://www.flickr.com/photos/stuckincustoms/5109788502 https://www.flickr.com/photos/danielfoster/4725849931 https://www.flickr.com/photos/mzmo/8666989650 https://www.flickr.com/photos/usacehq/5529362681 https://www.flickr.com/photos/alpha_auer/5068482201/ https://www.flickr.com/photos/109144586@N08/14863759614/ https://www.flickr.com/photos/94418464@N08/9007117038 https://www.flickr.com/photos/swamibu/2868288357/
https://www.flickr.com/photos/sepehrehsani/5766453552/ https://www.flickr.com/photos/scubasteveo/296747958/ https://www.flickr.com/photos/56218409@N03/15371262455/ https://www.flickr.com/photos/jvk/4417106 https://www.flickr.com/photos/13523064@N03/14448815581 https://www.flickr.com/photos/jamesshade/473206000 https://www.flickr.com/photos/albertogp123/5843577306/ https://www.flickr.com/photos/dpstyles/4835354126/
Questions? @mheap joind.in/15428