servers are memory hungry
most requests die young
give each request handler an arena
bound arena size
bound # of arenas
useful properties of this idea
isolation
reliability
efficiency
no free lunch and all that
cannot stream
output
peak = average
memory consumption
cannot scale
request handlers are io-heavy
database IO
network IO
we must be in control of all allocation
custom global allocator
custom async executor/reactor
work in progress
async with http/2 using mio/hyper
a custom allocator using one mmap call
before the end of the year
benchmark (hard)
write handlers in roc
Nea tightly bounds web server memory consumption
Implementing NTP in a modern language
Social
Technical
benefits of rust
tooling
crates.io
no segfaults
project setup
pure core
effectful shell
contributing back
pub struct hwtstamp_config {
pub flags: ::c_int,
pub tx_type: ::c_int,
pub rx_filter: ::c_int,
}
Libc
Tokio
April 2022
start ISRG project
November 2022
NTS
April 2023
security audit
alpha release
Summer 2023
macOS/freeBSD/musl support
Fall 2023
1.0 release
Future
NTPv5
work in progress
early adopters welcome
A Protocol for synchronizing Time over the Network
essential for consistency and security
ntpd-rs is looking for early adopters
Folkert de Vries - Tweede Golf - Roc - github.com/folkertdev