Erlang for Authoritative DNS Anthony Eden Founder of DNSimple
2
Benefits of Erlang
3
Binary Bit Syntax
4
Pattern Matching
5
Processes and OTP
6
Spawn- Init - Receive - Exit
7
Packet Cache
8
Thinking in Erlang
9
Operations
10
Working around what Erlang isn't good at
11
Identify Bottlenecks
12
Optimize sequential paths
13
Reduce garbage collection
14
Packet read loop
15
Process pool
16
In-memory cache of zone data
17
Remote zone loading from a special purpose server
18
Current Performance Metrics
19
SO_REUSEPORT
20
Command & Control
Description:
Explore the advantages of using Erlang for implementing an authoritative DNS server in this 41-minute conference talk from Strange Loop 2013. Discover why Erlang was chosen for developing a new authoritative DNS server at DNSimple, and learn about the language features that proved beneficial during the development process. Gain insights into overcoming specific performance bottlenecks and challenges faced during the project. Delve into topics such as binary bit syntax, pattern matching, processes and OTP, packet caching, and thinking in Erlang. Examine strategies for working around Erlang's limitations, optimizing sequential paths, reducing garbage collection, and implementing process pools. Learn about current performance metrics and the use of SO_REUSEPORT for improved efficiency. This talk by Anthony Eden, founder of DNSimple, offers valuable lessons for developers interested in DNS server implementation and Erlang programming.