В состав FreeBSD принята высокопроизводительная реализация sendfile от Netflix

Обсуждение всяких разных новостей.
ev
ст. лейтенант
Сообщения: 1325
Зарегистрирован: 2008-07-27 17:11:30
Откуда: Москва

В состав FreeBSD принята высокопроизводительная реализация sendfile от Netflix

Непрочитанное сообщение ev » 2016-01-10 17:12:17

Компания Netflix, в сети доставки контента которой активно используются серверы с FreeBSD, совместно с компанией NGINX подготовила новую реализацию системного вызова sendfile, предназначенного для организации прямой передачи данных между файловым дескриптором и сокетом. Новая реализация отличается значительным увеличением производительности - файл теперь можно направлять в сокет в асинхронном режиме без ожидания завершения передачи данных, копирование производится в фоне с мгновенным возвращением управления.

Разработка работающего в неблокирующем режиме sendfile велась с 2013 года и вчера была принята в основной состав FreeBSD-CURRENT. Код уже протестирован в рабочем кластере Netflix и годен для промышленного применения. Реализация полностью обратно совместима с ранее доступными приложениями и может использоваться в качестве прозрачной замены, не требуя пересборки. Кроме увеличения производительности в новой реализации также добавлены новые флаги, предоставляющие дополнительный контроль над отправкой данных. Например, флаг SF_NOCACHE запрещает кэширование передаваемых данных, а при помощи макроса SF_READAHEAD() можно установить размер буфера упреждающего чтения.

http://www.opennet.ru/opennews/art.shtml?num=43646
в новости указана ссылка на старую презентацию
в фейсбуке поправили
Глеб Смирнов писал(а): 2x40 было временным решением, теперь цена на 100 снизились и это целевая платформа. 80 Гбит/с было сделано на экспериментальной машине, сетевая 100, диски nvme. В production таких машин пока нет. Но в production конечно цифры значительно побольше, чем год назад.
Отправлено спустя 6 минут 49 секунд:
страсти продолжаются
Максим Костиков писал(а): На opennet у линуксоидов пуканы полыхают. Там ещё и разрабочик NGINX появился, который показал что в Линукс такие задачи никогда решены не были и, соответственно, в стриминге FreeBSD сильно его делает.
Отправлено спустя 3 минуты 12 секунд:
раз уж пошел флудить, решил найти еще оригинал
Valentin V. Bartenev писал(а): Привет эксперту с Opennet от разработчика nginx. Вызов sendfile() на FreeBSD точно также, как и в Linux, с рождения не блокировался на отправке данных в сокет с флагом O_NONBLOCK.

Но на обоих системах благополучно блокировался на чтении с диска. Только, в отличии от Linux, на FreeBSD есть ещё флаг SF_NODISKIO, который позволяет в случае отсутствия данных в памяти возвращать управление и далее вычитывать файл другим способом, например с помощью aio_read() или в треде. В Linux подчеркну до сих пор этого нет.

Что было сделано в новой реализации, так это то, что теперь sendfile() в FreeBSD не блокируется не только на сокете, но и на диске, при этом полностью асинхронно читая и отправляя данные даже в том случае, когда те отсутсвуют в кэше страниц.

О том, что в Linux с асинхронным чтением все очень плохо (и плохо по сей день), я более-менее подробно расписал в статье: https://www.nginx.com/blog/thread-pools ... rmance-9x/

Хостинговая компания Host-Food.ru
Хостинг HostFood.ru
 

Услуги хостинговой компании Host-Food.ru

Хостинг HostFood.ru

Тарифы на хостинг в России, от 12 рублей: https://www.host-food.ru/tariffs/hosting/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.: https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2000 рублей (HP Proliant G5, Intel Xeon E5430 (2.66GHz, Quad-Core, 12Mb), 8Gb RAM, 2x300Gb SAS HDD, P400i, 512Mb, BBU):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/

Аватара пользователя
Alex Keda
стреляли...
Сообщения: 35454
Зарегистрирован: 2004-10-18 14:25:19
Откуда: Made in USSR
Контактная информация:

В состав FreeBSD принята высокопроизводительная реализация sendfile от Netflix

Непрочитанное сообщение Alex Keda » 2016-01-13 8:54:15

Прикольно ;)
Убей их всех! Бог потом рассортирует...


ev
ст. лейтенант
Сообщения: 1325
Зарегистрирован: 2008-07-27 17:11:30
Откуда: Москва

В состав FreeBSD принята высокопроизводительная реализация sendfile от Netflix

