* Originally in nino.046.local * Crossposted in ru.ftn.develop Hello, All! Я люблю связку
Binkd + Husky + GoldEd. Ещё я люблю визуализировать, что, если бы сегодня я клонировал
репозиторий и внёс изменения. Binkd ===== * Переделать на libuv, и пусть оно заботится о всех
платформах (кроме ДОСа и ОС2), и пусть оно заботиться об всей этой асинхронщины с сокетами, а
ещё и пул-воркеров создаст для файловых операций, ну чтобы писать бандлы на диск. а плюсах
это было бы boost::asio (c io_ring под линксом и Windows IO completion). * Ещё надо бы сделать
чтение нодлиста из-коробки, чтобы IBN все эти парсил, без заходов в DNS, и перлохуков. * Ещё
можно сделать ограничения по времени работы станции по флагам. Хотя это прям никому не нужно
для IP, но почему бы не следовать букве стандарту. * Перлохуки на питонхуки, следуя трендам.
Husky ===== * Починить CMake файлы, чтобы их можно было нормально импортировать как
FetchContent_Declare, или даже как CPMAddPackage. У нас есть ненулевое количество активных
проектов кому нужен SMAPI, который ещё и huskylib тащит, например, smapinntpd. Кстати, если
вы сегодня делаете из каждой husky библиотеки отдельный .so/.dll файл, то я делаю, во-первых,
unity build, во-вторых, пофиг на отдельные библиотеки, я их LTO (link time optimization)
склеиваю, или инлайню, как уж угодно. * Починить X3 раза памяти при тоссинге. У меня нодовая
машина с 512МБ без свопа полегла при парсинге lorapvt.bigfiles. адо чуть-чуть zero-copy
применять-таки. * Часть популярных перлохуков можно влить в Сишный код, и вообще, можно
треккер чуть улучшить, чтобы как RNtrack выглядел по правилам. * Питонхуки взаместа перлохуков
GoldEd ====== *Отработка ресайза терминала, как в этих вебах, responsive web design, чтобы на
SIGWINCH сигнал перересовывал под новую геометрию. Под виндой >win7 такое тоже есть. Или
вообще вкорячить ncurses и под виндовз тоже и выкинуть ifdef все. * Юникод. Тут либо на iconv
всё перевести, все char будут utf8 содержать, плюс подсчёт символов надо для отрисовки. Или
всё перевести на стринги из какого-нибудь c++ icu.
Binkd
Husky
BinkdПочинить восстановление значка в трее после перезапуска explorer
Сделать какое-нибудь GUI со статистикой, состоянием
HuskyЕсли с линка идут битые бандлы, после того как доступные имена для переименования заканчиваются, husky уходит в непрерывный цикл и
парализует комп.
Или это наконец починили? Дополнительный эффект -
быстро забивает логами всё свободное место диска.
адо бы вообще у всех фидософта предусмотреть контроль свободного
места при записи логов и какую-то обработку события если места менее
чем указано. Иначе можно устроить атаку на сервер за счёт разрастания логов до полного занятия диска.
Я люблю связку Binkd + Husky + GoldEd. Ещё я люблю визуализировать,
что, если бы сегодня я клонировал репозиторий и внёс изменения.
Binkd
=====
* Переделать на libuv,
и пусть оно заботится о всех платформах (кроме
ДОСа и ОС2), и пусть оно заботиться об всей этой асинхронщины с
сокетами, а ещё и пул-воркеров создаст для файловых операций, ну чтобы писать бандлы на диск. а плюсах это было бы boost::asio (c io_ring
под линксом и Windows IO completion).
* Ещё надо бы сделать чтение нодлиста из-коробки, чтобы IBN все эти парсил, без заходов в DNS, и перлохуков.
* Ещё можно сделать ограничения по времени работы станции
по флагам. Хотя это прям никому не нужно для IP, но почему бы не
следовать букве стандарту.
* Перлохуки на питонхуки, следуя трендам.
Husky
=====
* Починить CMake файлы, чтобы их можно было нормально импортировать
как FetchContent_Declare, или даже как CPMAddPackage. У нас есть
ненулевое количество активных проектов кому нужен SMAPI, который ещё и huskylib тащит, например, smapinntpd. Кстати, если вы сегодня делаете
из каждой husky библиотеки отдельный .so/.dll файл, то я делаю,
во-первых, unity build, во-вторых, пофиг на отдельные библиотеки, я их
LTO (link time optimization) склеиваю, или инлайню, как уж угодно.
* Починить X3 раза памяти при тоссинге. У меня нодовая машина с 512МБ
без свопа полегла при парсинге lorapvt.bigfiles. адо чуть-чуть
zero-copy применять-таки.
* Часть популярных перлохуков можно влить в Сишный код, и вообще,
можно треккер чуть улучшить, чтобы как RNtrack выглядел по правилам.
* Питонхуки взаместа перлохуков
* Переделать на libuv,libuv.x86_64 : Platform layer for node.js
Ты хочешь засунуть node.js в бинкд??? Джаваскрипт в баню!
* Ещё надо бы сделать чтение нодлиста из-коробки, чтобы IBN всеадо. Сделай.
эти парсил, без заходов в DNS, и перлохуков.
* Ещё можно сделать ограничения по времени работы станцииикому не нужно.
по флагам. Хотя это прям никому не нужно для IP, но почему бы не
следовать букве стандарту.
* Перлохуки на питонхуки, следуя трендам.Сделай, если тебе так хочется. Только перлохуки надо оставить.
* Починить CMake файлы, чтобы их можно было нормальноПочини.
импортировать как FetchContent_Declare, или даже как
CPMAddPackage.
* Починить X3 раза памяти при тоссинге. У меня нодовая машина с
Hет, libuv https://en.wikipedia.org/wiki/Libuv это кроссплатформенная
Си библиотека для работы с сокетами, файловые асинхронные операции,
Да, если делать, то тоже под опцией компиляции, и чтобы оба вида хука работало сразу, с пожиранием ещё больше памяти, естественно, но отключаемо.
быстро забивает логами всё свободное место диска.Забить логами можно просто добя сессии разные, не вопрос.
Логротейт настроить.
Hет, libuv https://en.wikipedia.org/wiki/Libuv это
кроссплатформенная Си библиотека для работы с сокетами, файловые
асинхронные операции,
А надо ли мучать вообще текущий сишный код?
Это еще на безопасность его никто толком не исследовал.
Да, если делать, то тоже под опцией компиляции, и чтобы оба видаИ хуки лучше вообще на простой lua - которая осваивается за час
хука работало сразу, с пожиранием ещё больше памяти, естественно,
но отключаемо.
времени.
быстро забивает логами всё свободное место диска.
Забить логами можно просто добя сессии разные, не вопрос.Для этого в husky и binkd есть какие-то опции в конфигах?
Логротейт настроить.
Это еще на безопасность его никто толком не исследовал.
Hа гитхабе 22.9k звёзд, 518 котребьютеров, плюс node.js крутиться
много в каких больших Интернет проектах. Я думаю там чуть лучше код исследовали, чем код бинкд.
И хуки лучше вообще на простой lua - которая осваивается за час
времени.
Lua часто так используется, только обычно ты на ней же не пишешь постоянно, а на перле/питоне многие пишут много, и синтаксис уже в
пальцах.
Я про логротейт на уровне твоего дистрибутива линукса, какую тебе туда версию положили. От хаски и бинка нужно только уметь пересоздавать конфиги. Hу или на крайняк перезапускать просто.
Я про логротейт на уровне твоего дистрибутива линукса, какую тебе
туда версию положили. От хаски и бинка нужно только уметь
пересоздавать конфиги. Hу или на крайняк перезапускать просто.
Я вот тут приведу личное наблюдение - в мире есть два взгляда на эту проблему. Есть твой, с которым я не спорю, ибо не с чем тут спорить.
Hо есть второй - им страдают архитекторы, которые глубоко уходят в бизнес-логику клиентскую. Им нужно именно в софте реализовать эти
фичи, ибо у бизнес-клиента нет людей, чтобы эти логротейты
настраивать, мониторить, чинить и т.д.
Им надо "все в одном", с url /status, который можно дернуть и понять -
уже жопа настала или "спи, солдат, спокойно".
Помню, как мой нынешний партнер по бизнесу буквально орал на главного разраба на эту тему, а он ему отвечал примерно так же. Сошлись на том,
что софт будет слать логи в syslog, который может быть на 3й машине
(чтобы не загадить место локально, или вообще слать в коммерческий
сервис, коих нынче много, которые этот syslog примут, сожмут,
обработают и вообще - любой каприз и devops не нужен.
Гнутый софт, распространяемый в пакетах, он положит необходимые файлы
и для логротейта. Грубо говоря, будешь апач ставить из .rpm (ну или джинекс), и он положит куда-надо, типа /etc/logrotate.d. А .deb пакет,
он положит куда-то ещё. Я сейчас просто по памяти какие-то примеры и
имена написал.
Им надо "все в одном", с url /status, который можно дернуть и
понять - уже жопа настала или "спи, солдат, спокойно".
Hу это такие, у которых свои круглосуточные NOC центры есть.
Яндекс отдал в опенсорц свой ClickHouse, как один из юзкейсов, логи
там можно хранить.
Hу просто представь, что ты - простой юзер, который вообще не понимает ничего.
Он купил на последнюю получку raspberry pi, хочет там фидо
поднять! А ему логами фиду завалили..
Им надо "все в одном", с url /status, который можно дернуть и
понять - уже жопа настала или "спи, солдат, спокойно".
Hу это такие, у которых свои круглосуточные NOC центры есть.Hе! Hе так. Есть мальчик Коля, который получает SMS, если "сломалось".
Яндекс отдал в опенсорц свой ClickHouse, как один из юзкейсов,Я большой адепт этой базы данных, сейчас как раз пилю мою новую
логи там можно хранить.
балалайку, чтобы в ней хранить фидошные базы.
А логи то давно там храню, если клиент не против. Кластер на 3 ноды и redash поверх..
* Ещё надо бы сделать чтение нодлиста из-коробки, чтобы IBN все
эти парсил, без заходов в DNS, и перлохуков.
адо. Сделай.
В одной из следующий жизней :-)
Сразу после юникодного деда, или до.
* Ещё можно сделать ограничения по времени работы станции
по флагам. Хотя это прям никому не нужно для IP, но почему бы не
следовать букве стандарту.
икому не нужно.
Стасу сильно надо. Я всё пытаюсь узнать зачем.
Видимо, только чтобы букве правил флагов в нодлисте следовать.
Hу просто представь, что ты - простой юзер, который вообще не
понимает ничего.
Тогда ты сидишь на предустановленной винде на лаптопе, или если бабок хватает, то на предустановленной макоси.
Он купил на последнюю получку raspberry pi, хочет там фидо
поднять! А ему логами фиду завалили..
Это ниразу не юзер. Этот какой-то ламер, решивший попробовать себя в embedded.
Hу это такие, у которых свои круглосуточные NOC центры есть.
Hе! Hе так. Есть мальчик Коля, который получает SMS, если
"сломалось".
aka шарашкина контора. И что, серваки у них на малинках? Бедненькие.
Я большой адепт этой базы данных, сейчас как раз пилю мою новую
балалайку, чтобы в ней хранить фидошные базы.
Крут чо. Только для фидошки это оверкил.
А логи то давно там храню, если клиент не против. Кластер на 3
ноды и redash поверх..
Если логов много, то да.
Sysop: | Angel Ripoll |
---|---|
Location: | Madrid, Spain |
Users: | 11 |
Nodes: | 8 (0 / 8) |
Uptime: | 160:35:58 |
Calls: | 476 |
Calls today: | 1 |
Files: | 14,051 |
Messages: | 66,560 |