Suche senden
Hochladen
Web crawl with Elixir
•
3 gefällt mir
•
719 views
이재철
Folgen
스켈터랩스에서 Elixir 로 web site 를 크롤하면서 겪은 경험을 공유합니다. 의견은 이재철(mr.jechol@gmail.com) 으로 주세요.
Weniger lesen
Mehr lesen
Technologie
Melden
Teilen
Melden
Teilen
1 von 38
Jetzt herunterladen
Downloaden Sie, um offline zu lesen
Empfohlen
Optimizing Your Site
Optimizing Your Site
rtvenge
SSDs are Awesome
SSDs are Awesome
Barry Abrahamson
Paperclip
Paperclip
Patrick Crowley
Sergei Nesterov "How to Speed Up the Build of Large Projects. Overview and C...
Sergei Nesterov "How to Speed Up the Build of Large Projects. Overview and C...
LogeekNightUkraine
Laravel and SOLR
Laravel and SOLR
Peter Steenbergen
Ec2onrails
Ec2onrails
Yi-Ting Cheng
Put a Button on It: Removing Barriers to Going Fast
Put a Button on It: Removing Barriers to Going Fast
OSCON Byrum
Oracle APEX Nitro
Oracle APEX Nitro
Marko Gorički
Empfohlen
Optimizing Your Site
Optimizing Your Site
rtvenge
SSDs are Awesome
SSDs are Awesome
Barry Abrahamson
Paperclip
Paperclip
Patrick Crowley
Sergei Nesterov "How to Speed Up the Build of Large Projects. Overview and C...
Sergei Nesterov "How to Speed Up the Build of Large Projects. Overview and C...
LogeekNightUkraine
Laravel and SOLR
Laravel and SOLR
Peter Steenbergen
Ec2onrails
Ec2onrails
Yi-Ting Cheng
Put a Button on It: Removing Barriers to Going Fast
Put a Button on It: Removing Barriers to Going Fast
OSCON Byrum
Oracle APEX Nitro
Oracle APEX Nitro
Marko Gorički
New Features Coming in Browsers (RIT '09)
New Features Coming in Browsers (RIT '09)
jeresig
Holistic JavaScript Performance
Holistic JavaScript Performance
jeresig
jQuery and the W3C
jQuery and the W3C
jeresig
Speed Up Your APEX Apps with JSON and Handlebars
Speed Up Your APEX Apps with JSON and Handlebars
Marko Gorički
Apache Camel K - Copenhagen v2
Apache Camel K - Copenhagen v2
Claus Ibsen
Google Dev Fest 2016 - Realm database
Google Dev Fest 2016 - Realm database
Phạm Khắc
Day 4 - Models
Day 4 - Models
Barry Jones
Day 2 - Intro to Rails
Day 2 - Intro to Rails
Barry Jones
Windy cityrails performance_tuning
Windy cityrails performance_tuning
John McCaffrey
Harnessing Spark and Cassandra with Groovy
Harnessing Spark and Cassandra with Groovy
Steve Pember
Apache Camel K - Copenhagen
Apache Camel K - Copenhagen
Claus Ibsen
Migrating Legacy Data (Ruby Midwest)
Migrating Legacy Data (Ruby Midwest)
Patrick Crowley
Day 9 - PostgreSQL Application Architecture
Day 9 - PostgreSQL Application Architecture
Barry Jones
Integrating systems in the age of Quarkus and Camel
Integrating systems in the age of Quarkus and Camel
Claus Ibsen
PharoDAYS 2015: On Relational Databases by Guille Polito
PharoDAYS 2015: On Relational Databases by Guille Polito
Pharo
Camel Day Italy 2021 - What's new in Camel 3
Camel Day Italy 2021 - What's new in Camel 3
Claus Ibsen
Aws, an intro to startups
Aws, an intro to startups
Subramanyam Kasibhat
Customer Presentaion-LittleBigPlanet: Taking an Idea to Market Using AWS
Customer Presentaion-LittleBigPlanet: Taking an Idea to Market Using AWS
Amazon Web Services
High Performance WordPress - WordCamp Jerusalem 2010
High Performance WordPress - WordCamp Jerusalem 2010
Barry Abrahamson
HAProxyでMySQL HA on Amazon EC2
HAProxyでMySQL HA on Amazon EC2
Michael H. Oshita
Phoenix with Elm
Phoenix with Elm
이재철
Understanding deep learning requires rethinking generalization (2017) 1/2
Understanding deep learning requires rethinking generalization (2017) 1/2
정훈 서
Weitere ähnliche Inhalte
Was ist angesagt?
New Features Coming in Browsers (RIT '09)
New Features Coming in Browsers (RIT '09)
jeresig
Holistic JavaScript Performance
Holistic JavaScript Performance
jeresig
jQuery and the W3C
jQuery and the W3C
jeresig
Speed Up Your APEX Apps with JSON and Handlebars
Speed Up Your APEX Apps with JSON and Handlebars
Marko Gorički
Apache Camel K - Copenhagen v2
Apache Camel K - Copenhagen v2
Claus Ibsen
Google Dev Fest 2016 - Realm database
Google Dev Fest 2016 - Realm database
Phạm Khắc
Day 4 - Models
Day 4 - Models
Barry Jones
Day 2 - Intro to Rails
Day 2 - Intro to Rails
Barry Jones
Windy cityrails performance_tuning
Windy cityrails performance_tuning
John McCaffrey
Harnessing Spark and Cassandra with Groovy
Harnessing Spark and Cassandra with Groovy
Steve Pember
Apache Camel K - Copenhagen
Apache Camel K - Copenhagen
Claus Ibsen
Migrating Legacy Data (Ruby Midwest)
Migrating Legacy Data (Ruby Midwest)
Patrick Crowley
Day 9 - PostgreSQL Application Architecture
Day 9 - PostgreSQL Application Architecture
Barry Jones
Integrating systems in the age of Quarkus and Camel
Integrating systems in the age of Quarkus and Camel
Claus Ibsen
PharoDAYS 2015: On Relational Databases by Guille Polito
PharoDAYS 2015: On Relational Databases by Guille Polito
Pharo
Camel Day Italy 2021 - What's new in Camel 3
Camel Day Italy 2021 - What's new in Camel 3
Claus Ibsen
Aws, an intro to startups
Aws, an intro to startups
Subramanyam Kasibhat
Customer Presentaion-LittleBigPlanet: Taking an Idea to Market Using AWS
Customer Presentaion-LittleBigPlanet: Taking an Idea to Market Using AWS
Amazon Web Services
High Performance WordPress - WordCamp Jerusalem 2010
High Performance WordPress - WordCamp Jerusalem 2010
Barry Abrahamson
HAProxyでMySQL HA on Amazon EC2
HAProxyでMySQL HA on Amazon EC2
Michael H. Oshita
Was ist angesagt?
(20)
New Features Coming in Browsers (RIT '09)
New Features Coming in Browsers (RIT '09)
Holistic JavaScript Performance
Holistic JavaScript Performance
jQuery and the W3C
jQuery and the W3C
Speed Up Your APEX Apps with JSON and Handlebars
Speed Up Your APEX Apps with JSON and Handlebars
Apache Camel K - Copenhagen v2
Apache Camel K - Copenhagen v2
Google Dev Fest 2016 - Realm database
Google Dev Fest 2016 - Realm database
Day 4 - Models
Day 4 - Models
Day 2 - Intro to Rails
Day 2 - Intro to Rails
Windy cityrails performance_tuning
Windy cityrails performance_tuning
Harnessing Spark and Cassandra with Groovy
Harnessing Spark and Cassandra with Groovy
Apache Camel K - Copenhagen
Apache Camel K - Copenhagen
Migrating Legacy Data (Ruby Midwest)
Migrating Legacy Data (Ruby Midwest)
Day 9 - PostgreSQL Application Architecture
Day 9 - PostgreSQL Application Architecture
Integrating systems in the age of Quarkus and Camel
Integrating systems in the age of Quarkus and Camel
PharoDAYS 2015: On Relational Databases by Guille Polito
PharoDAYS 2015: On Relational Databases by Guille Polito
Camel Day Italy 2021 - What's new in Camel 3
Camel Day Italy 2021 - What's new in Camel 3
Aws, an intro to startups
Aws, an intro to startups
Customer Presentaion-LittleBigPlanet: Taking an Idea to Market Using AWS
Customer Presentaion-LittleBigPlanet: Taking an Idea to Market Using AWS
High Performance WordPress - WordCamp Jerusalem 2010
High Performance WordPress - WordCamp Jerusalem 2010
HAProxyでMySQL HA on Amazon EC2
HAProxyでMySQL HA on Amazon EC2
Andere mochten auch
Phoenix with Elm
Phoenix with Elm
이재철
Understanding deep learning requires rethinking generalization (2017) 1/2
Understanding deep learning requires rethinking generalization (2017) 1/2
정훈 서
How to Become a Thought Leader in Your Niche
How to Become a Thought Leader in Your Niche
Leslie Samuel
Easy Virtual Reality
Easy Virtual Reality
Mark Billinghurst
Web assembly 맛보기
Web assembly 맛보기
GyeongSeok Seo
17 Ways to Design a Presentation People Want to View
17 Ways to Design a Presentation People Want to View
Jim MacLeod
SXSW 2016: The Need To Knows
SXSW 2016: The Need To Knows
Ogilvy Consulting
The Physical Interface
The Physical Interface
Josh Clark
ENCUENTRO 2
ENCUENTRO 2
wilfredogf
From World's Fair to World's Tech Leader: St. Louis, The Next 100 Years
From World's Fair to World's Tech Leader: St. Louis, The Next 100 Years
Gabe Lozano
Balancing speed & agility with security & governance (July 2016)
Balancing speed & agility with security & governance (July 2016)
Rajiv Renganathan
Distributed system in Elixir
Distributed system in Elixir
Changwook Park
Clojure values
Clojure values
Christophe Grand
Clojure class
Clojure class
Aysylu Greenberg
What can be done with Java, but should better be done with Erlang (@pavlobaron)
What can be done with Java, but should better be done with Erlang (@pavlobaron)
Pavlo Baron
Clojure made-simple - John Stevenson
Clojure made-simple - John Stevenson
JAX London
Winning the Erlang Edit•Build•Test Cycle
Winning the Erlang Edit•Build•Test Cycle
Rusty Klophaus
Elixir talk
Elixir talk
Cory Gwin
Messaging With Erlang And Jabber
Messaging With Erlang And Jabber
l xf
High Performance Erlang
High Performance Erlang
PerconaPerformance
Andere mochten auch
(20)
Phoenix with Elm
Phoenix with Elm
Understanding deep learning requires rethinking generalization (2017) 1/2
Understanding deep learning requires rethinking generalization (2017) 1/2
How to Become a Thought Leader in Your Niche
How to Become a Thought Leader in Your Niche
Easy Virtual Reality
Easy Virtual Reality
Web assembly 맛보기
Web assembly 맛보기
17 Ways to Design a Presentation People Want to View
17 Ways to Design a Presentation People Want to View
SXSW 2016: The Need To Knows
SXSW 2016: The Need To Knows
The Physical Interface
The Physical Interface
ENCUENTRO 2
ENCUENTRO 2
From World's Fair to World's Tech Leader: St. Louis, The Next 100 Years
From World's Fair to World's Tech Leader: St. Louis, The Next 100 Years
Balancing speed & agility with security & governance (July 2016)
Balancing speed & agility with security & governance (July 2016)
Distributed system in Elixir
Distributed system in Elixir
Clojure values
Clojure values
Clojure class
Clojure class
What can be done with Java, but should better be done with Erlang (@pavlobaron)
What can be done with Java, but should better be done with Erlang (@pavlobaron)
Clojure made-simple - John Stevenson
Clojure made-simple - John Stevenson
Winning the Erlang Edit•Build•Test Cycle
Winning the Erlang Edit•Build•Test Cycle
Elixir talk
Elixir talk
Messaging With Erlang And Jabber
Messaging With Erlang And Jabber
High Performance Erlang
High Performance Erlang
Ähnlich wie Web crawl with Elixir
Page Performance
Page Performance
atorreno
Алексей Швайка "Bundling: you are doing it wrong"
Алексей Швайка "Bundling: you are doing it wrong"
Fwdays
Windycityrails page performance
Windycityrails page performance
John McCaffrey
State of the Web
State of the Web
Dmitry Buzdin
Server Side Rendering, caching and performance
Server Side Rendering, caching and performance
Ateev Chopra
Cvcc performance tuning
Cvcc performance tuning
John McCaffrey
Scaling 101
Scaling 101
Leonard Lin
(ARC348) Seagull: How Yelp Built A System For Task Execution
(ARC348) Seagull: How Yelp Built A System For Task Execution
Amazon Web Services
Dyna trace
Dyna trace
Yasmine Gaber
Making it fast: Zotonic & Performance
Making it fast: Zotonic & Performance
Arjan
performance.ppt
performance.ppt
fakeaccount225095
Building Lightning Fast Websites (for Twin Cities .NET User Group)
Building Lightning Fast Websites (for Twin Cities .NET User Group)
strommen
Memory Issues in Ruby on Rails Applications
Memory Issues in Ruby on Rails Applications
Simeon Simeonov
SXSW 2012 JavaScript MythBusters
SXSW 2012 JavaScript MythBusters
Elena-Oana Tabaranu
Open-source website performance tools
Open-source website performance tools
Artur Cistov
Life on the Edge with ESI
Life on the Edge with ESI
Kit Chan
Tips for a Faster Website
Tips for a Faster Website
Rayed Alrashed
Deployment de Rails
Deployment de Rails
elliando dias
HTML5: Introduction
HTML5: Introduction
Guillermo Paz
Mashups with Drupal and QueryPath
Mashups with Drupal and QueryPath
Matt Butcher
Ähnlich wie Web crawl with Elixir
(20)
Page Performance
Page Performance
Алексей Швайка "Bundling: you are doing it wrong"
Алексей Швайка "Bundling: you are doing it wrong"
Windycityrails page performance
Windycityrails page performance
State of the Web
State of the Web
Server Side Rendering, caching and performance
Server Side Rendering, caching and performance
Cvcc performance tuning
Cvcc performance tuning
Scaling 101
Scaling 101
(ARC348) Seagull: How Yelp Built A System For Task Execution
(ARC348) Seagull: How Yelp Built A System For Task Execution
Dyna trace
Dyna trace
Making it fast: Zotonic & Performance
Making it fast: Zotonic & Performance
performance.ppt
performance.ppt
Building Lightning Fast Websites (for Twin Cities .NET User Group)
Building Lightning Fast Websites (for Twin Cities .NET User Group)
Memory Issues in Ruby on Rails Applications
Memory Issues in Ruby on Rails Applications
SXSW 2012 JavaScript MythBusters
SXSW 2012 JavaScript MythBusters
Open-source website performance tools
Open-source website performance tools
Life on the Edge with ESI
Life on the Edge with ESI
Tips for a Faster Website
Tips for a Faster Website
Deployment de Rails
Deployment de Rails
HTML5: Introduction
HTML5: Introduction
Mashups with Drupal and QueryPath
Mashups with Drupal and QueryPath
Kürzlich hochgeladen
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
The Digital Insurer
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024
Scott Keck-Warren
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
soniya singh
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
Sinan KOZAK
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
Anna Loughnan Colquhoun
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
Michael W. Hawkins
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
Delhi Call girls
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
Maria Levchenko
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Igalia
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
Malak Abu Hammad
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
ThousandEyes
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
HampshireHUG
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC Architecture
Pixlogix Infotech
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
gurkirankumar98700
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
vu2urc
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
HostedbyConfluent
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
giselly40
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Alan Dix
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
Gabriella Davis
Kürzlich hochgeladen
(20)
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC Architecture
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
Web crawl with Elixir
1.
WEB CRAWL with Elixir
2.
Who am I? •
Jechol Lee (mr.jechol@gmail.com) • Software engineer at Skelterlabs • Loves elixir, elm, ruby • We are HIRING!
3.
First try
4.
First try
5.
First try Database Crawler JSONHTTP Crawler
HTMLHTTP Products Products Save Queue Products
6.
SQL Site A ES SaveQueue Task Page Task Item Task Item product req Sup Sup (site A) Sup (simple 1
for 1) Task.SupTask.Sup Sup (site B) progress start_link
7.
Crawler speed >
Site rate limit Crawler WebsiteHTTP 10/s
8.
Blocked Crawler WebsiteHTTP 10/s BLOCKED
9.
DB speed <
Crawler speed Save QueueDatabase Crawler100/s 200/s
10.
Memory exhaustion Save QueueDatabase Crawler100/s
200/s SaveQueue Out of Memory
11.
Solution
12.
OOM Problem :
Producer driven 200/s Crawler Save QueueDatabase 100/s
13.
GenStage : Demand-driven Crawler Save Queue DEMAND
100
14.
GenStage : Demand-driven Crawler Save Queue DEMAND
100 100
15.
Elixir GenStage (2016
/ 7)
16.
GenStage : Demand-driven Crawler Save Queue DEMAND
100 100Database 100/s
17.
Memory usage Producer driven Demand
driven
18.
Site rate limit
:TokenBucket
19.
Site rate limit
:TokenBucket Crawler WebsiteHTTP Burst Token Bucket 60/min
20.
Network Requests Overflow Page
1
21.
Network Requests Overflow Page
2 Page 1 item Page 1 item Page 1 item
22.
Network Requests Overflow Page
1 item Page 2 item Page 3 Page 1 item Page 2 item Page 2 item
23.
Network Requests Overflow Can't
depend on random processing order. Page 1 item Page 2 item Page 4 Page 3 item Page 1 item Page 2 item Page 3 item Page 3 item
24.
Priority Queue Page 1
item Page 2 item Page 3 Page 1 item Page 1 item Page 2 item Page 2 item
25.
Revised Architecture
26.
Existing Architecture SQL ES SaveQueue HTML Crawler C21 JSON Crawler Lego
27.
Demand-driven PRODUCT DEMAND DEMAND PRODUCT SQL ES SaveQueue HTML Crawler C21 JSON Crawler Lego
28.
Rate limit byTokenBucket twotap.com c21stores.com WebProxy PriorityQueue + TokenBucket HTTP SPAWN HTML
Parser C21 HTML Parser C21 HTML Crawler C21 JSON Crawler Lego
29.
Error monitoring ErrorMonitor sentry.io MONITOR {:DOWN, :page_not_found} HTML Crawler C21
30.
Fault-tolerance by SupervisionTree Supervisor Supervisor C21 Task Supervisor ErrorMonitor WebProxy PriorityQueue + TokenBucket HTML
Parser C21 HTML Parser C21 SaveQueue HTML Crawler C21 JSON Crawler Lego
31.
Tree for Multiple
Crawlers JSON Crawler GNC Supervisor JCPenney Supervisor Supervisor C21 Task Supervisor ErrorMonitor WebProxy PriorityQueue + TokenBucket HTML Parser C21 HTML Parser C21 SaveQueue HTML Crawler C21 JSON Crawler Lego
32.
Final JSON Crawler GNC Supervisor JCPenney Supervisor Supervisor C21 Task Supervisor ErrorMonitor sentry.io MONITOR {:DOWN, :page_not_found} twotap.com c21stores.com WebProxy PriorityQueue + TokenBucket HTTP SPAWN HTML Parser C21 HTML
Parser C21 PRODUCT DEMAND DEMAND PRODUCT SQL ES SaveQueue HTML Crawler C21 JSON Crawler Lego
33.
Building Blocks
34.
GenStage Task Task.Supervisor GenServer Supervisor Agent
35.
GenServer vs Task •
Tasks don't provide services. → No handle_call, etc. • Just run a function and exit.
36.
Task.Supervisor.async • Not trap
exit. • Caller process dies together. • Not restart task.
37.
Task.async vs Task.Supervisor.async Only later builds
supervision relationship so that visible using observer.
38.
End
Jetzt herunterladen