Задать вопрос
  • Как писать микросервисную архитектуру?

    Вы не сможете себе в портфолио добавить микросервисную архитектуру просто написав ее в пет-проекте. Настоящие микросервисы можно пощупать только на масштабах больших компаний и их инфраструктуре, так что устраивайтесь джуном/стажером в какой-нибудь Авито или Озон.

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

    Сделайте лучше хороший проект-монолит, отработайте навыки языка, БД, развертывания, гита, итд... на одном проекте. Будет гораздо полезнее.
    Ответ написан
    2 комментария
  • Какую видеокарту и материнскую плату выбрать для процессора Ryzen 7 5700x?

    я сейчас думаю о покупке видеокарты(бюджет +- 80к)

    Можно на эти деньги найти RTX 4070ti

    и материнской платы(+-20к)

    что-нибудь на B550 с нормальным питанием ищи, что будет у тебя в наличии.
    Обзоров достаточно.

    чтобы все было совместимо и было на одинаковом уровне если так можно сказать

    Что такое "одинаковый уровень"?
    Ответ написан
    Комментировать
  • Каким образом и где можно разместить аудиофайл с расширением mp3 чтобы доступ на прослушивание к нему был, но возможность скачивания не была доступна?

    CityCat4
    @CityCat4 Куратор тега Информационная безопасность
    //COPY01 EXEC PGM=IEBGENER
    Задача не имеет решения.

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

    А что помешает энтузиасту-фанату написать свой плеер с функцией сохранения? Опять же аудиопоток можно банально записать с аудиовыхода - без всяких аудиокабелей - просто включив воспроизведение в колонки и положив рядом телефон :) Да, качества не будет, но обычно когда задумываются о такой вот вещи - качество не нужно, обычно это аудиозаписи "волшебных курсов", там достаточно разборчивого текста.
    Ответ написан
    3 комментария
  • Почему нижняя часть дисплея MacBook дублируется верхней частью дисплея?

    @Mercury13
    Программист на «си с крестами» и не только
    Видяха, шлейф, дешифратор матрицы. Больше похоже на последний.
    Какое разрешение вашего ноутбука? — это важно, дешифратор заглючивает где-то близко к степеням двойки.
    Ответ написан
    7 комментариев
  • Как запустить локальный сервер и получить данные с него?

    @Rerurk
    1. Установить node. Is
    2. Написать код который будет слушать входящие запросы на localhost
    2. Написать обработчики запросов
    Ответ написан
    Комментировать
  • На кого идти, чтобы изучать процесс полного погружения?

    xez
    @xez
    TL Junior Roo
    На нейрохирурга.
    Насчет "процесса полного погружения" не обещаю, но на хлеб с маслом должно хватать.
    Ответ написан
    4 комментария
  • Как себя показывают материнские платы от Huananzhi?

    anthtml
    @anthtml
    Системный администратор программист радиолюбитель
    За цену новой Huananzhi можно взять б/у supermicro а иногда и lenovo/dell у проверенных продавцов.
    Хотя, хозяин барин и смотря под какие задачи, но часто в китайских материнках попадаются отбраковки от брендов.
    Ответ написан
    5 комментариев
  • Как регулярными выражениями оставить только цифры?

    Maksim_64
    @Maksim_64
    Data Analyst
    сделай замену. r'\D', '',все что не цифра, на пустую строку.
    Если конечно ты уверен, что все они выглядят так как у тебя в примере, если например присутствуют плавающая точка или запятая или число отрицательное, то получишь ошибку, неприятную.
    Ответ написан
    Комментировать
  • Можно ли запустить grafana и wireguard на одном сервере?

    SignFinder
    @SignFinder
    Wintel\Unix Engineer\DevOps
    Да, будет работать.
    Ответ написан
    1 комментарий
  • Как понять стоит ли менять экран на смартфоне?

    xez
    @xez
    TL Junior Roo
    в 2014 вроде покупал

    В утиль
    Ответ написан
    Комментировать
  • Как сохранить большое число в JS?

    @maksam07
    npm install decimal.js
    const Decimal = require('decimal.js');
    
    let number = new Decimal('37.586582183837891');
    console.log(number.toString());


    const Decimal = require('decimal.js');
    
    function processNumber(input) {
      let preciseNumber = new Decimal(input);
      return preciseNumber;
    }
    
    let inputNumber = '37.586582183837891';
    let preciseResult = processNumber(inputNumber);
    
    console.log('Точное число:', preciseResult.toString());
    Ответ написан
    4 комментария
  • Как подключить Аутентификацию на сайт?

    Mike_Ro
    @Mike_Ro
    Python, JS, WordPress, SEO, Bots, Adversting
    Ответ написан
    Комментировать
  • Как в идеале делается деплой среднего веб-приложения?

    Mike_Ro
    @Mike_Ro
    Python, JS, WordPress, SEO, Bots, Adversting
    Приложение > тесты > создание docker image приложения > ci/cd > создание docker container приложения из образа.
    Ответ написан
    Комментировать
  • Как в идеале делается деплой среднего веб-приложения?

    @Everything_is_bad
    Нет никакого идеала, деполой зависит от конкретного "веб-приложения", докер это всего лишь один из вариантов, по мне так не самый удачный.
    Ответ написан
    Комментировать
  • Как начать пользоваться PostgreSQL?

    @Everything_is_bad
    sudo -u postgres -i psql и создаем юзеров и базы через sql или sudo -u postgres -i потом всякие createuser, createdb если они были в пакетах дистрибутива.
    так же изучаем вывод psql --help, далее гуглим про pg_hba.conf

    Ошибка не гуглится,
    про postgres уже сто лет как все прекрасно гуглится
    Ответ написан
    Комментировать
  • Где тут ошибка?

    yarkov
    @yarkov
    Помог ответ? Отметь решением.
    $ json-server --version
    1.0.0-beta.1


    $ json-server --help
    Usage: json-server [options] <file>
    
    Options:
      -p, --port <port>  Port (default: 3000)
      -h, --host <host>  Host (default: localhost)
      -s, --static <dir> Static files directory (multiple allowed)
      --help             Show this message
      --version          Show version number


    А вот если ставить не последнюю версию, то вот такой результат

    $ json-server --version             
    0.17.4

    $ json-server --help                
    json-server [options] <source>
    
    Опции:
      -c, --config                   Path to config file
                                                  [по умолчанию: "json-server.json"]
      -p, --port                     Set port                   [по умолчанию: 3000]
      -H, --host                     Set host            [по умолчанию: "localhost"]
      -w, --watch                    Watch file(s)                     [булевый тип]
      -r, --routes                   Path to routes file
      -m, --middlewares              Paths to middleware files              [массив]
      -s, --static                   Set static files directory
          --read-only, --ro          Allow only GET requests           [булевый тип]
          --no-cors, --nc            Disable Cross-Origin Resource Sharing
                                                                       [булевый тип]
          --no-gzip, --ng            Disable GZIP Content-Encoding     [булевый тип]
      -S, --snapshots                Set snapshots directory     [по умолчанию: "."]
      -d, --delay                    Add delay to responses (ms)
      -i, --id                       Set database id property (e.g. _id)
                                                                [по умолчанию: "id"]
          --foreignKeySuffix, --fks  Set foreign key suffix (e.g. _id as in post_id)
                                                                [по умолчанию: "Id"]
      -q, --quiet                    Suppress log messages from output [булевый тип]
      -h, --help                     Показать помощь                   [булевый тип]
      -v, --version                  Показать номер версии             [булевый тип]
    
    Примеры:
      json-server db.json
      json-server file.js
      json-server http://example.com/db.json
    
    https://github.com/typicode/json-server
    Ответ написан
    6 комментариев
  • Почему торрент сам запускается даже с выключенной автозагрузкой?

    @rPman
    Sysinternails autoruns покрывает большую часть способов автозапуска
    Ответ написан
    Комментировать
  • Почему перестают работать usb-serial устройства на Raspberry Pi 4?

    ProgrammerForever
    @ProgrammerForever
    Учитель, автоэлектрик, программист, музыкант
    Фильтруйте питание. Там защит много не бывает, особенно в автоприменениях. По питанию катушка выдаст хорошие такие иголки, которые надо бы фильтровать. А по воздуху - кучу помех в широком спектре.
    Поставьте электролит + керамика на питание.
    Поставьте ферритовые колечки на провода питания.
    Укорачивайте сигнальные провода по возможности.
    Экранируйте платы, все экраны - на землю в одной точке.
    В конце концов, сделайте аккумуляторное питание не от машины, а от отдельного акб.
    Ответ написан
    Комментировать
  • Как настроить 3 роутера что бы работало RDP windows?

    b1ora
    @b1ora
    Контакты в профиле
    Идти в сторону избавления от NAT'ов и перевести роутеры в режим точки доступа.
    Ответ написан
    Комментировать
  • Как настроить сервер для отладки вебхуков (webhooks) на локальной машине??

    Mike_Ro
    @Mike_Ro
    Python, JS, WordPress, SEO, Bots, Adversting
    1. Сбилдить .NET приложение в докере.
    2. Развернуть докер контейнер на сервере.
    3. Развернуть nginx (тоже можно в контейнере) на сервере.
    4. Настроить nginx, который будет проксировать трафик в п2:
    4.1. Запретить все.
    4.2. Разрешить :80 и :443 порты.
    4.3. Пробросить с п4.2 на внешний порт контейнера п2.
    4.4. Настроить SSL Let's Encrypt (при необходимости).

    По сути, можно взять любое руководство настройки докера и nginx, без привязки к .NET.

    UPD на основе данных из комментариев, конфиги будут выглядеть примерно так, dockerfile (поправить под свое приложение):
    # Образ asp.net.
    FROM mcr.microsoft.com/dotnet/aspnet:8.0 AS base
    WORKDIR /app
    EXPOSE 80
    EXPOSE 443
    
    # Компилируем приложение из /src.
    FROM mcr.microsoft.com/dotnet/sdk:8.0 AS build
    WORKDIR /src
    
    # Копируем файл проекта и восстанавливаем зависимости.
    COPY ["Project.csproj", "."]
    RUN dotnet restore
    
    # Копируем оставшиеся файлы и компилируем приложение.
    COPY . .
    RUN dotnet build -c Release -o /app/build
    
    # Публикуем приложение.
    FROM build AS publish
    RUN dotnet publish -c Release -o /app/publish
    
    # Создание итогового образа.
    FROM base AS final
    WORKDIR /app
    COPY --from=publish /app/publish .
    ENTRYPOINT ["dotnet", "App.dll"]

    nginx (поправить под свое приложение):
    # http.
    server {
        listen 80;
        listen [::]:80;
        # Домены для обслуживания.
        server_name domain.ru www.domain.ru;
    
        # 301 редирект http->https.
        return 301 https://$host$request_uri;
    }
    
    # https.
    server {
        listen 443 ssl;
        listen [::]:443 ssl;
        # Домены для обслуживания.
        server_name domain.ru www.domain.ru;
    
        # Пути до letsencrypt сертификатов.
        ssl_certificate /etc/letsencrypt/live/yourdomain.com/fullchain.pem;
        ssl_certificate_key /etc/letsencrypt/live/yourdomain.com/privkey.pem;
    
        ssl_protocols TLSv1.2 TLSv1.3;
        ssl_prefer_server_ciphers on;
        ssl_ciphers "ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256";
    
        location / {
            # Адрес, по которому доступно приложение на локалке сервера (localhost не указывать, а указывать имя контейнера (project в моем случае)).
            proxy_pass http://project:80;
            proxy_set_header Host $host;
            proxy_set_header X-Real-IP $remote_addr;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
            proxy_set_header X-Forwarded-Proto $scheme;
        }
    }

    P.S. рекомендую освоить Docker Compose, чтобы было меньше возьни с разворачиванием и общением между контейнерами.
    Ответ написан
    8 комментариев