• В чем смысл использования Golang как веб сервер?

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

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

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

    Но абстракций на Го очень мало, по сравнению с той же Джавой, он довольно бедно выглядит (что и дает простоту чтения кода). Это является минусом в определенных ситуациях, поэтому на Го стараются писать небольшие сервисы.

    В итоге, легковесность горутин, легкость работы с ними и асинхронная модель из коробки (не создается тред на каждую рутину, а наоборот, рутины обрабатываются разными тредами по необходимости) привели к тому, что ниша Го это сервисы, которые упираются в ожидание ресурсов от каких-то внешних систем по сети. То есть, идеальный кейс для веб-сервера, который собирает под капотом инфу с БД и других сервисов. По сути такой сервис большую часть времени ждет ресурсов по сети, в Го это ожидание сделано очень эффективно.
    Ответ написан
    Комментировать
  • Зачем бэкендеру веб-разработки нужно указывать как проектировать систему?

    AshBlade
    @AshBlade
    Просто хочу быть счастливым
    Бэкендер, что, не разработает микросервис исходя из просто человеческого описания функционала? Не разберется как отправлять/получать сообщения в/из очередь брокера, чтобы получилась работающая фича? Не сообразит какой лучше сделать эндпоинт и что передавать в квери парамтерах/теле запроса? Не сообразит как доработать таблицы базыданных? Не разберется в документации апи внешнего сервиса для интеграции?

    Теперь понятно из-за кого спрос на гадалок возрастает
    Ответ написан
    2 комментария
  • Что учить для работы в джава Энтерпрайз?

    sergey-gornostaev
    @sergey-gornostaev Куратор тега Java
    Седой и строгий
    • Изучать сам язык и платформу, в этой области можно углубится намного дальше Head First;
    • Изучать идиоматику и принципы проектирования программ, хотя бы Блоха почитать;
    • Изучать асинхронщину, особенно многопоточность;
    • Изучать сети в целом и Web в частности;
    • Изучать стандарты JEE и Spring;
    • Изучать реляционные СУБД;
    • Изучать принципы проектирования систем, горизонтальное масштабирование и микросервисную архитектуру.

    Этот список можно очень долго продолжать. И это только java-мир, а сколько ещё всего косвенного, что хорошему программисту знать!
    Ответ написан
    2 комментария
  • Скорость SSD зависит от объёма?

    Zettabyte
    @Zettabyte
    Проф. восстановление данных ▪ Вопрос? См. профиль
    Влияет ли объём ССД на его скорость записи?

    Да.
    Самые маленькие SSD (меньшей ёмкости) в линейке обычно самые медленные.

    Вот, например, спецификации Micron M510DC:
    micron-m510dc-specifications.png

    нужны ссд на одинаковом контроллере, но разного объёма

    Смотрите полные даташиты на кандидатов, у нормальных производителей эта информация есть и публична.
    Ответ написан
    3 комментария
  • Почему каст u32::MAX в f32 увеличивает число на 5?

    Rsa97
    @Rsa97
    Для правильного вопроса надо знать половину ответа
    32-bit unsigned int имеет 32 бита для хранения значения.
    32-bit float только 24 бита для хранения мантиссы.
    Поэтому точность представления числа и падает.
    Ответ написан
    3 комментария
  • В чем может быть проблема неправильного 301 перенаправления в конфигурации на Web сервере nginx + php-fm?

    @mxup Автор вопроса
    Нашёл проблему! :D
    В файле:
    /etc/nginx/snippets/fastcgi-php.conf
    имеются такие строки (причём дефолтные, насколько помню, я ничего не трогал в этом файле при установки Nginx и PHP-FM)
    # Bypass the fact that try_files resets $fastcgi_path_info
    # see: http://trac.nginx.org/nginx/ticket/321
    set $path_info $fastcgi_path_info;
    fastcgi_param PATH_INFO $path_info;


    Закомментировал эту строку и всё заработало!
    # Bypass the fact that try_files resets $fastcgi_path_info
    # see: http://trac.nginx.org/nginx/ticket/321
    set $path_info $fastcgi_path_info;
    #fastcgi_param PATH_INFO $path_info;

    Не знаю правда пока что, как это повлияет на остальную работу сайта, но думаю все будет нормально.
    Ответ написан
    Комментировать
  • Pxe установка AstraLinux нужен ли DHCP?

    @Drno
    DHCP нужен, потому что он должен указать нужный DHCP код и откуда грузиться PXE
    можете сделать это всё на своем уже имеющемся DHCP

    2DHCP не используется в сети, иначе могут быть проблемы
    Ответ написан
    1 комментарий
  • Как отправлять запросы https на сервер http?

    martin74ua
    @martin74ua Куратор тега Компьютерные сети
    Linux administrator
    сделайте все свои сервера https
    Ответ написан
    Комментировать
  • Произошло ли повреждение материнки в сокете?

    anthtml
    @anthtml
    Системный администратор программист радиолюбитель
    По идее, сокету AMD ничего не будет, скоба просто плотнее прижимает ножки процессора к контактам сокета.
    Если на площадке процессора ножки не оторвались, то ему скорее всего тоже ничего не будет.
    Ну покрайней мере в, в практике тоже пару раз кулер вылазил только вместе с процем и после этого все работало.
    Ответ написан
    Комментировать
  • Как соединить локальный порт с сервером?

    VoidVolker
    @VoidVolker
    Dark side eye. А у нас печеньки! А у вас?
    Использовать SSH туннель.
    Ответ написан
  • Как технически реализована механика кликеров?

    saboteur_kiev
    @saboteur_kiev Куратор тега Разработка игр
    software engineer
    Как в приложении реализована защита от абьюза?

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

    Ну и теневой бан - проанализировать клики, добавить в хедер уникальный код, который может отправляться не каждый раз, и потом забанить - известно, что банили аккаунты - учитывая непростую регистрацию, это отпугнет многих от нечестного тапа.
    Ответ написан
    Комментировать
  • Правильная ли архитектура БД?

    1. Я бы ещё раз подумал над неймингом
    2. У тебя тут в каждой таблице дублируются колонки названий для разных языков. Возможно есть смысл сделать отдельную таблицу для переводов разных строчек - по крайней мере так будет проще в будущем новые языки вводить + всё будет централизованно. Это на подумать.

    3. Возможно есть смысл добавить ещё историю изменений, но это на подумать

    4. Не уверен, действительно ли нужно order status как таблицу делать. Администратор должен иметь возможность добавлять новые статусы? Тогда нужно ещё добавлять таблицу с правилами переходов между статусами, чтобы в коде не хардкодить айдишники.

    5. Немного подумать. А всегда ли будет именно доставка еды? Не захочешь ли ты добавить самовывоз?

    6. Зачем в cart product created at и modified at?
    Я могу догадаться до одного варианта, где это может быть полезно, но понимаешь ли ты?

    7. А может ли у одного продукта быть несколько статусов одновременно? Типа и новинка и хит и скидка N%?

    8. Что из себя представляет бонус? Всегда ли он привязан к пользователю?
    Ответ написан
    Комментировать
  • Мессенджер, не требующий для входа номера телефона/e-mail, и не заблокированный в РФ?

    CityCat4
    @CityCat4 Куратор тега Информационная безопасность
    //COPY01 EXEC PGM=IEBGENER
    В Вашем вопросе два качественных определения. Чтобы на него ответить, сначала пожалуйста определите, что такое "достаточно безопасный" и что такое "без бубна".
    Оператор мессенджера по определению имеет доступ ко всей переписке (а вся трепотня про end-to-end encryption - это всего лишь трепотня - кто ее проверял-то?). Поэтому если Вас так заботит факт "нечитаемости" - подымайте свой сервак.
    Ответ написан
    3 комментария
  • Почему при добавлении процента делением результат больше, чем умножением?

    @Everything_is_bad
    780 надо добавить 3%
    780 + 780*0,03 = 780 * ( 1 + 0,03) = 780 * 1,03
    а теперь расскажи как он получил 0,97

    ЗЫ как же все плохо у кучи людей с простой математикой, уже ни раз встречаю проблемы посчитать даже проценты

    АП: дошло откуда растут ноги, делить надо, если ты хочешь узнать число из которого надо вычесть 3% и в итоге получить 780
    Ответ написан
    3 комментария
  • Почему при добавлении процента делением результат больше, чем умножением?

    780 - это (100 - 3)% от 804
    803 - это (100 + 3)% от 780
    Следовательно, если вам нужно к X добавить 3%, то правильно умножать на 1.03.
    Если же у вас есть "цена со скидкой" (780) и "процент скидки" (3) и вам нужно посчитать "оригинальную цену" (804), то нужно делить.
    Ответ написан
    Комментировать
  • Отслеживается ли логирование вкл/выкл ПК по-умолчанию?

    @NortheR73
    системный инженер
    1. В журнале System события Kernel-General 13 (выключение) и Kernel-General 12 (включение). В событии указано соответствующее время (GMT)
    2. В журнале System события EventLog 6006 (Служба журнала событий остановлена.) и EventLog 6005 (Запущена служба журнала событий.)
    Ответ написан
    1 комментарий
  • Как можно "осовременить" старые Андроиды?

    В чём проблема, зайдите на 4pda и накатите современную прошивку от Васяна. Она точно решит проблемы с безопасностью.
    Ответ написан
    2 комментария
  • Как работать с проектом на git в phpStorm на тестовом сервере?

    Henryh
    @Henryh
    Веб-программист
    Попробуй посмотреть в сторону CI/CD подхода.
    Условно, это когда некий скрипт мониторит изменения, которые ты запушил в репу. И автоматически (или по кнопке) запускает процесс заливки на нужный сервер (тестовый и/или прод). Туда же можно добавить прогон тестов и сборку.

    Тоесть процесс будет например такой: локальные правки -> пуш в ветку разработки репозитория -> синк с тестовой средой -> если всё ок - пуш в мастер -> синк с продом.

    Есть много решений, можно начать с GitHub Actions
    Ответ написан
    Комментировать
  • Локальный email сервер только для регистрации на сайтах?

    ValdikSS
    @ValdikSS
    Вам нужен сервер с выделенным IP-адресом, домен, правильно настроенная MX-запись на домене, указывающая на IP-адрес сервера.
    На сервере необходим установленный и работающий SMTP-сервер (exim/postfix), принимающий почту к себе. Хостинг-провайдер или провайдер интернета не должен блокировать порт 25.
    Больше для приёма ничего не требуется. Настроить это довольно просто, можно хостить хоть дома.
    Ответ написан
    Комментировать
  • Какую прошивку ставить на микросхему программатором?

    Zettabyte
    @Zettabyte
    Проф. восстановление данных ▪ Вопрос? См. профиль
    Т.к. я пробую через программатор, мне нужно использовать прошивку sysupgrade или всё же первый?

    Рискну предположить, что ни один, в т.ч. потому, что не до конца понятно, что именно вы называете "factory firmware". Особенно, если источник её появления не на 100% точно известен.

    Обычно такие трюки требуются, когда устройство "совсем кирпич", т.е. взаимодействуя с ним по какому-либо "традиционному" (хоть насколько-то "пользовательскому") каналу сделать ничего нельзя.

    И заливают обычно тоже дамп, сделанный программатором, т.е. "сырой", в котором почти наверняка захвачены и те части памяти, которые пользователем либо не перезаписываются, либо если и перезаписываются, то как-то "более хитро".
    Это, кстати, нередко и помогает оживить железку - восстанавливается та минимальная, самая базовая функциональность, без которой девайс "окирпичивается".

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

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

    P.S.
    Ну и вдобавок не совсем понятно по какой причине вы хотите шиться именно программатором.
    Если есть прошивка и инструкция к ней, то лучше идти описанным там путём.
    Ответ написан
    9 комментариев