Company
Date Published
Author
Tom Preston-Werner
Word count
830
Language
English
Hacker News points
None

Summary

Ernie, a hybrid BERT-RPC server developed for GitHub's sharded file server architecture, has undergone significant updates with the release of versions 2.0 and 2.1, introducing new features that enhance performance and flexibility. The server now allows native Erlang handlers, reducing dependency on Ruby processes and improving concurrency, while also supporting language-agnostic external handlers for broader compatibility. Notable features include shadowing, which facilitates the gradual migration of functions from Ruby to Erlang, and predicate shadowing for conditional function execution. A connection priority queue ensures efficient handling of high-priority tasks, and a new access logging system provides detailed tracking of server activity. These advancements aim to create a more robust and flexible RPC server, enabling efficient management of GitHub's expanding storage architecture.