• Какое железо лучше для нагруженного веб-сервера?

    AgentSmith
    @AgentSmith
    Это мой правильный ответ на твой вопрос
    Для нагруженных сервисов железо не так важно, важна архитектура.
    Железо - это вертикальное масштабирование и оно всегда имеет ограничения, с которыми все сталкиваются через полгод-год-два. Впрочем, этот твой вопрос тому доказательство.
    Надо делать упор на горизонтальное масштабирование, чтобы не зависеть от характеристик железа.
    Другими словами, должно быть много недорогих (слабых) серверов, а не один дорогой и мощный.
    Лично мне такой подход позволяет держать нагрузку ~24000 запросов в секунду на десяти дешёвых серверах.
    Если нагрузка возрастёт, то я куплю ещё 2-5-10 дешёвых серверов вместо того, чтобы думать о характеристиках железа
    Ответ написан
    Комментировать
  • Как в функцию, внутри функции map() передать больше аргументов?

    lxstvayne
    @lxstvayne
    Люблю Python
    Вероятно, вам нужен partial из functools:
    from functools import partial
    
    
    def f(x, y, z): ...
    
    map(partial(f, y=5, z=2), [1, 2, 3])
    Ответ написан
    Комментировать
  • Можно ли получить глубину рекурсии?

    ketovv
    @ketovv
    Питонист
    Что-то вроде такого
    def recursion_func(..., level=0):
       ...
       recursion_func(..., level=level+1)
    Ответ написан
    Комментировать
  • Столкнулся с непонятным - откуда лишние 00000002?

    sergey-gornostaev
    @sergey-gornostaev Куратор тега Python
    Седой и строгий
    Ответ написан
    Комментировать
  • Как правильно выбрать ячейку SQLite3?

    Vindicar
    @Vindicar
    RTFM!
    Про INSERT вам написали, а я добавлю. Никогда не составляйте запросы через форматирование строк, используйте подстановку параметров.
    Ответ написан
    Комментировать
  • Как запустить бесконечный цикл в django приложении?

    sergey-gornostaev
    @sergey-gornostaev Куратор тега Django
    Седой и строгий
    Я бы отказался от использования моделей Django, они не предназначены для использования в конкурентном окружении, и написал отдельный асинхронный микросервис, связанный с django-проектом через пару очередей.
    Ответ написан
    4 комментария
  • Система управления компьютерами на linux?

    SignFinder
    @SignFinder
    Wintel\Unix Engineer\DevOps
    Ответ написан
    Комментировать
  • Почему прыгает качество сигнала?

    @mordo445
    Если коаксиал это какой нибудь rg-6 то длину надо уменьшить и проверить как он соединен с антенной. И пигтейл на модеме самодельный или заводской? 5 метров для 4g это не менее 3 дБ потерь, половина усиления антенны зачастую. Расположите модем как можно ближе к антенне, используйте USB удлинитель, но придется найти очень хороший, на большей части барахла только мышка может работать. Синяя антенна это какая? Что нибудь на ней написано? она точно для 4g?
    Ответ написан
  • Какие подводные в переходе с C# на Java?

    firedragon
    @firedragon
    Не джун-мидл-сеньор, а трус-балбес-бывалый.
    Первый подводный камень зачем?
    Оба языка используются в энтерпрайзе, вы при переходе серьёзно потеряете в деньгах на какое то время. Медианный же рэйт различается процентов на 10%.

    Дальше так как ява более стар, то имеет кучу легаси и неохотно добавляют новые плюшки.

    Dot net же наоборот очень агрессивно развивается.

    Насчет совместимости. У явы жуткий бардак как с версиями, так и типами jre. И оракл этому способствует. У ms все проще
    net 2 *1
    net 4 *1
    net core 2.1 *2
    net core 3 *2
    net 5 *3
    net 6
    *1 - старый легаси
    *2 - легаси уже из новой платформы
    *3 - еще с год будет актуален

    С вакансиями и там и там все нормально. Но с нуля встрять трудно
    Ответ написан
  • Как правильно назначать порты?

    saboteur_kiev
    @saboteur_kiev Куратор тега Компьютерные сети
    software engineer
    любой. Но лучше выше 1024.
    Ответ написан
    Комментировать
  • Где найти крутых специалистов по атакам на старинный Linux?

    karabanov
    @karabanov Куратор тега Linux
    Системный администратор
    Копай в сторон SERIAL, может быть там сразу root можно получить.
    Ответ написан
    4 комментария
  • Как создать символическую ссылку для папки и всех ее вложенных файлов и папок?

    @pfg21
    ex-турист
    разобраться в правах доступа к файлам и т.д.

    1. файл ****mam.ru/imgs/1.jpg может быть не доступен для чтения той програмке куда подсовываешь (я правильно понял это http-сервер под отдельным пользователем)

    2. програмка, которая пытается получить доступ к файлу ограничена директорией (chroot) /home/mam/web/mam.ru/public_html и не имеет права прочитать файл в директориях вне указанного пути.
    тогда вместо линка используй mount --bind

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

    и т.д. и т.п. изучай :)
    Ответ написан
    Комментировать
  • Как организовать мониторинг в реальном времени доступности компьютеров в сети?

    gbg
    @gbg Куратор тега Компьютерные сети
    Любые ответы на любые вопросы
    Если в вашем распоряжении есть управляемые коммутаторы, информацию о том, какой MAC подключен в какой порт, можно снять прямо с них.
    Ответ написан
    1 комментарий
  • Как работать с ОЗУ в сети?

    @rPman
    RDMA протокол и в основном аппаратные решения (например на основе InfiniBand) но и на програмном поверх ethernet - например RoCE или iWARP.

    Так же есть аналог gpudirect rdma но в пределах одного сервера, когда видеоускорители объеденены дополнительным кабелем и могут передавать данные не пропуская их через pcie

    p.s. что то мне говорит что язык c# (точнее виртмашина clr) и требования к скоростям, из-за которых вынуждены работать с rdma - рядом не стоят, я даже не нашел ни единого упоминания об этом (есть что то от майкрософта, расширение smb2 протокола для работы через rdma и примеры кода на c#)
    Ответ написан
    Комментировать
  • Что за деталь на фото?

    @pfg21
    ex-турист
    кондер стоит как защита от помех коллектора двигателя.
    там выделяется куча помех для которых провод становится передающей антеной.
    на второй картинке синфазный дроссель с бифилярной намоткой. тоже для подавления помех.

    все прекрасно будет работать без них, только куча помех в эфире.
    Ответ написан
    2 комментария
  • Linux и проблемы с сетевыми картами?

    jamakasi666
    @jamakasi666 Куратор тега Linux
    Просто IT'шник.
    Все же стоит еще раз проверить питание по причинам:
    • USB хаб один фиг берет питание с малины, а может быть и наоборот. В rpi4 точно такое есть, я сталкивался что малина начинала питаться от хаба
    • посчитайте мощность пиковую всех модемов и сраните выдает ли БП ее, у orico обычно 48 Ватт всего. В среднем модем кушает 1.5 А на 5 В что уже 7.5 Ватт. Итого 7.5 * 6 (модемов) = 45 Ватт что уже предел, добавляете еще один модем и уже 52.5 Ватт и БП этого не вывезет. И это только на вскидку т.к. вероятнее всего модем жрет больше и дополнительно сама малина может посасывать питалово
    • из за предыдущего пункта вытекает самый первый пункт, БП уходит в защиту, все модемы скидываются, потребление падает, начинает включаться в этот момент оно может подсасывать с малины сажая ее питание, постепенно модем по цепочке заводятся и начинают снова превышать бюджет питания, круг замкнулся и все по новой. Отсюда лаги + большое число USB надо определить и система видимо тоже тупит

    В общем проверяйте питание и считайте, уверен на 100% проблема именно в нем.
    Ответ написан
    Комментировать
  • Какой СPU выбрать для самосборного NAS?

    firedragon
    @firedragon
    Не джун-мидл-сеньор, а трус-балбес-бывалый.
    https://www.chaynikam.info/cpu_comparison.html?Cel...`

    я бы взял Celeron J3060 сугубо из за энергопотребления
    на самом деле к насу требования довольно простые хорошая мама с 2 гигабитными портами и аппаратным ускорением. Достаточное количество sata портов. аппаратный рэйд (тогда нужен аналог ilo ) или программный рэйд.
    Ответ написан
    1 комментарий
  • Как собрать сервер на устаревшем ПО?

    @rPman
    Одно слово - вииртуализация.

    Так как при попытке установить старую версию ОС на новое железо можно получить странные проблемы (а можно не получить, не попробуешь не узнаешь) но главное устаревший софт уже давно не поддерживается и никто баги в нем не чинит. Закрыть виртуалку фаерволом (просто когда она за nat уже хорошо) логичнее всего.

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

    ОС FreeBSD 7.2
    уходи от этого, на linux, рекомендую для новичков - на ubuntu, сама freebsd может и норм но настраивать что то нестандартное будет новичкам тяжелее на порядок

    С высокой вероятностью Lighttpd и MySQL подойдут новых версий, и большая часть проблем создаст код, написанный под старую версию php, т.е. почему бы не попробовать установить на современную ОС только его (но придется собирать из исходников, я не видел бакпортов php такой старой версии под новые) т.е. вся возня, найти максимально высокую версию ОС для запуска в виртуалке, для которой есть php4

    Для установки старой версии ubuntu можно использовать архив old-releases.ubuntu.com и указав их репы в debootstrap собирать какую угодно старую версию минисборки в каталог, которую уже можно виртуализировать хоть chroot хоть lxc хоть полноценной виртуалкой
    Ответ написан
    2 комментария
  • Как собрать сервер на устаревшем ПО?

    CityCat4
    @CityCat4
    Внимание! Изменился адрес почты!
    Виртуализовать машину и пусть пашет себе до изнеможения.

    Как виртуализовать? Тут придется немного потрахаться. (Мне не так давно пришлось сделать примерно то же самое, только версия FreeBSD была еще более старой - установлена (мной же) в 2004 году!)
    - Снять винт и воткнуть в машину, где есть место равное двойному обьему винта
    - Сделать тупой посекторый образ винта (dd в линухе, WinDD в винде)
    - Сконвертить полученный образ в образ, годный для гипера - vdi, vmdk, vhd, смотря какой гипер будет
    - Создать машину, указать в качестве винта полученный образ, с железом не фантазировать, ставить то, что точно есть в ядре (во FreeBSD ядро монолитное, практика подгрузки модулей не особо применяется, если дров нет в ядре - скорее всего их нет вообще)
    - Забутится и проверить, что все работает/не работает. Если вдруг понадобится какая-то программа - придется качать вручную ту самую версию, которую хочет порт, класть в /usr/ports/distfiles и собирать.

    Если чувствуете уверенность в своих силах - можно не откапывать стюардессу - это замечено совершенно верно (увы, FreeBSD все больше движется ... в никуда) - а поднять линух, тот, который знаете и поставить там нужные версии софта, а сайт просто тупо перенести.
    Ответ написан
    Комментировать
  • [Java] Отправка задачи в другой поток, который был запущен ранее. Возможно ли?

    xez
    @xez Куратор тега Java
    TL Junior Roo
    Возможно
    Ответ написан
    Комментировать