diff --git a/internals.md b/internals.md index 9bf2367..4c77e64 100644 --- a/internals.md +++ b/internals.md @@ -23,9 +23,22 @@ Technologies Discord uses to provide the service, gathered from ## Programming languages: - [Elixir](https://elixir-lang.org/) for any real time communication, [source](https://blog.discordapp.com/scaling-elixir-f9b8e1e7c29b). + - [ex\_hash\_ring](https://github.com/discordapp/ex_hash_ring) + - [manifold](https://github.com/discordapp/manifold) + - [fastglobal](https://github.com/discordapp/fastglobal) + - [semaphore](https://github.com/discordapp/semaphore) + - [instruments](https://github.com/discordapp/instruments) + - [deque](https://github.com/discordapp/deque) + - [Use of GenStage](https://blog.discordapp.com/how-discord-handles-push-request-bursts-of-over-a-million-per-minute-with-elixirs-genstage-8f899f0221b4) - [Python](https://www.python.org/) for HTTP/REST API, The best guesses to which framework are [Flask]. - [Go](https://golang.org/) for the embed servers and one element of their logging(see [Punt]) + - [Go](https://golang.org): + - The embed servers + - [Punt] + - [Lilliput](https://github.com/discordapp/lilliput), which is a main part + of their media proxy. Lillput is also written in C++. + [source!](https://blog.discordapp.com/how-discord-resizes-150-million-images-every-day-with-go-and-c-c9e98731c65d) - [Rust](https://www.rust-lang.org/) for many parts of the Discord Store, most commonly: - [Game SDK](https://discordapp.com/developers/docs/game-sdk/sdk-starter-guide), to make Discord integrations for any game.