• Ethernet - это единственная технология для создания локальных сетей?

    leahch
    @leahch
    3D специалист. Dолго, Dорого, Dерьмово.
    Да, применяются! Кроме WiFi, еще очень часто используется InfiniBand, у него кстати есть опция эмуляции ethernet

    Куча сетей для автоматизации, начиная от CAN и ProfiBus и заканчивая ARINC и сетями на RS-485/422. Для всяких датчиков охраны применяют еще всякие 1-ware сети.

    Не совсем локальные сети, больше магистральные, но... Можно встретить технологии xHDSL.
    По оптике работают наши провайдеры на технологии GPON.
    Уже редко, но еще остались SDH и ISDN.
    Ответ написан
    1 комментарий
  • Что означает ошибка apache2 is already the newest version?

    leahch
    @leahch
    3D специалист. Dолго, Dорого, Dерьмово.
    Этот не ошибка! Это сообщение, которое говорит, что apache2 уже установлен в системе и он самой последней версии, которую обновлять не нужно.
    Вариантов два - снести апач и поставить заново, или оставить как есть.
    Снести - apt remove --purge apache2
    Ответ написан
  • Почему время выполнения скрипта отрицательное?

    leahch
    @leahch
    3D специалист. Dолго, Dорого, Dерьмово.
    timeit.timeit() вам выдает совсем не то, что Вы думате! В каждом из случаев выдается время простой инструкции pass
    Вам нужно вместо timeit.timeit() использувать time.time()!
    from multiprocessing import Pool
    import time
     
    def doubler(number):
        return number * 2
     
    if __name__ == '__main__':
        start = time.time()
    
        numbers = [1,2,3,4,5,6,7,8,9]
        pool = Pool(processes=9)
        print(pool.map(doubler, numbers))
    
        end = time.time()
        print(end - start)
    Ответ написан
    Комментировать
  • Почему оператор уравнения дает ошибку?

    leahch
    @leahch
    3D специалист. Dолго, Dорого, Dерьмово.
    Выражения так не работают, увы. Нужно выражение разложить на составляющие.
    1) если остаток от деления a на 4 равен 0 a%4 == 0
    2) и остаток от деления a на 400 равен 0 a%400 == 0
    3) и остаток от деления a на 100 не равен 0 a%100 != 0
    Само условие можно записать так, используя скобки.
    if  ( a%4 == 0 ) and ( a%400 == 0 ) and ( a%100 != 0 ):
       pass

    Но что-то мне подсказывает, что если число кратно 400, то оно всегда будет кратно и 100.... Другими словами - условие, очень похоже, никогда не выполнится.... Или само условие задачи неверное
    Ответ написан
    Комментировать
  • Как запустить Windows на втором hdd?

    leahch
    @leahch
    3D специалист. Dолго, Dорого, Dерьмово.
    Подозреваю, что у вас, как и у меня "MacBook Pro (13-inch, Mid 2012)".
    Если так, то я тоже пожалел - никак! Либо ставьте обратно на старое место HDD, и уже с него будет стартовать windows в bootstrap, либо через paralдels или vmware fusion, как это теперь делаю я.
    Это ошибка (или специально так) в EFI на этих ноутбуках.
    Ответ написан
    Комментировать
  • Как сделать запуск python в планировщике заданий?

    leahch
    @leahch Автор вопроса
    3D специалист. Dолго, Dорого, Dерьмово.
    Перезагрузил сервер, и все встало на свои места! Вопрос закрыт!
    Ответ написан
    Комментировать
  • Как сверстать иконку с текстом?

    leahch
    @leahch
    3D специалист. Dолго, Dорого, Dерьмово.
    Рекомендую установить inkscape, в нем в настройках документа установить нужное разрешение и единицы, нарисовать иконку и экспортировать в нужный формат. write.flossmanuals.net/inkscape/creating-icons
    Ответ написан
  • Какую систему мониторинга сети выбрать?

    leahch
    @leahch
    3D специалист. Dолго, Dорого, Dерьмово.
    Telegraf + influxdb + grafana
    И еще в дополнение logstash + elasticsearch и та же grafana
    Ответ написан
    Комментировать
  • Как понять, что стажировка по java плохая, и что с нее стоит уйти?

    leahch
    @leahch
    3D специалист. Dолго, Dорого, Dерьмово.
    Вот согласен, просто поговорите с начальством на тему, чтобы мне поизучать такого в рамках самообразования. Думаю, начальство в этих ваших энтерпрайзах будет всецело радо, что работник не сидит без дела, а самообразовывается. Как минимум я всегда приветствовал самообразование, даже на курсы посылал, а вот ответственные и интересные задания конечно же давать не будут, пока вы даже не junior и на полставки.
    Что до работы на junior в энтерпрайзе и с легаси кодом, то оно все так и есть - копаться и исправлять старые баги. Но поверьте, обычно с зарплатой все хорошо. И чем больше код, тем больше оплата по его корректной поддержке. Переписать систему - это долго и дорого.
    Ответ написан
    Комментировать
  • Что значит умение пользоваться linux?

    leahch
    @leahch Куратор тега Linux
    3D специалист. Dолго, Dорого, Dерьмово.
    Вот бы всю вакансию посмотреть, но скорее всего для работодателя это ничего не значит. Иначе бы он указывал конкретные требования к знанию linux.
    Вполне возможно, что у работодателя есть несколько сервисов или серверов, развернутых на линуксе, сам он к ним никак не касается, а постоянно привлекает сторонних специалистов и хочет быть в теме работы этих серверов-сервисов. Но это как просить уборщицу еще и столы протирать.
    На мой взгляд - это характеризует работодателя не лучшим образом, за редким исключением. Например у нас все инженеры сидят за линуксом, и большинство из них в этом самом линуксе ничего не понимает. Максимум, что им нужно, как скопировать файлы с места на место, а основная их работа в CAD. И вот у них в вакансии есть куча непонятных мне слов про CAD, дизайн, технологии производства, химию процесса, трассировку и в конце строчка - "плюсом будет знание линукс".
    Ответ написан
    4 комментария
  • Можно ли на сервере разместить одновременно сайт и прокси?

    leahch
    @leahch Куратор тега Linux
    3D специалист. Dолго, Dорого, Dерьмово.
    Вообще-то так обычно и делают. Размещают прокси типа nginx, который перенаправляет запросы на внутренние/внешние сайты, виртуалки и контейнеры. И сам прокси тоже может жить и в контейнере и в виртуалке.

    Если все сделано в рамках одной системы, и не заморачиваться с контейнерами-виртуалками, то nginx вешается на 80-й порт, а остальные сайты сидят на других портах типа 8000-9000 и т.д. Причем обычно они вешаются на локалхост.

    И да, можно и VPN поднять.

    Я обычно ставлю все в контейнеры или виртуалки. И управлять проще и разносить впоследствии на кучу серверов, и безопасность повышается, если взломают один сервис-контейнер-виртуалку, то другие не пострадают. Да и бекапить гораздо проще.
    Ответ написан
    Комментировать
  • Как зафиксировать размер браузера в пикселях?

    leahch
    @leahch
    3D специалист. Dолго, Dорого, Dерьмово.
    Попробуйте через AppleScript. Рецепт здесь - https://www.labnol.org/software/resize-mac-windows...
    Или так (тоже через AS) - https://alvinalexander.com/source-code/mac-os-x/ho...
    tell application "Safari"
    activate
    set the bounds of the first window to {140, 0, 1160, 775}
    end tell
    Ответ написан
  • Redis как Message Broker. Какой фреймворк использовать?

    leahch
    @leahch
    3D специалист. Dолго, Dорого, Dерьмово.
    Да, redis вполне справляется с очедью сообщений, но данные все же лучше резервировать где-то еще, он (redis) может что-то потерять при перезапусках случайных и не только. Так что если данные очень критичны, то прихранивайте их в какой нибудь лог для дальнейшего восстановления.
    Для питона есть куча фреймворков, рекомендую начать с flask, как раз очень хорошо подойдет под вашу задачу.
    Ответ написан
    Комментировать
  • Как тестировать драйвера?

    leahch
    @leahch Куратор тега Linux
    3D специалист. Dолго, Dорого, Dерьмово.
    С копмиляцией вам уже посдказали. Давайте я про отладку расскажу. Во первых очень желательно иметь две машины - одну для компиляции и отладки, вторую - таргет, куда все грузим и где тестируем и проверяем
    1) используем printk, в 95% случаев этого достаточно
    2) если аппаратура позволяет, используем jtag - это аппаратный модуль для отладки - 100% успех!
    3) можно использовать kgdb - не всегда это работает.

    Ну и совсем сильная магия - использовать статическую область памяти, где реализуем кольцевой буфер и туда пишем своими средствами отладочную информацию напрямую. Но для этого статическая память должна быть на каком-то из устройств, я обычно пишу в статику в часики реального времени, но не везде они есть и имеются. За то таким образом можно отлаживать абсолютно все, от NME, до драйверов высокоскоростных устройств.
    Ответ написан
    2 комментария
  • Как выгрузить базу данных из MariaDB в таблицу FXML от Scene Builder JavaFX?

    leahch
    @leahch
    3D специалист. Dолго, Dорого, Dерьмово.
    ААА ! У вас дело даже до компиляции не дошло?

    метод
    public void initialize(URL location, ResourceBundle resources)
    , в нем вы вызываете initData(); без входных аргументов,который у вас определен как
    private void initData(ActionEvent event) throws SQLException {
    . Вы либо аргумент в вызове передайте, либо сам метод поправьте и уберите параметр ActionEvent event

    Ну и напоследок. не стоит слать столько кода, достаточно ошибку и кусок кода и описание, когда и при каких обстоятельствах она происходит. За очень и очень редким исключением кто-то созиволит загрузить весь проект и его скомпилировать.
    Ответ написан
    Комментировать
  • Подключение по IP и HTTPS, не будет ли проблем?

    leahch
    @leahch
    3D специалист. Dолго, Dорого, Dерьмово.
    Вам нужно по сертификату на каждый домен. Либо сертификат wildcard на все поддомены вашего общего домена. Сертификат на ip брать очень и очень плохо, так как ip могут меняться, может быть куча ip на домене и т.д.
    Вообще-то nodejs лучше убрать за nginx, который и будет рулить сертификатами и перенаправлять трафик на нужные ip. Обычно делают для этого отдельный сервер с выделенным ip, на него заводят все сертификаты ваших доменов, и далее он перебрасывает запросы (проксирует) уже расшифрованный трафик на внутренние или внешние ip-адреса, лучше на внутренние. Многие провайдеры сразу предлагают такие услуги, амазон и прочие клауды типа селектел и маилру.,
    Ответ написан
  • Нужен сбор статистики по работе пользователей и загрузке сервера, linux. Чем это можно сделать?

    leahch
    @leahch Куратор тега Linux
    3D специалист. Dолго, Dорого, Dерьмово.
    Рекомендую накатить систему мониторинга. Для этого нужна база данных, агент сдбора данных и некий сервис для отображения этих данных.
    Советую InfluxDB - ставится в один клик, обслуживания практически никакого не требует на ваших объемах.
    К ней ставите telegraf - агент сбора статистики, собирает все, что можно собрать, процессы, пользователей, сеть, диски, температуру и т.д. Тоже ставится в один клик.
    И чтобы все это просмотреть через браузер - ставите grafana. Ставится в два клика из пакетов.
    В графане нужно создать графики просмотра данных, но их можно взять уже готовые с самого сайта графины и импортировать к себе.
    В общем, мы так следим за целым кластером машин, я же так слежу за кучей отдельных серверов, где все установлено на них самих же.
    Ответ написан
    Комментировать
  • ElasticSearch выдает ошибку при добавлении нового типа?

    leahch
    @leahch
    3D специалист. Dолго, Dорого, Dерьмово.
    Вам эластик пишет, что type на индекс может быть только один!
    Вот это вот
    "type" => mb_strtolower($login),
    Замените на
    "type" => "_doc",
    А юзера спрячте в поле в боди.
    Ответ написан
    2 комментария
  • Что такое интерфейс и каким образом он представляет набор операций верхнему уровню?

    leahch
    @leahch
    3D специалист. Dолго, Dорого, Dерьмово.
    Самое простое понятие интерфейса - сетевая розетка и штепсель (или вилка). К каждой розетке подходит свой тип вилки, например в разных странах разные стандарты.
    И вот линия передачи передает некую информацию (пусть это будет напряжение 220V), и чтобы подключиться к этой информации нужен интерфейс с одной и другой стороны (коннекторы или вилка-розетка). Тогда набором операций будет "включить вилку в розетку", и "выключить".
    Если это все перевести на программный уровень, то в понятие интерфейса может добавиться "определить тип розетки", "подать питание", "сигнализировать приемник и передатчик", "зарезервировать нагрузку, полосу пропускания" и т.д.
    Таким образом набор операций в виде "интерфеса" определяет те операции, который верхний уровень может делать с нижним, не заботясь о реализации нижнего уровня. Это как включить вилку в розетку, а уж как устроена сама передача по проводам на нижнем уровне, нас не интересует.
    Ответ написан
    Комментировать
  • Как реализовать динамические поля и секции для таблицы?

    leahch
    @leahch
    3D специалист. Dолго, Dорого, Dерьмово.
    Да, возможно пришло время не только для монго, но и для hbase. Ваша задача, по идее очень хорошо ложится именно на hbase.
    Ответ написан
    Комментировать