Задать вопрос
  • Какой яп и фреймворк выбрать для создания сервера?

    GavriKos
    @GavriKos
    Микропетпроджект - домашнее облако homeCloud
    Непонятно почему надо на винсок переписывать - уверен что boost.asio есть под винду.

    Под вашу постановку задачи - то как она тут описана - подходит 90% популярных ЯП и соответствующие для них фреймворки. Но чую задача описана плохо и неполно.
    Ответ написан
    6 комментариев
  • Как правильно реализовать структуру таблиц продукт и цены продуктов?

    VoidVolker
    @VoidVolker
    Dark side eye. А у нас печеньки! А у вас?
    Правильно — чтобы работало согласно ТЗ. Работает — значит сделали правильно, не работает — значит неправильно. Тут как бы других вариантов-то особо и нет.
    Ответ написан
    Комментировать
  • Возможно ли написать программу, которая будет удалять все данные с дисков?

    VoidVolker
    @VoidVolker Куратор тега Железо
    Dark side eye. А у нас печеньки! А у вас?
    Да, именно удалять — возможно. А вот скорость удаления данных с диска зависит от скорости работы накопителя. Для полного удаления данных необходимо полностью обнулить каждую ячейку памяти в накопителе. По умолчанию ОС удаляет только запись о файле в ФС, а вот содержимое файла остаётся и будет перезаписано когда-нибудь в будущем, когда дойдёт очередь до данного сектора/ячейки памяти. Кроме того, для более надёжного удаления данных с HDD используется многократная запись, чтобы не осталось даже остаточного заряда, который теоретически можно считать. Есть даже специальные приложения для удаления данных с дисков с многократной записью в каждую ячейку. Аналогично и для шифрования — надо сначала считать данные с диска, зашифровать их, записать на диск и только потом удалить оригинальные данные.

    Единственное, что может очень быстро удалить данные с диска — устройства для физического уничтожения дисков. Для HDD используются мощные электромагниты. С SSD несколько сложнее, т.к. там используется флеш-память: тут уже требуется физическое разрушение микросхем — измельчить в специальном шредере очень мелко, разогреть больше сотни-полутора градусов, сжечь электромагнитным импульсом (из разряда экзотики конечно же - ибо куда сложнее и есть риск сжечь чего лишнего). Так же существуют специальные SSD со встроенным механизмом уничтожения.
    Ответ написан
    Комментировать
  • Возможно ли написать программу, которая будет удалять все данные с дисков?

    15432
    @15432
    Системный программист ^_^
    Зависит от самого накопителя и того, как он вами используется. Например, диски (как HDD, так и SSD, но чаще SSD) с поддержкой спецификации OPAL всегда хранят данные в зашифрованном виде и для уничтожения данных достаточно отправить одну единственную команду, которая удалит ключ шифрования. Все хранящиеся данные превратятся в мусор. Аналогично, если у вас включен Bitlocker или другой метод полнодискового шифрования - удаление ключа происходит моментально, после чего доступ к данным становится невозможен.

    Также есть современные SSD с поддержкой быстрого безопасного стирания секторов. В отличие от HDD, где стирание может занять несколько суток, у твердотельных накопителей есть возможность полностью стереть все флешки за несколько десятков секунд.
    Ответ написан
    4 комментария
  • Почему сбросились подтверждения права в Google Search Console?

    vpetrov
    @vpetrov
    частный SEO-специалист
    Первое, на что стоит думать - это "Имеет ли гуглобот доступ к сайту?". Бывает так, что с файерволлами и антиботами люди намудрят - и всех делов. Можно логи посмотреть - обращения к файлу подтверждения, например.
    Бывает, просто Search Console опять глючит, надо просто проверку через денёк-другой повторить.
    Так, чтоб пачкой сайты отваливались - не сталкивался. Но бывает.
    Ответ написан
    Комментировать
  • Почему способ создания String влияет на результат сравнения?

    xez
    @xez Куратор тега Java
    TL Junior Roo
    Потому, что Java String pool
    (вопрос встречается на собеседованиях, кстати)
    Ответ написан
    Комментировать
  • Высшее образование Java программисту, нужно ли?

    @prince_pagani
    flutter developer
    уже 4 работа на собесах и слова про образование не промелькнуло хотя в HH требовали
    Ответ написан
    3 комментария
  • Высшее образование Java программисту, нужно ли?

    Zoominger
    @Zoominger
    System Integrator
    Образование, если у вас нет подтверждённого опыта работы - это огромный плюс.
    Если опыт есть (2-3 года), то с радостью возьмут и без образования.
    Ответ написан
    4 комментария
  • Как найти прямую ссылку на TV канал?

    1. DRM - всё уперается в него. По этому ссылки на любой телеканал, хоть платный или бесплатный, нельзя взять бесплатно от правообладателя.
    Если на территории канал транслируется бесплатно, то это не означает, что в интернете он должен быть так же легко доступным. В интернете должны быть ограничения по территории.
    2. Кто-то оформляет подписку у какого-то платного провайдера и берёт ссылку на поток от них. А далее два варианта. Легально смотришь или организовываешь ретрансляцию через своё оборудование и тогда таже наука2.0 становится практически бесплатной.
    Сервис выносят за границу, запрещают просмотр в стране базирования канала и всё. Условная наука2.0 может и не знать, что её транслируют, к примеру в Европе, бесплатно.
    3. Исходя из всего этого, вы не можете получить бесплатную ссылку hls на какой либо телеканал, так как телеканалы оберегают авторские права на контент, делают ограничения на трансляции и хотят окупить затраты на трансляцию в интернет.

    P/s вообще, вещатели любят работать с компаниями, которые будут ретранслировать их контент. Так они получат больше денег, больше аудиторию.
    А работать с отдельным клиентом им не выгодно.
    Ответ написан
    Комментировать
  • Восстановить ранее закрытые вкладки в Хроме?

    @TheBigBear
    СтарОдмины мы
    Нажать Ctrl+H
    проставить галочки
    нажать открыть
    ИМХО - это извращение держать столько открытых вкладок. Есть Избранное для хранения
    Да хоть эксельку создать со списком
    Ответ написан
    2 комментария
  • Почему INSERT присваивает только один символ вместо полного значения?

    @SunTechnik
    У Вас тип данных в колонке: char, то-есть 1 символ.
    Туда больше данных не лезет....
    Ответ написан
    1 комментарий
  • Почему INSERT присваивает только один символ вместо полного значения?

    @Akina
    Сетевой и системный админ, SQL-программист.
    Ну, наверное, потому, что тип поля CHAR(1) - то есть более одного символа в поле тупо не помещается.
    Ответ написан
    Комментировать
  • Как работает аутентификация Яндекса через QR-код?

    @knigaman
    Абсолютно банально работает эта схема. На бекэнде генерируется токен который отправляется в браузер и из него формируется QR код который ты и видишь. Каждую секунду (или другой промежуток времени) браузер делает запрос на сервер с этим токеном и ждет команды на вход в аккаунт или какое-то другое действие (к примеру отклонение входа или устаревание токена и, соответственно, QR кода - это нужно чтобы иногда менять QR коды в целях безопасности). Если мы со своей мобилы сканируем QR код и одобряем вход то с мобилы летит на бекэнд команда для одобрения входа. Когда браузер снова обратится на бекэнд с токеном то бекэнд поймет что этот токен одобрен и выдаст сессию браузеру (кукисы или jwt токены или еще что).

    В целом это все, дальше уже различные нюансы. Ежесекундные запросы можно заменить на лонгпулинг или вебсокеты. Можно сделать нехранимые токены чтобы не засорять базу при каждом посещении страницы входа, можно показывать карту с точкой откуда происходит вход, расшифровывать user-agent чтобы показывать какое устройство входит и т.д. и т.п. Но в общем схема выглядит именно так.

    UPD: Тут важный нюанс: если мы показываем токен в QR коде и потом им же стучимся на бекэнд за сессией то возникает уязвимость - любой прохожий отсканирует этот QR код и начнет в своем браузере стучаться с этим же токеном, ты одобряешь вход и в состоянии гонки злоумышленник может достучаться первым до бекэнда и перехватить твою сессию, а ты останешься с носом. Поэтому нужно генерировать пару открытый токен-закрытый токен. Открытый будет загоняться в QR код, а по закрытому будем стучаться к бекэнду за сессией. В этом случае не залазя в устройство перехватить вход будет невозможно.
    Ответ написан
  • Контейнер rabbitmq docker стартует раньше чем сервис nginx. Как указать согласованность запуска?

    @Zerg89
    Насколько помню если нужно согласовать несколько контейееров то это docker-compose
    И в нем должно быть что-то типа такого
    celery:
       depends_on:
         - rabbitmq # старт после старта контейнера rabbitmq
       command: sh -c './wait-for host:5432 -- cmd' # ожидаем
    Ответ написан
    4 комментария
  • Как такое сверстать?

    @7rows
    Frontend Разработчик / Vue / JS / TS / CSS
    Держи
    Недавно нашли, нам очень помогло, переменные можешь так же, отрегулировать

    Можно еще что-то тут глянуть
    Ответ написан
    1 комментарий
  • Перевод бэкенда с PHP на NodeJs?

    VoidVolker
    @VoidVolker
    Dark side eye. А у нас печеньки! А у вас?
    1-2: Фреймворк/ОРМ не принципиальны — накосячить и страдать можно абсолютно с любым или без. Определитесь для начала с вашими конкретными требованиями к нему, а уже потом собираете список подходящих под ваши требования, щупаете каждый и выбираете тот, что вам больше нравится.

    3: Описать в ОРМ модели на текущий момент времени и дальше новые миграции делать в рамках данной ОРМ. Ну и проверять на тестовой БД перед деплоем, конечно же.

    4: Нет, смысла нет. Сегодня оно есть — завтра нет или ещё что. А ещё есть проблемы совместимости и сама незрелость проекта. Производительность — понятие относительное. Если она вам нужна — для этого есть такие вещи как "Нагрузочные тесты", "Профилирование", "Оптимизация" и прочее. И использовать это надо тогда, когда у вас встанет такой вопрос. Ну или осваивать Go/Rust/C#/C++.

    Иметь внятные способы/библиотеки для WS-соединений

    uWebSocket — потому что на сях и активно развивается.

    возможность само-перезапуска в случае, если совсем "ой"

    pm2 или аналоги типа luster.

    бэк на js - тот же зоопарк, что и фронт на js. В связи с чем нужна помощь.

    Зоопарк сейчас вообще везде. Вот именно для помощи в вашем конкретном случае вам следует нанять опытного NodeJS разработчика как минимум для первичной консультации и регулярного общего контроля хотя бы. А именно: собрать ваши требования и детали по проекту, подготовить как минимум общее ТЗ и уже по результатам консультации принимать какие-то конкретные решения.
    Ответ написан
    Комментировать
  • Какие нужны навыки начинающему junior сис админу и каков его карьерный рост?

    sergey-gornostaev
    @sergey-gornostaev
    Седой и строгий
    Компании разные, ставки разные, поэтому и требования довольно разнообразные. На старте полезно иметь кругозор пошире, знать как можно больше всего, пусть даже по верхам, и уметь быстро углубиться в пригодившуюся тему. С карьерным ростом специализация будет всё уже, а глубина знаний в выбранной области всё больше. Обычно из эникейшика админ вырастает в настоящего сисадмина, который не в принтерах копается и не под столами с обжимником лазит, а управляет серверами и активным сетевым оборудованием. Потом сисадмин сосредотачивается либо на сетях, либо на администрировании серваков какого-то определённого типа и превращается в сетевого инженера, администратора баз данных и т.п. Если админ ещё и код писать умеет, то часто превращается в devops'а. Впрочем, сейчас девопсами называют всех подряд, кто умеет настроить дженкинс и кубик. Параллельно со специализацией растёт и размер подответственной инфраструктуры, от десятка компов маленькой компании до сети транс-национальной корпорации, покрывающей территорию нескольких стран. На каком-то этапе роста появятся подчинённые, а потом и подчинённые у подчинённых. Появляется необходимость забивать голову всякими там ITIL'ами. И однажды себя обнаруживаешь на должности какого-нибудь там CIO.
    Ответ написан
    Комментировать
  • Туннель Wireguard — всё?

    SignFinder
    @SignFinder
    Wintel\Unix Engineer\DevOps
    Судя по симптомам - да похоже на блок со стороны РКН.
    И да - в нынешних реалиях возможно поднять туннель, для вас можно начать с awg, чтобы решить проблему с наименьшими потерями времени в настройке.
    Ответ написан
    3 комментария
  • Туннель Wireguard — всё?

    smorman
    @smorman
    When In Rome do as The Romans do...
    Сделай обфускацию WG с помощью:
    Обфускация
    WG+Wstunnel

    и всё будет работать...
    Ответ написан
    Комментировать
  • Как опубликовать Django приложение, чтобы работали картинки .jpg?

    @Everything_is_bad
    Публиковал на render.com
    да когда же вы доки используемых сервисов научитесь читать https://render.com/docs/deploy-django#set-up-stati...
    Ответ написан
    Комментировать