top
logo


OpenNews: Fastsocket - новая высокомасштабируемая реализация сетевой подсистемы ядра Linux PDF Печать E-mail
22.10.14 18:41

Группа китайских разработчиков высоконагруженных систем открыла наработки проекта Fastsocket, в рамках которого подготовлена альтернативная реализация сокетов и сетевой подсистемы ядра Linux. В отличие от штатной сетевой подсистемы ядра, Fastsocket обеспечивает практически линейную масштабируемость, что позволяет добиться существенно более высокой производительности на многоядерных компьютерах. Система является стабильной и хорошо зарекомендовала себя в промышленном использовании. В частности, Fastsocket используется для обеспечения работы online-службы SINA (17-й по посещаемости сайт в мире). Все наработки проекта поставляются под лицензией GPLv2.

Fastsocket бесшовно интергрируется с существующими серверными приложениями - достаточно через LD_PRELOAD загрузить библиотеку libfsocket.so, которая подменит собой традиционные функции работы с сокетами. Например, для использования Fastsocket в nginx достаточно запустить сервер командой "LD_PRELOAD=./libfsocket.so nginx". При этом включение поддержки Fastsocket в ядре сопряжено с некоторыми трудностями - для применения Fastsocket следует использовать специально подготовленную отдельную сборку ядра Linux, вместо штатного ядра из дистрибутива. В настоящее время предлагается вариант ядра 2.6.32-431.17.1.el6 для использования в RHEL/CentOS 6.5.

Но игра стоит свеч, на сервере с 24 ядрами CPU рост производительности при выполнении Nginx и Haproxy составляет 290% и 620%, по сравнению с обычным сетевым стеком, предоставляемым ядром из состава CentOS-6.5. Более того, Fastsocket обеспечивает дополнительный прирост производительности при использовании Hyper-Threading и Flow-Director. В частности, активация Hyper-Threading даёт прирост в 20% производительности, а использование сетевой карты на базе контроллера Intel 82599 прибавляет 15% при работе в роли прокси.

