Перейти к содержимому

Я попросил разработчиков выжать максимум из сервера за 12 долларов (снова)

Arjay McCandless

0:00 / 0:00

Я попросил разработчиков выжать максимум из сервера за 12 долларов (снова)

106 299 просмотров · 12 ч назад
Arjay McCandless
131 тыс. подписчиков
106 299 просмотров · 12 ч назад
Я попросил разработчиков создать максимально быстрое приложение на сервере стоимостью 12 долларов, и вы прислали новый раунд работ на Java, Kotlin, Scala, Swift, Haskell, Lua, Dart, Zig, V и даже на ассемблере, написанном вручную. Каждая работа запускала один и тот же небольшой API, похожий на Twitter, на SQLite, на одном виртуальном процессоре и 2 ГБ оперативной памяти, и должна была выдерживать нагрузку в течение пяти минут. Мы рассмотрим, что создала каждая из них, какие оптимизации оказались важными и что в итоге остановило её: процессор, память, диск или соединения. Код и полные результаты: https://github.com/arjaythedev/twelve... Задание для многоядерного сервера: https://github.com/arjaythedev/multic... 20 долларов бесплатного кредита Synteq для самостоятельного проведения этих экспериментов: https://synteq.com/arjay Devmaxx, 7 дней бесплатно: https://www.devmaxx.dev/get 0:00 Вступление 0:41 Бенчмарк 1:45 Аппаратное обеспечение 2:53 Bash 3:58 Quarkus 4:45 Swift 5:38 Go net/http 6:16 Haskell 6:52 DevMax 7:41 C# 8:34 F# 9:17 Тот же результат 10:07 Dart 10:29 Deno 10:47 Zig 11:45 Lua 12:34 PyPy 13:17 Scala 13:51 Node 14:56 V 15:29 Java NIO 15:55 C epoll 16:11 Kotlin 17:12 io_uring 18:10 C io_uring 18:47 Assembly 19:34 Go + C 20:43 Дополнительные сведения об ассемблере 21:38 Rust 23:09 Ограничения тестирования 24:06 Долговечность 24:47 Заключение