Задать вопрос
  • Как добавить поле в высоконагруженную базу в таблицу на продакшене где 100 миллионов записей?

    2ord
    @2ord
    В MySQL 8+ добавили ALGORITHM=INSTANT к синтаксису:
    ALTER TABLE table_name [alter_specification], ALGORITHM=INSTANT;

    The benefit of the INSTANT algorithm is that only metadata changes are made in the data dictionary. There is no need to acquire metadata lock during SE changes and we don’t touch the data of the table.

    https://mysqlserverteam.com/mysql-8-0-innodb-now-s...
    Ответ написан
    Комментировать
  • При смене версий PHP вырастает нагрузка на диск, что делать?

    kotomyava
    @kotomyava
    Системный администратор
    Проанализируйте, что же именно делает в это время mysql, хотя бы запустив mytop, и посмотрев explain частых и долгих запросов.
    У вас может просто отсутствовать какой-нибудь нужный индекс в таблице, или неудачно какой-то запрос составлен, и используется активно full scan или file sort.
    Ответ написан
    Комментировать
  • LINQ или foreach?

    Stalker_RED
    @Stalker_RED
    в последние лет 10 идет к тому, что скоро бОльшая часть программистов просто забудет про стек, кучу, оптимизацию SQL-запросов
    бОльшая часть программистов никогда и не умела в оптимизацию SQL-запросов.

    “лучше день потерять, потом за 5 минут долететь” не работает в нашей отрасли?
    Бизнес смотрит где выгода. Если он без этой схемы тратит два дня, то да, лучше потерять и долететь. Если он без этой схемы тратил 10 минут, и летал раз в месяц, то пятиминутная экономия окупится через 288 "полетов" (через 24 года). Оно ему точно надо?

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

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

    @immaculate
    Программист-путешественник
    Это вряд ли возможно формализовать. Один из подходов: KISS — keep it simple. Выбираю самое простое решение, потому что, пока оно дойдет до production, требования 10 раз поменяются (и еще 10 раз поменяются уже после внедрения), а простое решение и проще реализовать и проще переделать. Но это только одна из эвристик.

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

    Иногда по мере того, как делаешь задачу, понимаешь, что ее можно сделать совсем иначе, при этом получится проще и эффективнее. Ничего страшного нет: с самого начала продумать идеальное решение не может никто.

    В жизни нет готовых рецептов на все случаи. Жизнь вообще не поддается формализации.
    Ответ написан
    5 комментариев
  • Как развиваться в программировании не привязываясь к языку?

    @protven
    Хороший программист к языку особо и не привязан. Имхо, главное нормальная база теоретических знаний - алгоритмы, основные протоколы, общие паттерны и, самое главное, опыт. Код фигачить надо, тогда и будете развиваться.
    Ответ написан
    3 комментария
  • Как локально хранить сайт и крошечную БД на ipad?

    Stalker_RED
    @Stalker_RED
    Если нужна только одна страница, и без интернета, то какой-же это сайт?

    Может достаточно в localStorage записать?
    https://jsfiddle.net/89gwmwec/1/show/
    Ответ написан
    1 комментарий
  • Apache или nginx?

    @D3lphi
    Да, это так. Давно пора юзать nginx.
    Ответ написан
    3 комментария
  • Чистый код: блоки try/catch. Стоит ли так делать?

    @heartdevil
    плыву как воздушный шарик
    Если думаете, что избыточно, то не делайте, как он советует. Возможно, в вашей конкретной ситуации так и есть. А далее чутье или горький опыт подскажет где надо выделять обработку ошибок, а где нет.
    Ответ написан
    Комментировать
  • Как хранят свои страницы крупные сайты?

    Stalker_RED
    @Stalker_RED
    Единая точка входа - один php файл, (обычно index.php лежащий в корне сайта), в который попадают все запросы ко всем страницам. Он запускает движок и вызывает router (маршрутизатор) - скрипт, который по url определяет какой раздел и какая страница запрошена. Ориентируясь на правила прописанные в маршрутизаторе он запускает нужный модуль (читайте про mvc). Там где-то происходят обращения в базу данных, какая-то бизнес-логика работает, и в итоге данные передаются в шаблонизатор, который выдает HTML код.

    Чтобы самому не изобретать всё с нуля можно взять набор готовых компонентов. Такие наборы называются фреймворками.
    Это все подходит не только для крупных сайтов, а для любых проектов, где больше одной страницы.
    Ответ написан
    Комментировать
  • Возможно написать сервер Lineage или Mu на Node?

    GavriKos
    @GavriKos
    Микропетпроджект - https://voidtrack.space/
    Отвечая на вопрос в ТЕЛЕ: да, на ноде возможно написать игровой сервер. Не всякий, но в целом - возможно.

    Отвечая на вопрос в заголовке, вопросом: а у вас есть полное описание протокола и вся игровая логика, чтобы написать ПРАВИЛЬНЫЙ сервер линейки или му? Если да - то см. выше.
    Ответ написан
    7 комментариев
  • Как лучше выбрать сервис оплаты для сайта?

    xmoonlight
    @xmoonlight
    https://sitecoder.blogspot.com
    Никакие.
    Прям берёте и делаете коннекторы сами по документации API (сервисов) к перечисленным сервисам.
    Т.е., сами превращаетесь в микро-агрегатора.
    WP и плагины к нему...
    Ответ написан
    1 комментарий
  • Как наладить поток клиентов на бирже?

    Sanes
    @Sanes
    На фрилансе недостаточно быть хорошим технарём. Ты должен быть хорош во всем. В первую очередь, как продавец и проект-менеджер.
    Ответ написан
    6 комментариев
  • Есть ли оффлайн альтернативы DbDesigner?

    uDenX
    @uDenX
    PHP Developer
    MySQL Workbench
    Ответ написан
    Комментировать
  • Сортировка,Фильтрация,Поиск данных.Как это все работает?

    wielski
    @wielski
    ✔ Совет: Вам помогли? Отметьте ответы решением.
    Я так подозреваю что это все работает на PHP.

    И не только. Есть множество бэкэнд-языков. Но в целом да, работает все на серверной стороне.

    и немного трогаю PHP,MySQL.

    Трогают девушек, а языки изучают :)

    Хотелось бы получить хотя бы заоблочочное понимание как работают эти "ФИЛЬТРЫ",на чем их пишут,и любые другие мысли по данному вопросу,если вам не сложно.Так сказать наделите хотя бы каким то пониманием.Уж очень интересно мне

    Если брать конкретно связку PHP / MySQL - то чаще всего идет банальная выборка по полям таблицы. Как только дойдете до работы с БД - поймете о чем я. Ничего сверхъестественного в этом деле нет.

    Лучше составлю вам план дальнейшего изучения:
    1. Изучаете PHP на уровне функции / переменные / ввод и вывод данных.
    2. Изучаете SQL и как работать с MySQL базами на PHP.
    3. Делаете форму со вставкой в таблицу, вывод данных, редактирование.
    4. Разбираетесь с условиями WHERE (like и т.д.).
    5. Разбираетесь в JOIN-ах и связующих таблицах. По началу покажется очень сложным, но посвятите этому время.
    6. Изучаете ООП структуру PHP (Классы, неймспейсы, типы функций и переменных). Переписывайте все на него.
    7. Переходите на фреймворки вроде Laravel


    Времени на этот список уйдет от 4х до 12ти недель.
    Ответ написан
    4 комментария
  • Возможно ли такое реализовать без сокетов?

    DmitriyEntelis
    @DmitriyEntelis
    Думаю за деньги
    Вы занимаетесь решением не существующей проблемы.
    Захотят взломать - взломают.
    Никто не мешает например видеопоток заснифать и сохранить.
    Никто не мешает записать видео с экрана (!) и сохранить.

    Недобросовестные пользователи будут всегда, но не стоит тратить на них слишком много времени, иначе Вы
    а) потратите ресурсы которые могли бы потратить на реальное увеличение ценности сервиса для добросовестных пользователей
    b) рискуете за всеми этими защитами создать негатив для платящей аудитории и оттолкнуть её от себя.

    Живой пример: у меня PC дома, PC на работе, ноутбук, планшет, телефон.
    Видео я смотрю со всех этих устройств.
    Если бы меня заставили перелогиниваться чтобы посмотреть видео (тем более за которое я уже заплатил) - я бы послал такой сервис на юг и скачал контент с торрентов.
    Ответ написан
    4 комментария
  • Как мне поступить с образованием после 9 класса?

    @JuniorNoobie
    Сижу в поддержке, пишу мелкие проекты
    Блин, да если ты это все знаешь, то без проблем поступишь на бюджет почти в любой хороший технический университет. Если вся проблема в "не хочу в армию", то поступай в университет попроще на бюджет: там тебя не будут заставлять посещать все занятия, будет время делать, что хочешь...
    П.С. Да, больше похоже на "посмотрите какой я крутой в 16 лет", а не на нормальный вопрос. Я в шестнадцать лет херней страдал, но все равно на бюджет устроился спокойно. И на пары не ходил, но закончил с красным дипломом. В Сибири, конечно. Времени на самообразование навалом было.
    Ответ написан
    Комментировать
  • Странный дизайн Rust?

    Rust это не C++. Почему он должен брать термины из C++?

    В Java вон тоже ссылки - это указатели в терминологии C++.

    Более того, ссылка от указателя отличается лишь абстракцией. В памяти это будут одинаковые ячейки, содержащие адрес.
    Ответ написан
    Комментировать
  • Зачем и где именно писать @Override?

    sergey-gornostaev
    @sergey-gornostaev Куратор тега Java
    Седой и строгий
    Писать перед теми методами, которые переопределяете. Этим вы сигналите компилятору, что хотите не определить новый метод, а именно переопределить. Компилятор будет проверять наличие помеченных методов в базовом классе и выдавать ошибку, если их нет.
    Ответ написан
    Комментировать