Наибольшая эффективность работы Fastsocket достигается на системах, имеющих от 8 до 24 процессорных ядер, при использовании приложений, применяющих epoll для организации неблокирующего ввода/вывода и запускающих несколько параллельно работающих процессов-обработчиков соединений, таких как haproxy, nginx и lighttpd. Текущая реализация рассчитана в основном на обработку коротких TCP-соединений. Разработчиками проекта также подготовлен код для повышения эффективности обработки длительных TCP-соединений, который позволит увеличить производительность таких приложений, как СУБД Redis. Данный код будет опубликован после его стабилизации.

  1. Главная ссылка к новости (https://news.ycombinator.com/item?id=849...)
Тип: Интересно / К сведению
Ключевые слова: fastsocket, linux, kernek, (найти похожие документы)
При перепечатке указание ссылки на opennet.ru обязательно
Реклама
id=adv>
  1.1, Fracta1L, 22:50, 22/10/2014 [ответить] [смотреть все] +15 +/
Надеюсь, это скоро будет в ванильном ядре.
 
1.2, A.Stahl, 22:56, 22/10/2014 [ответить] [смотреть все]
+16 +/
>Группа китайских разработчиков...GPLv2

Я китайский бы выучил только за то, что им разговаривает "Группа китайских разработчиков..."
Вру на самом деле. Не буду я учить китайский. Я просто хотел сказать -- молодцы.

 
    3.20, Аноним, 01:19, 23/10/2014 [^] [ответить] [смотреть все] +1 +/
А никуда Китайцы на США и прочих работают и поэтому сносно шпрехают на инглише ... весь текст скрыт [показать]
 
  4.37, twilight, 08:57, 23/10/2014 [^] [ответить] [смотреть все]  +/
Это откуда такая информация?
Насколько я могу судить по своему опыту общения с китайцами - к английскому у них довольно прохладное отношение.
Даже приезжающие в Рф студенты не торопятся учить англ., а уровень подготовки большинства из них даже ниже, чем у выпускников России.
В приграничных районах (манджурия) - китайцы более сносно говорят на русском, чем на английском.
Так что на счет "сносно шпрехают" - боооольшой вопрос, они в плане интеграции самодостаточны.
 
  5.40, мшефд, 09:16, 23/10/2014 [^] [ответить] [смотреть все]  +4 +/
Маньчжурия
 
5.53, Аноним, 12:17, 23/10/2014 [^] [ответить] [смотреть все]  +/
От всевозможных китайских конторок Если они хотят что-то за пределами китая про... весь текст скрыт [показать]
 3.21, Crazy Alex, 01:19, 23/10/2014 [^] [ответить] [смотреть все]  +1 +/
Дык,английский - и проще учится и толку больше... весь текст скрыт [показать]
 
1.3, Аноним, 23:01, 22/10/2014 [ответить] [смотреть все]  +/
Гораздо интереснее, насколько оно устойчиво к SYN-флуду, а также к большому коли... весь текст скрыт [показать]
  1.5, manster, 23:04, 22/10/2014 [ответить] [смотреть все]  –4 +/
Ох, надеюсь без бэкдоров и зондов... весь текст скрыт [показать]
 
  2.6, ононимуз, 23:07, 22/10/2014 [^] [ответить] [смотреть все] [показать ветку]  +2 +/
 
  3.9, Аноним, 23:19, 22/10/2014 [^] [ответить] [смотреть все]  +/
Сколько тебе заплатить, чтобы ты проверил ... весь текст скрыт [показать]
 
  4.43, Аноним, 09:57, 23/10/2014 [^] [ответить] [смотреть все]  +2 +/
Могу я проверять, за регулярную почасовую оплату, на полную ставку, обещать прав... весь текст скрыт [показать]
 
4.46, Аноним, 10:10, 23/10/2014 [^] [ответить] [смотреть все]  +/
Нет столько денег Вернее нет технологий чтоб пересадить ему мозги разработчика ... весь текст скрыт [показать]
 2.26, Аноним, 01:45, 23/10/2014 [^] [ответить] [смотреть все] [показать ветку]  +1 +/ 
  3.27, manster, 02:27, 23/10/2014 [^] [ответить] [смотреть все]  –5 +/
Это конечно иронизирую Кстати могу ошибаться, но LD_PRELOAD будет проблемно исп... весь текст скрыт [показать]
 
  4.55, Аноним, 12:27, 23/10/2014 [^] [ответить] [смотреть все]  +/
Расскажите мне - в чем у меня проблемы на x86_64 А то я их не заметил Скоре... весь текст скрыт [показать]
 
  5.66, Аноним, 20:40, 23/10/2014 [^] [ответить] [смотреть все]     [к модератору]  +/
Давно тебя не было Замуж вышел ... весь текст скрыт [показать]
 
1.7, Аноним, 23:08, 22/10/2014 [ответить] [смотреть все]  –6 +/
Ура, я наконец понял в чём на самом деле была проблема высоконагруженных систем ... весь текст скрыт [показать]
 
  2.14, manster, 00:01, 23/10/2014 [^] [ответить] [смотреть все] [показать ветку]  +1 +/
Не, бд и ссл действительно тормоза Для бд рулит кастомная группировка данных, к... весь текст скрыт [показать] [показать ветку]
 
2.22, Аноним, 01:20, 23/10/2014 [^] [ответить] [смотреть все] [показать ветку]  +4 +/
Ты не понял Упомянутое становится проблемой, когда все предыдущие вещи уже разр... весь текст скрыт [показать] [показать ветку]
 2.30, rob pike, 07:34, 23/10/2014 [^] [ответить] [смотреть все] [показать ветку]  –1 +/ > всё грешил на базы данных,

В большинстве случаев это решается правильной организацией кэширования.
Да, подчас очень непростой, но таки решается.

> тормоза динамических языков программирования

Динамический язык динамическому языку рознь. LuaJIT, например, тормозами не страдает.
Кстати, ngx_lua и базирующийся на нём OpenResty - тоже китайского происхождения.

> и шифрование SSL.

Которое, во-первых, можно использовать только для авторизации, после чего возвращаться к http, во-вторых, большую часть оверхеда можно переложить на CDN, пользуясь тем что основной оверхед приходится на handshake.

 
  3.36, Аноним, 08:52, 23/10/2014 [^] [ответить] [смотреть все]  –1 +/
Кеширование это моветон Им можно решить только задачи с преимущественным чтнени... весь текст скрыт [показать]
 
  4.42, rob pike, 09:40, 23/10/2014 [^] [ответить] [смотреть все]  +/
> Кеширование это моветон.

Весьма неожиданная точка зрения, надо признать.

> Им можно решить только задачи с преимущественным чтнением данных.
> А щас интерктив везде, чтение запись выравниваются

Вас не затруднит привести пару-тройку примеров из современного веб?
А также пояснить в чем принципиальное затруднение в решении этой проблемы Write-back кэшированием.

 
4.44, Аноним, 10:01, 23/10/2014 [^] [ответить] [смотреть все]  +1 +/
Какое выравнивание checkbox от кнопки like сопоставим по объёму с выгрузкой с... весь текст скрыт [показать]
 3.56, Аноним, 12:34, 23/10/2014 [^] [ответить] [смотреть все]  +/
Или использованием каких-нибудь NoSQL баз и простых схем данных Они быстрые как... весь текст скрыт [показать]
 
  4.61, rob pike, 13:50, 23/10/2014 [^] [ответить] [смотреть все]    [к модератору]  +/
> NoSQL баз и простых схем данных.
> Они быстрые как понос при правильном подходе.

Какие образные у вас сравнения. Намекаете на то что MongoDB медленней PostgreSQL? Мы в курсе.

> Если уж на то пошло, грузить бэкэнд выполнением скриптов на каждого юзера - тоже моветон

Действительно, давайте каждого юзера называть просто Васей, они всё равно одинаковые практически, юзеры эти.

> CDN вообще-то желают бабла за свои услуги

Ужас какой, действительно. Все остальные-то компоненты высоконагруженных систем обычно совершенно ничего не стоят.

 
3.58, manster, 12:52, 23/10/2014 [^] [ответить] [смотреть все]  +/ Не стоит "правильность" обеспечивать кэшированием. Смотри глубже - ленивая, отложенная загрузка и еще кое-что (сходно с тяжелой графикой)
 
  4.59, manster, 12:53, 23/10/2014 [^] [ответить] [смотреть все]  +/
шардинг
 
3.67, Аноним, 21:18, 23/10/2014 [^] [ответить] [смотреть все]     [к модератору]  +/
Rob - подумай такую мысль это для CDN-щиков и сделано Как вариант Оне же то... весь текст скрыт [показать]
 
1.13, knike, 23:47, 22/10/2014 [ответить] [смотреть все]  –1 +/ А почему с ядром 2.6 сравнивают?
 
  2.15, Кир, 00:28, 23/10/2014 [^] [ответить] [смотреть все] [показать ветку]  +10 +/
чтобы 620% прироста показать.
 
2.17, temujeen, 00:55, 23/10/2014 [^] [ответить] [смотреть все] [показать ветку]  –1 +/
как-то так получилось, что сетевой стек на последующих версиях ядра, оказался то... весь текст скрыт [показать] [показать ветку]
OpenNews: Fastsocket - новая высокомасштабируемая реализация сетевой подсистемы ядра Linux  
  3.18, екуыыыыы, 01:02, 23/10/2014 [^] [ответить] [смотреть все]  +/
а по картинкам этого не видно ... весь текст скрыт [показать]
 
3.34, Аноном, 08:44, 23/10/2014 [^] [ответить] [смотреть все]  +/ Это не совсем так, были регрессии, но они правились.
 2.19, Аноним, 01:14, 23/10/2014 [^] [ответить] [смотреть все] [показать ветку]  +/
В ядре rhel centos 6 от 2 6 осталась только совместимость, очень многое полезное... весь текст скрыт [показать] [показать ветку]
 
  3.24, Led, 01:22, 23/10/2014 [^] [ответить] [смотреть все]  +/
 
2.23, Crazy Alex, 01:21, 23/10/2014 [^] [ответить] [смотреть все] [показать ветку]  +/
Сравнивают со стандартным де-факто ядром - то есть текущим редхатовским ... весь текст скрыт [показать] [показать ветку]
 
  3.25, Led, 01:24, 23/10/2014 [^] [ответить] [смотреть все]  +/
 
  4.28, Crazy Alex, 03:12, 23/10/2014 [^] [ответить] [смотреть все]  +/
Это станет стандартом еще через пару лет. Никто в здравом уме не мигрирует, если этого можно не делать. А у редхата можно не мигрировать очень долго.
 
3.32, Аноним, 07:55, 23/10/2014 [^] [ответить] [смотреть все]  +/
нудк HPC-же а там у китайцев наряду с LFS, Калькой, Центос - самое популярное с... весь текст скрыт [показать]
 
1.31, Аноним, 07:51, 23/10/2014 [ответить] [смотреть все]  +/
солидный прирост я знал что в родном стэке полно барахла на скотче и соплях, ... весь текст скрыт [показать]
  1.35, anonymous, 08:47, 23/10/2014 [ответить] [смотреть все]  –1 +/ А нижние графики-то --- похоже, фальшивка: таких _в мелких деталях_ самоподобных кривых _за сутки_ хрен получишь.
  1.38, DmA, 09:00, 23/10/2014 [ответить] [смотреть все]  +/ Из описания в Википедии "Sina Corp — китайская интернет-компания. Является сетью общения между китайскими диаспорами по всему миру. Имеет четыре направления деятельности: Sina Weibo, Sina Mobile, Sina Online, и Sina.net. Объединяет более 100 миллионов пользователей по всему миру"
Какая-то массоновская секта!
 
  2.39, Аноним, 09:10, 23/10/2014 [^] [ответить] [смотреть все] [показать ветку]  +2 +/
 
  3.57, Аноним, 12:36, 23/10/2014 [^] [ответить] [смотреть все]  +/
Вот мы их и раскусили ... весь текст скрыт [показать]
 
1.47, Аноним, 10:46, 23/10/2014 [ответить] [смотреть все]  –1 +/
Китайцы довольно агрессивно пытаются пропихнуть свои дырки в другие страны, как ... весь текст скрыт [показать]
 
  2.49, Аноним, 10:59, 23/10/2014 [^] [ответить] [смотреть все] [показать ветку]  –2 +/
Агрессивно - это когда ты подкупаешь 51 имеющих права голоса в коммьюнити каког... весь текст скрыт [показать] [показать ветку]
 
  3.51, Аноним, 11:55, 23/10/2014 [^] [ответить] [смотреть все]  +/
ж0п0боль ретрограда итт ... весь текст скрыт [показать]
 
  4.52, Аноним, 12:05, 23/10/2014 [^] [ответить] [смотреть все]  –1 +/
О, а вот и у3бек бежит дистанцию Бег с препятствиями, с вордфильтром вместо так... весь текст скрыт [показать]
 
1.50, Аноним, 11:26, 23/10/2014 [ответить] [смотреть все]  +1 +/
теперь ждем соизмеримые наработки наших ученых, а то все чего то там выбирают вы... весь текст скрыт [показать]
 
  2.60, DmA, 13:30, 23/10/2014 [^] [ответить] [смотреть все] [показать ветку]    [к модератору]  +/
у российских чиновников от науки на уме только распил  бюджетных денег
 
  3.64, Аноним, 20:18, 23/10/2014 [^] [ответить] [смотреть все]     [к модератору]  +/
это был сарказм про физиков и слаку ... весь текст скрыт [показать]
 
1.63, YetAnotherOnanym, 16:28, 23/10/2014 [ответить] [смотреть все]    [к модератору]  +/ Хы, это как же его до китайцев писали? Видать, Телса мало Алана по рукам била.
 
Ваш комментарий  

Read more http://www.opennet.ru/opennews/art.shtml?num=40907

 
Интересная статья? Поделись ей с другими:

bottom

 

Unreal Commander PfSense по русски Яндекс.Метрика