• Новые темы в этом разделе публикуются автоматически при добавлении файла в менеджер ресурсов.
    Ручное создание новых тем невозможно.
Иконка ресурса

L2GW netty core 2023-03-06

Нет прав для скачивания
Netty уже чуть ли не стандарт для сетевых приложений, и не только для написаных на коленке жаба-серверов.
Хотелось бы подробнее о его уязвимостях, потому как за последние 3 года я не нашел ни одной публичной CVE.

UPD: хотя там есть по мелочи, либо с низким severity, либо в связке с редкоиспльзуемым функционалом (типа HAProxyMessageDecoder и т.п.). В общем и целом ничего критичного, чтобы паниковать.
 
Последнее редактирование:
Реакции: kick
Тут я не могу не согласится. Мне очень сильно кажется, что проблема не в нетти, на самом деле. Надо просто более углубленно сделать ревью кода, который я стащил у Мобиуса. Я при переносе, разумеется изучал архитектуру и сделал там пару правок, но прям детально не вникал. Просто для меня очень странная информация, что Netty имеет утечки памяти. 90% известных мне проблем, с которым люди сталкиваются при использовании Netty на Java, это следствия использования Java реализации транспорта, вместо нативного. Опять же перед глазами огромное количество успешно работающих с Netty проектов, вне сферы L2, для которых нагрузка, которую создадут даже 20000 онлайна, находится в границах погрешности менее 0.1% И "протекающая" Netty несла бы такие убытки, по сравнению с которыми даже весь пиратский рынок L2 в СНГ отдыхает)
 
А подробнее? Получается что нетти хрень?

Хотя по сентетике есть прирост и не малый.
 
Если ставить репутацию и квалификацию среднестатистического разработчика Netty, против репутации и квалификации среднестатистического разработчика фришки, то скорее всего нет.
 
А подробнее? Получается что нетти хрень?
Это один из лучших фреймворков жабы, которым пользуются сотни компаний.
Протестирован в бою в самых нагруженных системах, и просмотрен глазами тысяч разработчиков.
И еще, он один из немногих, что сумел вылезти из экосистемы жабы, и по сути его форк на другом языке под крылом Apple:

Выходит, что хрень.
 
Не проецируй свои детские травмы здесь.
находятся имбицилы которые начинают флудить
Ну вот мы и нашли его, и да учи русский, имбецил пишется через е, но не и. Вот они разработчики, закончившие пту.
Нет, хрень это жаба сборки разработчиков, которые сделаны в основном студентами.
У великих разработчиков помойки L2, netty говно и не справляется. Не надо тут рассказывать, они точнее знают, при этом не имея за спиной не одного серьезного проекта.
 
А как по мне нетти норм вещъ. Есть тесты в визуалвм, + в пользу нетти!!!!!!!!!!!!!!!!!!!!!!!

А вообще каждому свое. Для перехода на нетти не мало времени и сил положил.
 
Это ты еще после этого к сборке кастомную защиту не прикручивал, с полиморфным шифрованием)
 
Я слесарь III разряда)))))) я не программист от слова совсем!!!!
 
Реакции: kick
Тут я вспоминаю историю о том, что в джаве 20 лет жила бага в binary search) Стоит ли говорить о количестве юзеров. Так что это не всегда показатель
 
Баги есть в любом коде, так что это действительно не всегда показатель.
 
Реакции: kick
Если бы эта бага вызывала утечку памяти на элементарной профильной нагрузке, то ее бы нашли через несколько минут после релиза.
 
Конечно, и конечно же её покрывают тестами, если библиотека на ентерпрайз уровне. Вопрос только, что l2 может действительно отличаться от обычных использований. Ддосят ли упомянутые 100 компаний и сервисы простых юзеров? Плодят какие-нибудь полузакрытые tcp соединения - а тут оп и приехали.
За MMOcore конечно тоже не топлю) Больше вопрос, действительно ли сетевой стек узкое место и стоит его менять?
 
Последнее редактирование:
Ну мы сейчас вроде бы не о стрессовой нагрузке говорили? Опять же, используя Netty и ее пайплайн, обрабатывать такие соединения проще, чем на MMOCore. Вы определенные пакеты можете даже до кодека-декриптора не допустить, дропая соединения по предварительным оценочным паттернам. Это можно сделать и в MMOCore, но Netty спроектированная для такого и имеет умопомрачительное количество байтоебских низкоуровневых фиксов, которые позволяют ей пережевывать такие вещи, которыми MMOCore давится.
 
Netty имеет ряд весомых преимуществ по сравнению с реализацией MMOCore
Можешь поделиться, пожалуйста, какие преимущества? А другими словами - какие минусы MMOCore? Просто интересно

"Ну мы сейчас вроде бы не о стрессовой нагрузке говорили?" - ну я уловил, что библиотеку обвиняют в утечках на лайв проектах, и противоположное мнение, что мол: "да нет, как так, она же всеми используется"

"имеет умопомрачительное количество байтоебских низкоуровневых фиксов" - это как-то даже больше пугает, чем внушает доверие
 
Последнее редактирование:
Вообще хорошо когда всё свое.
 
Последнее редактирование:
Главное преимущество Netty, это то, в чем ее обвиняют в этом треде. Netty использует очень специфичную систему работы с памятью, избегая создания объектов и снижая аллокацию памяти. У нее свой механизм избавления от мусора, не особо связанный с дефолтным GC. Т.е в целом, при правильном проектировании архитектуры приложения, затраты памяти на создание, обслуживание и утилизацию одного конкретного соединения ощутимо меньше. Опять же работа с нативным транспортом в linux, имеет дохера важный момент, когда у тебя IO неблокирующий(Это очень хорошо ощущается как раз при работе в "стрессовых" ситуациях).
Из общих моментов, это постоянная работа и обновление кода командой профессиональных разработчиков, которые по сути, выполняют очень большой объем работы совершенно бесплатно.
Ну еще в голову приходит работы практически со всем, что связано с сетью. Будь то клиент-серверное общение в L2 или локальный вебсервер для REST. Т.е как минимум не требуется писать кучу механизмов под каждую сетевую задачу.
Ну в конце концов, я не амбассадор Netty, поэтому каждый юзает то, на что у него хватает компетенций.