• Docker vs Bare Metal — сравнение производительности?

    @deliro
    Если осознать, что докер — это НЕ ВИРТУАЛИЗАЦИЯ, как многие умники тут пишут, то всё звучит не так страшно. Докер контейнер исполняется на той же хостовой машине, задача докера — изоляция фс и сетевого стека. Производительность контейнеров nearly identical to native (это ровно то, чем поделился Дмитрий) за исключением сетевого стека, если не выбираешь полностью хостовый network.

    Однако, если твоё приложение на одной тачке не пытается обслужить десятки или сотни тысяч запросов в секунду, то абсолютно без разницы, в докере оно или нет.
    Ответ написан
    3 комментария
  • Docker vs Bare Metal — сравнение производительности?

    ky0
    @ky0
    Миллиардер, филантроп, патологический лгун
    Везде, кроме высоконагруженных баз данных (ну и вообще хайлоада) падением производительности в докере почти всегда можно пренебречь.
    Ответ написан
    2 комментария
  • Docker vs Bare Metal — сравнение производительности?

    mayton2019
    @mayton2019
    Bigdata Engineer
    При разработке docker не ставились задачи - догнать bare-metal. Главная задача - виртуализация и оркестрация.
    Если у вас нет таких задач то возможно и docker вам просто не нужен. Ставьте софт на железо и
    не будет таких вопросов.
    Ответ написан
    5 комментариев
  • Docker vs Bare Metal — сравнение производительности?

    iMedved2009
    @iMedved2009
    Не люблю людей
    Конечно будет тратится какое то количество ресурсов на контейнеризацию. Но в 99% из 100% удобство разработки это перекроет - машинное время стоит копейки, время разработчика наоборот дорого.

    IBM Research Report. An Updated Performance Compar...
    Ответ написан
  • Может ли выбор регистратора повлиять на задержку доступа к домену?

    martin74ua
    @martin74ua
    Linux administrator
    Цена, удобство управления, надежность - чтобы не закрылся завтра )
    А все остальное - одинаково...
    Ответ написан
    Комментировать
  • Может ли выбор регистратора повлиять на задержку доступа к домену?

    jamessvetsky
    @jamessvetsky
    Специалист по почтам и рассылкам
    Когда Вы покупаете домен, данные о регистрации домена и ns-записи выгружаются на сервера корневой зоны домена. После того, как она обновится, домен становится доступным. Скорость выгрузки в корневую зону и скорость обновления зоны разная. Международные зоны работают быстрее, часто все начинает работать за минуты. Но время различатся даже у одного и того же регистратора на одной и той же зоне.
    Ответ написан
    Комментировать
  • Может ли выбор регистратора повлиять на задержку доступа к домену?

    saboteur_kiev
    @saboteur_kiev
    software engineer
    Может ли от регистратора зависеть задержки в доступе к домену?

    Нет. Регистратор в любом случае просто имеет право прописать ваш домен в реестр вышестоящей зоны, и зачастую предоставить NS сервера для отдачи информации о ваших поддоменах и других записях.
    Даже если сервер регистратора очень медленный, эта информация берется один раз и кешируются у каждого промежуточного DNS сервера обычно примерно на сутки (вы можете сами поменять TTL в настройках зоны).

    После этого даже NS сервера регистратора никак не влияют на доступ к домену как минимум в течение суток.

    Вообще существует ли разница какого регистратора выбирать? (кроме цены)

    Надежность и удобство регистратора. Чтобы регистратор не пропал через год. Чтобы не повысил цену в 10 раз через год. Чтобы в случае утери пароля от личного кабинета, вы могли его восстановить без проблем. Чтобы в случае, если вы захотите уйти к другому регистратору, процедура трансфера домена была доступна и прозрачна.
    Поэтому лучше выбирать крупных и надежных операторов.
    Ответ написан
    1 комментарий
  • How best to scale a php application?

    FanatPHP
    @FanatPHP
    Чебуратор тега РНР
    You need to make your mind first, whether you want to "scale up" which means to split the processing between different servers, or you are not even sure yet, whether adding different instances is a good thing at all.

    Generally scaling up a web application indeed means providing dedicated hardware for the every major service involved. For your setup I'd make it four different servers
    - PHP/Nginx instance
    - database backend dedicated for Postgres
    - column database backend to host Clickhouse
    - processing backend to host rabbitmq and Golang microsevices

    The good thing, each of those can be easily scaled up in turn by simply adding more instances of the kind (I am not sure how it's done for Clickhouse tho).

    But I have a feeling that you are probably confusing the scaling up with just performance optimization. And you need to start from the latter. Simply checking the CPU load is tоo rough a measurement. You need a full qualified profiling to pinpoint certain bottlenecks.

    From such incomplete data I can only guess that Laravel configuration is not quite optimal. 75 rps shouldn't be a problem for such a hardware. Make sure you have all production environment settings configured properly - all caching is turned on, etc. Also, switching to 7.4 and preloading could also help.
    Ответ написан
    3 комментария
  • Laravel бесконечный Task Scheduling?

    @Barmunk
    В нужной команде добавь бесконечный цикл и в нем уже логику.
    while(true) 
    {
        doWork();
        sleep(1);
    }


    Далее скорми эту команду какому-нибудь Supervisor

    [program:laravel-worker]
    process_name=%(program_name)s_%(process_num)02d
    command=php artisan command:start
    autostart=true
    autorestart=true
    stopasgroup=true
    killasgroup=true
    user=forge
    numprocs=8
    redirect_stderr=true
    stdout_logfile=/home/forge/app.com/worker.log
    stopwaitsecs=3600


    или вот натолкнулся на пакет, который делает тоже самое, но без Supervisor
    https://github.com/aarondfrancis/laravel-pseudo-daemon

    Неплохая статья по демонам на php
    https://blog-programmista.ru/post/75-php-kak-sozda...
    Ответ написан
    Комментировать
  • В чем превосходство Typescript?

    bingo347
    @bingo347 Куратор тега JavaScript
    Crazy on performance...
    Как бы это странно не звучало, но одно из главных преимуществ TypeScript - это ускорение разработки в несколько раз. Да, когда еще ничего нет - разработка незначительно замедлится, так как помимо логики нужно описать еще и типы. Но это только в начале. И это не только возможность писать большую часть кода с помощью автодополнения. Поддержка существующего кода занимает в десятки раз больше времени, чем его начальное написание. Стоит ли вложить несколько лишних часов на старте, чтоб сэкономить в последствии месяцы? Как по мне стоит.

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

    Ну и отвчечу на некоторые Ваши сомнения:
    TSLint в VSCode прям жутко тугой
    TSLint официально deprecated, вместо него стоит использовать плагин к eslint, заодно можете мой конфиг попробовать.

    Типы? Есть JSDOC
    JSDoc в плане типов не умеет и 10% того, что умеет TypeScript. Кроме того, никто в здравом уме не пишет JSDoc на приватную логику, а значит проверки типов там не будет. JSDoc не гарантирует корректность рефакторинга, а вот благодаря TypeScript я, опять таки, точно не забуду обновить JSDoc.

    многие библиотеки nodejs не имеют типов
    может лет 5 назад так и было, но сейчас встретить библиотеку без типов - скорее исключение. Если библиотека популярная, но не предоставляет типов, скорее всего их уже написал кто-то другой, достаточно просто установить одноименный модуль из npm скоупа types и все будет работать само.

    Поддержка браузерами скомпилированного кода? Да какбы почти весь JS имеет поддержку 95%+, тот же Babel уже забыл когда использовал.
    Вообще это не основная задача компилятора TypeScript, а опциональная возможность. И babel + preset-env с ней справляются гораздо лучше. И никто не мешает использовать их вместе. А еще думаю вопрос времени, когда кто-то напишет оптимизатор кода использующий информацию о типах из TS.

    Примерно в каждой второй есть инстансы, на которые смотришь - и чешешь репу - а как называется тип этой переменной в @types/?
    import {someObject} from 'some-library';
    
    type TypeFromValue = typeof someObject;
    const valueCopy: TypeFromValue = {
        ...someObject,
        type: 'overrides',
        with: 'type check',
    };
    и кстати, вот пример того что JSDoc типы не умеют.

    //@ts-check
    и почти везде останется бесполезный any.

    P.S. удачи такие типы на JSDoc описывать
    P.P.S. Еще прелести современного TypeScript невозможные у...
    Ответ написан
    8 комментариев
  • Как ускорить выборку ( freeing items, cleaning up) из InnoDB по primary key?

    ThunderCat
    @ThunderCat Куратор тега MySQL
    {PHP, MySql, HTML, JS, CSS} developer
    Похоже что логичнее хранить ваши данные в каком-то кей-валуе хранилище, в том же редисе, например...
    Ответ написан
    5 комментариев
  • Как ускорить выборку ( freeing items, cleaning up) из InnoDB по primary key?

    Fragster
    @Fragster
    помогло? отметь решением!
    Вроде бы это все происходит уже после возврата данных клиенту, по этому сама обработка будет с точки зрения клиента быстрее. А там и серверов добавить можно, если что.
    К тому же в некоторых библиотеках, вроде бы, можно делать выборку из разных таблиц одним запросом (не джоины и даже не юнионы, а именно несколько запросов через ; ).

    Еще такое может быть, если лог файлы забиты, медленные диски и т.п.
    Попробуй innodb_flush_log_at_trx_commit = 2

    если что - во доки: https://dev.mysql.com/doc/refman/8.0/en/general-th...
    Ответ написан
  • Какую операционную систему выбрать для веб-сервера?

    Jump
    @Jump
    Системный администратор со стажем.
    Какую операционную систему выбрать для веб-сервера?
    Любая из перечисленных подойдет. Выбирайте ту которую знаете, или чтобы по цвету к серверу подходила.

    которая будет жрать меньше ОЗУ.
    Крайне странный критерий для выбора ОС.
    Ответ написан
    Комментировать
  • Какова политика ресурса в отношении неграмотных ответов?

    Nomad_77
    @Nomad_77 Куратор тега Тостер
    Product manager at habr.com
    С другой, раньше можно было безграмотного юзера, лезущего со своими советами, просто обозвать идиотом и не париться.


    Ничто не мешает вам указать на недостатки в ответе того или иного пользователя, не прибегая к оскорблениям, а показав где конкретно ошибка. Тем самым вы бы дали более качественный ответ, а автор вопроса, безусловно, передал бы вам слова своей благодарности.
    В том же, о чем пишите вы, смысла ещё меньше, чем в глупом ответе. Пустое "идиот", не несёт в себе конструктива и никакой ценности.

    Отвечая по сабжу: Поскольку модераторы действительно не являются специалистами во всех областях, охватываемых Тостером, неверные ответы удаляются на основании жалоб пользователей.
    Ответ написан
    1 комментарий
  • Правильное использование связки Symfony+Git+Composer+Docker?

    FanatPHP
    @FanatPHP
    Чебуратор тега РНР
    Докер выполняет ту роль, которую до этого у тебя играли всякие денверы, опенсерверы, и прочая вампа-юмба. Вместе с панельками на хостинге.
    Кроме симфони есть еще много других программ. Которые устанавливаются через композер. Надо уметь добавлять пакеты в проект, как самому, так и добавленные другими. Надо уметь разворачивать локально проект, который использует композер. Надо уметь читать composer.json. А по-хорошему ещё и писать. Но вообще по сути главное понимать разницу между install и update
    До того как "отправлять сделанные задачи" (только в git, а не github), сначала надо эту самую тестовую ветку завести локально. И уметь разруливать возникающие конфликты.
    Кроме того, контроль версий помогает в первую очередь тебе. Это не для дяди-тимлида, а для себя делается. Чтобы можно было посмотреть историю изменений, откатить, посмотреть какой код ты менял, когда он перестал работать.

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

    Так что надо рассматривать все эти красивые слова не вместе, а по отдельности.
    И не в контексте "написать в резюме", а разобраться с каждым, чем оно помогает лично тебе. Вот когда поймешь, и начнешь применять осознанно - вот тогда и можно будет писать в резюме.
    Ответ написан
    1 комментарий
  • Выбрать выделенный сервер между AMD Epyc 7351P и Intel 2x Xeon E5-2630v3?

    hint000
    @hint000
    у админа три руки
    Верно заметил ky0, AMD 16 ядер на одном процессоре, а Intel - два процессора, по 8 ядер на каждом. Однопроцессорный AMD будет быстрее, хотя бы потому, что на двухпроцессорном NUMA будет иногда замедлять доступ к памяти. Да ещё и сама память на Intel'е медленнее.
    Ответ написан
    Комментировать
  • Выбрать выделенный сервер между AMD Epyc 7351P и Intel 2x Xeon E5-2630v3?

    ky0
    @ky0
    Миллиардер, филантроп, патологический лгун
    Ну так посмотрите спеки. Вообще, судя по копипасте - вы зачем-то сравниваете односокетный сервер с двухсокетным.

    Чтобы упереть (нормально настроенную) СУБД в процессор, а не, скажем, память/диск - надо довольно неплохо постараться.

    С точки зрения поддержки - никакой разницы, если что-то выйдет из строя, по идее, OVH должен в любом случае заменить.
    Ответ написан
    8 комментариев
  • Стоит ли учить php в 2021 году для разработки web приложений и сайтов?

    @thisuserhatephp
    Офлайн - losers Онлайн - lusers
    Никогда не понимал причем тут год и яп. Прыщавые иксперты с дырявыми мозгами и мне в свое время давали такие советы и наставления, мол не учи то, не учи се, сейчас такой-то год....
    Когда же вы поймете, что стек нужно выбирать не смотря на календарь, а исходя из тз которое решает данный стек. Если твою задачу лучше всего решает паскаль, то плевать какой сейчас год, хоть 5021-ый, нужно выбирать паскаль, а не что-то другое, потому что васян в коммах на форуме написал "паскаль в 2021 ? пхпхпха"

    Актуально ли php в 2021 году и стоит ли учить его?

    Если тебе позволяет время, то учить нужно все, что связанно с твоим стеком, а так кончено же актуально
    Ответ написан
  • Разницы в поддержке и обслуживании dedicated server по сравнению с VPS?

    kotomyava
    @kotomyava
    Системный администратор
    Основная разница в том, что надо следить ещё и за железом. Соответственно, неплохо бы знать, как это делать.
    Ответ написан
    4 комментария