]> Dogcows Code - chaz/talk-event-driven-programming-in-perl/blob - notes.txt
add reactor graph and asyncawait slides
[chaz/talk-event-driven-programming-in-perl] / notes.txt
1
2 Topics:
3
4 1. Evolution of event-driven programming:
5 X Wait for a key press or line of text.
6 X Interrupts (hardware and software).
7 X Modern event loops
8
9 2. Types of events in modern applications:
10 X IO
11 X Timer
12 X User input
13 X Signal
14 X Anything that can spontaneously happen in the real world.
15
16 3. How to write a modern event-loop.
17 X kernel facilities (poll, select, etc.)
18
19 4. List of already-built event loops.
20 - EV
21 - Glib
22
23 5. Event-driven programming in Perl
24 - POE
25 - AnyEvent
26 - IO::Async
27 - Mojo::IOLoop
28
29 6. Special considerations
30 - Exceptions in event-driven code.
31 - SIGPIPE, EPIPE - might have more to do with long-lived processes rather than
32 just event-driven programming, but still something to watch out for...
33
34 7. Promises:
35 - Future
36 - Future::AsyncAwait
37 - Future::Utils
38
39 8. Real-world uses for event-driven applications:
40 - Webhooks
41 - PubsubHubbub
42 - msg queue
43
44
45
46
47 Other topics:
48 X What is event-driven programming?
49 - Reactor: event loop that can receive multiple types of events and
50 demultiplex them, delivering them to appropriate handlers.
51 - C10k problem
52 - EDA (event-driven architecture)
53 - Benefits of Event-driven
54
55 Traditional programs:
56 - CGI - web server calls your program, and your program does its thing and
57 finishes.
58 - filters - grep, less, sed, etc. Like a function, the program takes its input
59 and produces some output.
60
61 Perl features:
62 - first-class subroutines
63
64 - Can mix traditional architecture with event-driven (like docker that
65 provides both an http and command-line interface.
66
This page took 0.034026 seconds and 4 git commands to generate.