Задать вопрос
  • В 2021 году чревато ли устройство на работу где Zend Framework?

    DevMan
    @DevMan
    не так.
    ты либо умеешь и можешь, либо нет. точка.
    а используешь ты стамеску или рубанок заказчика волнует от слова никак, только сделай мои задачи.

    и ZF как раз научит тебя правильной архитектуре или сподвигнет к этому.
    Ответ написан
  • Открытый бесплатный месенджер?

    firedragon
    @firedragon
    Не джун-мидл-сеньор, а трус-балбес-бывалый.
    Джаббер, выбор серверов просто огромен
    Ответ написан
    Комментировать
  • Как поймать ошибку в NodeJS?

    sasha-hohloma
    @sasha-hohloma Автор вопроса
    Fullstack Developer
    Проблема оказалась внутри библиотеки SocksProxyAgent. Уже не помню где читал, но где-то на GitHub писали, что такая ошибка вываливается как uncaught, потому что не висит обработчик на событии ошибки для tls.connect.
    В итоге исправил
    return tls.connect({
        ...omit(opts, 'host', 'hostname', 'path', 'port'),
        socket,
        servername
    });


    На следующий код
    const tlsConnection = tls.connect({
        ...omit(opts, 'host', 'hostname', 'path', 'port'),
        socket,
        servername
    });
    tlsConnection.on('error', () => {
        return null;
    });
    return tlsConnection;


    Возможно имеет смысл ещё покопаться с библиотекой в поисках более изящного решения. Пока что не работает даже если выкидывать ошибку через throw new Error(). Если найду другое решение, отпишу в комменты
    Ответ написан
    Комментировать
  • Можно ли использовать Vpn через определенный регион РФ?

    Zettabyte
    @Zettabyte
    Проф. восстановление данных ▪ Вопрос? См. профиль
    Наиболее разумный вариант - найти хостера с ДЦ в нужной вам локации, купить у него VPS, и поднять Wireguard, OpenVPN, и прочие альтернативы.

    Остальные варианты представляются более заковыристыми в духе поиска человека, который согласится дать вам доступ к своему интернет-каналу, либо разместит что-то наподобие работающего 24/7 модема, роутера и т.п. с соответствующими настройками.
    Ответ написан
    Комментировать
  • Что значит поддержка проекта?

    opium
    @opium
    Просто люблю качественно работать
    Ну например есть клиент который платить мне 123 тысячи рублей в месяц, что я поддерживаю.
    Сервер и его аптайм
    Дев среду для разработчиков
    Бекапы
    Обновление по , секьюрити фиксы, всякие похапе мускул и прочее, минорные постоянно, мажорные раз в один два года
    Правки сайта если что то отвалилось само или при апдейте.
    Оптимизация кода и запросов в базу.
    Нагрузочное тестирование по расписанию и подготовка масштабирования к сезону.

    Клиента не особо напрягает эта сумма, ему сильно важнее чтобы всем работало, его напрягает даже пяти минут простоя, то есть если случился простой хотя бы на минуту меня дернут на полное расследование причин и на их устранение, чтобы это не повторялось. То есть пару минут сайт лежал уже дерут без вазелина.

    Другой пример клиент платит двести баксов в месяц за поддержку
    Бекап
    Правки если что то поломалось
    Автоапдейты софта.

    90 процентов времени ничего не делаю, но клиенту спокойно что когда случится час икс я буду готов принять удар и все исправить
    Ответ написан
    1 комментарий
  • Почему после майнинга на GPU появились лаги?

    iDx
    @iDx Автор вопроса
    проблема решилась. С помощью утилиты DDU удалил драйвера и заново установил. Лаги пропали.
    Ответ написан
    Комментировать
  • Как должна выглядеть структура проекта? Например папки с изображениями?

    @Keliorw
    Ну что бы было всем понятно для чего картинки, стоит их сортировать по папкам с название их назначения, как ты и сказал(фон, контент, декоративный элемент). Если хочешь ещё более подробную сортировку, то можно и глубже разбить картинки по папкам, типо (фоны/главная; фоны/личный кабинет; и т.д.).
    Но вообще, под простым проектом подразумивается, скорее всего лединг и там достаточно папки img, но для красоты картины, можно и по папочкам всё разложить))))
    Ответ написан
    1 комментарий
  • Через что решать задачу про шахматную доску?

    longclaps
    @longclaps
    discount, p = [1., 1.], 1. - 29. / 61.
    for dist in range(1, 7):
        discount.append(discount[-1] * p)
    discount += discount[-2:-8:-1]
    
    res, cnt = 0., 0
    for king in range(64):
        for rook1 in range(64):
            for rook2 in range(64):
                if king == rook1 or king == rook2 or rook1 == rook2:
                    continue
                cnt += 1
                kingx, kingy = divmod(king, 8)
                rook1x, rook1y = divmod(rook1, 8)
                rook2x, rook2y = divmod(rook2, 8)
                attac1hor = 1. if kingy == rook1y else 0.
                attac1ver = 1. if kingx == rook1x else 0.
                attac2hor = 1. if kingy == rook2y else 0.
                attac2ver = 1. if kingx == rook2x else 0.
                if kingx == rook1x == rook2x:
                    if kingy < rook1y < rook2y or kingy > rook1y > rook2y:
                        attac2ver = 0.
                    elif kingy < rook2y < rook1y or kingy > rook2y > rook1y:
                        attac1ver = 0.
                elif kingy == rook1y == rook2y:
                    if kingx < rook1x < rook2x or kingx > rook1x > rook2x:
                        attac2hor = 0.
                    elif kingx < rook2x < rook1x or kingx > rook2x > rook1x:
                        attac1hor = 0.
                attac1 = attac1hor * discount[kingx - rook1x] + attac1ver * discount[kingy - rook1y]
                attac2 = attac2hor * discount[kingx - rook2x] + attac2ver * discount[kingy - rook2y]
                res += attac1 + attac2 - attac1 * attac2
    print(res / cnt * 2.)


    итого 0.3756044599826443
    Ответ написан
    34 комментария
  • Отдельный VPS для защиты от DDOS?

    Sanasol
    @Sanasol
    нельзя просто так взять и загуглить ошибку
    В образовательных целях может стоит в гугле почитать тогда?
    ДДОС никуда нельзя деть полностью, чтобы защититься надо понять что вы хотите защитить и от какого типа ддоса.

    Если речь про самый простой когда тупо забивают весь интернет канал, то единственная защита это иметь интернет канал больше чем мощность ддос атаки. На коленке через VPS это никак не сделать.

    Всё что можно отбить софтом это не ддос, а баловство которое обычно через iptables/fail2ban лечится или капчей на сайте.

    В общем нет никакого софта чтобы понять что это ддос и что-то с ним сделать.
    От ддоса у вас просто всё ляжет, остальное это спам который лечится уже в зависимости от того что за софт у вас и т.д.
    Ответ написан
    Комментировать
  • Возможно ли установить контейнер как сервер?

    romesses
    @romesses
    Backend инженер
    Если у вас вычислительные задачи на том контейнере, то есть немалая вероятность, что вам не удастся выиграть отказом от Docker.
    Пожалуй, разве только если вы запускаете контейнер слишком часто. Тогда это будет иметь смысл. Но тогда вы неправильно пользуетесь Docker.

    Попробуйте переселить тот контейнер на машину помощнее. А лучше даже распараллелить, увеличив количество экземпляров. В итоге, это, может быть, даже архитектурная задача.
    Ответ написан
    5 комментариев
  • Изучение матан?

    @AVKor
    Подобный вопрос уже задавал царь Птолемей I Евклиду. И получил ответ: "К геометрии нет царских путей".
    Ответ написан
    Комментировать
  • Как вывести данные из json на экран?

    Compolomus
    @Compolomus Куратор тега PHP
    Комполом-быдлокодер
    if(isset($_POST['name']) && isset($_POST['number'])) {
        file_put_contents('data.dat', $_POST['name'] . '|||' . $_POST['number'] . PHP_EOL, FILE_APPEND | LOCK_EX);
    }
    
    $data = file('data.dat', FILE_IGNORE_NEW_LINES | FILE_SKIP_EMPTY_LINES);
    
    foreach ($data as $line) {
        $td = explode('|||', $line);
        echo '<tr><td>' . $td[0]. '</td><td>' . $td[1]. '</td></tr>';
    }
    Ответ написан
    Комментировать
  • Как вывести данные из json на экран?

    nefone
    @nefone
    Junior PHP разработчик
    Правильный ли формат для json, что я сохраняю?

    Нет, в JSON должна быть одна пара открывающейся "{" и закрывающейся "}" скобки.

    Или мне как то надо переделать?(если переделать, то как)

    Да, набудет переделать, как то так:
    <?php
    $arr = ['name' => $_POST['name'], 'number' => $_POST['number']];
    
    //читаем данные из файла
    $r_json = file_get_contents("data.json");
    $arr_json = json_decode($r_json, true);
    
    //склеить данные из файла и теми что получили из формы
    $result = array_merge($arr_json, $arr);
    
    //сохраняем данные в файл
    $fp = fopen('data.json', 'a');
    fwrite($fp, $json_data);
    fclose($fp);


    И вообще лучше сделать сохранение в базу данных и потом на странице отдавать чисто JSON, с помощью задания HTTP заголовков:
    header("Content-type: application/json; charset=utf-8");
    Ответ написан
    2 комментария
  • Как сделать мини ветрогенератор из моторчика от принтера?

    @evgeniy_lm
    Ваш моторчик высокооборотистый и нужные вам 3Вт он выдаст при 3000-5000 оборотах, так что необходим редуктор с большим передаточным числом. Не забывайте чем сложнее редуктор тем больше потерь мощности. Так же необходимо предусмотреть ограничение тока при порывах ветра
    Ответ написан
    Комментировать
  • Как запитать периферию для ардуинки?

    @VT100
    Embedded hardware & software.
    Мне нужен вот такой повышающий преобразователь?

    Если на входе питания Iskra уже 5 В, то этот преобразователь - лишний.
    Да и описание его (диапазон входных напряжений и токов нагрузки) - не блещет полнотой.
    Почему существует вот такой преобразователь уровней 5V-3.3V UART? ..... На искре все пины кроме как раз питания толерантны к 5В исходя из описания.

    В данном случае, возможная проблема - в другом месте. "5 V tolerant" вход Rx Iskra будет нормально работать с 5 В выходом Tx Nextion. А вот работу входа Rx Nextion от 3 В выхода Tx Iskra - надо проверять. Желательно - формально, выполнением условия Voh Iskra (выходное напряжение высокого уровня) > Vih Nextion (входное напряжение высокого уровня). Если условие не выполняется (или на практике есть сбои при обмене данными) - поставить преобразователь уровней.
    Ответ написан
    3 комментария
  • Лишняя инструкция в дизассемблированном коде ассемблера?

    dollar
    @dollar
    Делай добро и бросай его в воду.
    Могу ошибаться, но похоже на разогрев памяти - чтение двух ячеек, между которым расположился массив, чтобы этот участок памяти попал в кэш процессора для последующего быстрого доступа к этому участку. Возможно, там далее по коду будет перебор массива.
    Ответ написан
    Комментировать
  • Лишняя инструкция в дизассемблированном коде ассемблера?

    Rsa97
    @Rsa97
    Для правильного вопроса надо знать половину ответа
    Просто компиляция без оптимизации.
    Ответ написан
    1 комментарий
  • Как сделать почтовый сервер для принятия входящей почты?

    sashkets
    @sashkets
    Прекратил отвечать после 24.02.2022
    гайда Вам никто не даст, а вот если эту работу разбить на этапы то можно много постичь по ходу

    -ДНС
    -Сервисы smtp, imap, pop3
    -Courier-imap или Dovecot?
    -Учетные записи пользователей системные или виртуальные? Виртуальные удобнее, да и база данных у Вас уже настроена и работает. Если вдруг потребуется прогонять входящую почту через фильтр procmail, то придется вводить системные учетные записи, потому что с виртуальными procmail не работает
    -Настройка шифрования. Сервисы smtps, imaps, pop3s
    -Настройка smtp-авторизации
    -Установка и настройка антивируса и антиспама
    -Установка веб-интерфейса для работы с почтой
    -Фильтр входящей почты procmail. Необязательно, но ознакомиться стоит

    на полгода достадочно
    Ответ написан
    2 комментария
  • Как тестировать оптимизацию frontend?

    bingo347
    @bingo347
    Crazy on performance...
    796stwepspdbny_xqrwrrtvoor4.png
    Ответ написан
    Комментировать
  • Как отслеживать активность пользователя в системе?

    @AUser0
    Чем больше знаю, тем лучше понимаю, как мало знаю.
    Если юзер закрыл вкладку, или перешел на неотслеживаемую страницу - значит у него перестал исполняться JavaScript код, который например каждые 5 секунд делает проверочный AJAX-запрос типа PING-PONG (с токеном страницы, конечно).
    Ответ написан
    3 комментария