When "letting it crash" is not enough
This essay explores the connection between Erlang's process supervision, state management and durable execution.
The latest blog posts to take off on Hacker News. 569 posts.
This essay explores the connection between Erlang's process supervision, state management and durable execution.
In many large-scale web services, multiple layers of stateless and stateful services are seperated by load balancers. Load balancing can be done with dedicated hardware, with dedicated software load balancers, using DNS trickery or through a load-balancing mechanism in the client. In large systems, the resources and…
IBM announced IBM® LinuxONE 4 Express, extending the latest performance, security and AI capabilities of LinuxONE to small and medium sized businesses and within new data center environments.
For a lark I made an ext4 file system with a billion empty files. https://gitlab.com/larswirzenius/create-empty-files has the program I wrote for this. I've done this before , but this time I made it a little simpler for me to do it again: everything in one Rust program rather than clunky scripts.
The current article describes a series of Java Virtual Machine (JVM) benchmarks with a primary focus on top-tier Just-In-Time (JIT) compilers, such as C2 JIT, and Graal JIT. The benchmarks are structured in three distinct (artificial) categories:
An investigation into the internals of Sidekiq, one of the most popular Ruby background job processors.
Almost five years ago I wrote a brief history about .net on non-Windows platforms . I stumbled over that article now and it resurfaced traumatic memories of navigating .net development on Linux and MacOS.
How is a binary executable organized? Let's explore it!
Request rate is the number of requests that arrive, or are serviced, or leave, during some period.
RavenDB is a distributed document database which repeatedly advertises its support for ACID transactions. 1 It’s intended for OLTP workloads, and offers a variety of ETL paths for exporting data to other systems. Its transactional API revolves around a session handle, which “represents a single business transaction on…
This is one of several papers I’ll be reading from 2023’s Symposium on Operating Systems Principles (SOSP). If you’d like to receive regular updates as soon as they’re published, check out my newsletter or follow me on the site formerly known as Twitter . Enjoy!
A hands-on introduction to database internals. Build an LSM storage engine with SSTables, compaction, WAL recovery, MVCC, and transactions.
It's well known that syscalls are expensive. And that software mitigations against CPU bugs (such as Meltdown) even have made them more expensive. But how expensive are they really? To begin to answer this question I wrote a small micro-benchmark in order to measure the minimal costs of a syscall …
With the release of WASI Preview 2, we take a step back and look at why it matters for wasmCloud and the WebAssembly ecosystem.
Have you ever tried to compile a helloworld Rust program in --release mode? If yes, have you seen its binary size? Suffice to say, it’s not exactly small. Or at least it wasn’t small until recently. This post details how I found about the issue and my attempt to fix it in Cargo.
Another rogue patcher.
So, there's this function. It's called a lot. More importantly, all those calls are on the critical path of a key user interaction. Let's talk about making it fast.
A reader at respected airline industry site Leeham News offered a comment that suggests they have access to Boeing’s internal quality control systems, and shares details of what they saw regarding the Boeing 737 MAX 9 flown by Alaska Airlines that had a door plug detach inflight, causing rapid decompression of the…
What is bufferbloat, why is it bad, and what to do about it
Creating standalone Linux applications with lone.
A few months ago, I got given a laptop with a very interesting condition. The BIOS setup menu was supposedly inaccessible, and nothing apart from the default boot option works. Time to investigate to see what is actually happening and what we can do about it.
Ceph is an open source distributed storage system designed to evolve with data.
sourcehut is a network of useful open source tools for software project maintainers and collaborators, including git repos, bug tracking, continuous integration, and mailing lists.
When a service fails to start up enough times in a row, systemd gives up on it. On servers, this isn’t what I want — in general it’s helpful for automated recovery if daemons are restarted indefinitely. As long as you don’t have circular dependencies between services, all your services will eventually come up after…
A tour on how DOS was able to use most of the 1 MB address space of the 8086
Apple uses Cassandra and FoundationDB for CloudKit, their cloud backend service. We take a look into how exactly each is used within their cloud and the problems they've solved.
I’ve spent quite a lot of time messing with x86_64 page tables, understanding address translation is not easy and when I started learning about it I felt like a lot of the material out there on how it works was hard for me to wrap my head around. So in this blog post I am going to attempt to provide a kind of “what I…