Непрочитанное сообщение ev » 2016-01-17 16:56:53

icb писал(а): Еще бы десктоп нормальный сделали :)
уже есть - xfce ставится даже из пакетов нормально (правда тянет достаточно мусора за собой)

Аватара пользователя
Alex Keda
стреляли...
Сообщения: 35454
Зарегистрирован: 2004-10-18 14:25:19
Откуда: Made in USSR
Контактная информация:

В состав FreeBSD принята высокопроизводительная реализация sendfile от Netflix

Непрочитанное сообщение Alex Keda » 2016-01-17 18:02:33

я х.з. про ваши xfce, но у меня на рабочем десктопе, на ноуте, на дочкином десктопе, на моём нетбуке, на дачном десктопе и на халтурном - на всех стоит kde4 из пакетов.

и ни на одном ни одного пакета собранного руками.
Убей их всех! Бог потом рассортирует...

ev
ст. лейтенант
Сообщения: 1325
Зарегистрирован: 2008-07-27 17:11:30
Откуда: Москва

В состав FreeBSD принята высокопроизводительная реализация sendfile от Netflix

Непрочитанное сообщение ev » 2016-01-17 19:47:58

Alex Keda писал(а): на всех стоит kde4 из пакетов
622 пакета и 3 разных версии питона... и это еще без xorg с его 109 пакетами ;)
надо бы xfce как-нить посчитать

Отправлено спустя 3 минуты 6 секунд:
ппц, поставил kde попробовать - так он поставил с собой mysql56-server :) вот жесть то

Аватара пользователя
Alex Keda
стреляли...
Сообщения: 35454
Зарегистрирован: 2004-10-18 14:25:19
Откуда: Made in USSR
Контактная информация:

В состав FreeBSD принята высокопроизводительная реализация sendfile от Netflix

Непрочитанное сообщение Alex Keda » 2016-01-17 20:15:53

у меня суммарно около 1000 на любом.
кроме кед, ещё много чего для жизни то надо - от лисы и птицы, до офиса и гимпа ...
Убей их всех! Бог потом рассортирует...

ev
ст. лейтенант
Сообщения: 1325
Зарегистрирован: 2008-07-27 17:11:30
Откуда: Москва

В состав FreeBSD принята высокопроизводительная реализация sendfile от Netflix

Непрочитанное сообщение ev » 2016-01-17 22:02:48

Alex Keda писал(а): кроме кед, ещё много чего для жизни то надо - от лисы и птицы, до офиса и гимпа ...
но mysql server для kde?! :)

Аватара пользователя
Alex Keda
стреляли...
Сообщения: 35454
Зарегистрирован: 2004-10-18 14:25:19
Откуда: Made in USSR
Контактная информация:

В состав FreeBSD принята высокопроизводительная реализация sendfile от Netflix

Непрочитанное сообщение Alex Keda » 2016-01-21 8:27:19

И что? Кэши всякие хранить, чё бы нет?
Убей их всех! Бог потом рассортирует...

ev
ст. лейтенант
Сообщения: 1325
Зарегистрирован: 2008-07-27 17:11:30
Откуда: Москва

В состав FreeBSD принята высокопроизводительная реализация sendfile от Netflix

Непрочитанное сообщение ev » 2016-01-21 18:30:35

для подобных вещей давно используют sqlite

Аватара пользователя
Alex Keda
стреляли...
Сообщения: 35454
Зарегистрирован: 2004-10-18 14:25:19
Откуда: Made in USSR
Контактная информация:

В состав FreeBSD принята высокопроизводительная реализация sendfile от Netflix

Непрочитанное сообщение Alex Keda » 2016-01-22 18:21:52

Я х.з. почему так....
Наверное, потому что Муся стабильной в плане АПИ - sqlite между версиями несовместим бывает....
Убей их всех! Бог потом рассортирует...

Аватара пользователя
dekloper
ст. лейтенант
Сообщения: 1331
Зарегистрирован: 2008-02-24 15:43:19
Откуда: давно здесь сидим..
Контактная информация:

В состав FreeBSD принята высокопроизводительная реализация sendfile от Netflix

Непрочитанное сообщение dekloper » 2016-02-16 13:47:56

Alex Keda писал(а): И что? Кэши всякие хранить, чё бы нет?
да оракле надо сразу задепендить, че мелочиться то.. удобно, стильно)

зы. блин, начали с замечательной новости, а закончили вендой, тьфу, кедами))
ТОВАгИЩИ! БгАТЬЯ И СЕСТгЫ! ДОЛОЙ гАВНОДУШИЕ!