Задать вопрос
  • MySQL/MariaDB. 10 vs 11 version. Индексы. Странное поведение?

    @Vitsliputsli
    N,

    я был уверен, что всё будет "чики-пуки"

    Соберите статистику и посмотрите изменится ли план. Хотя за "несколько дней" она должна была ее сама собрать.
    Я смотрю, 11 версии всего 2,5 года, и в ней сильно поменяли стоимостную модель. Подождем, может кто в теме и подскажет.
    Написано
  • MySQL/MariaDB. 10 vs 11 version. Индексы. Странное поведение?

    @Vitsliputsli
    N, оптимизатору чтобы построить хороший план, нужно понимать какие данные и в какой пропорции лежат в таблицах. Тупой пример, вы залили в таблицу много данных, а оптимизатор думает что она маленькая и вместо использования индекса пойдет фул-сканом. Разумеется это не так глупо работает, но при больших и быстрых изменениях лучше все таки вручную попросить собрать статистику, на всякий случай.
    Указать какой индекс использовать - нормально. Но, нужно быть очень аккуратным, если вы знаете что распределение данных не изменится, то хорошо. Чаще всего, в работающем проекте распределение данных более менее постоянно, и указание конкретных индексов надежнее. Даже если у вас давно работающий проект, оптимизатор может иногда удивить, выбрав очень странный план, особенно если сложные индексы с пересекающимися полями.
    И еще, USE - это рекомендация, оптимизатор может на нее забить, прям чтоб гарантировано нужен FORCE.
    Написано
  • MySQL/MariaDB. 10 vs 11 version. Индексы. Странное поведение?

    @Vitsliputsli
    Я так понимаю работали в 10ке, затем перенесли данные в 11 и сразу попробовали? А статистику собирали после переноса? Если нет, то ничего удивительного, что оптимизатор выбрал неверный план.
    Написано
  • Как правильно создать объект класса Request в Workerman?

    @Vitsliputsli
    azuf,
    Vitsliputsli, то есть нельзя создать экземпляр Request? Здесь Request используется вне onMessage, правда класс наследуется от исходного. Не знаю важно ли это, плохо разбираюсь в работе конструкций классов и объектов.

    Можно, но объекты не в вакууме существуют, их чтото создает и передает необходимые данные. Какие данные вы будете передавать для создания объекта? А нужно передавать buffer, т.е. сырые данные запроса http.
    Пример который вы здесь привели, это оперирование с объектами класса Request, пожалуйста, можете сделать также, но чтото предварительно должно создать объект класса Request.
    В Workerman гдето есть код по созданию объекта класса Request, и есть вызов onMessage с передачей туда Request.

    Потому что он позволяет использовать PHP как полноценный язык, способный держать постоянный процесс. Что дает много новых возможностей, в отличие от общепринятой CGI модели использования PHP, когда процесс запускается отдельным веб-сервером, а после процесс умирает. И дает еще и увеличение производительности. И потому что он проще чем Swoole.

    Демоны на php это такая же общепринятая модель, как и cgi, уже давно. И с ними все тоже самое, кроме некоторых нюансов. Обработка http-запросов демоном на php скорее всего будет менее производительно чем через php-fpm, потому что fpm максимально оптимизирован для такой работы.

    У меня нет цели изучать именно ООП. Моя цель разобраться с Workerman. Мне непонятно как изучать ООП. Я вижу класс Request, везде учат, что нужно создавать экземпляр объекта от класса, а тут выясняется, что просто так объект Request не создашь. То есть чтобы понять как работать конкретно с таким классом, нужно сразу углубляться в какие то тонкости, как это сделать непонятно, так как во всех книжках одна и та же общая информация.

    Зря, не разберетесь с ООП, дальше не сможете продвигаться.
    Так у вас уже создан экземпляр класса, Workerman его создал. Весь смысл ООП, что вам не нужно вникать, что и как там делал Workerman - вам не нужно самому парсить запрос http, у вас есть есть готовый объект Request, с набором функций-методов, для удобного получения различных параметров запроса.
    Написано
  • Как правильно создать объект класса Request в Workerman?

    @Vitsliputsli
    azuf, судя по коду, в buffer кладется сырой запрос, объект Request его парсит и предоставляет удобные методы для получения отдельных составляющих запроса: тип, хедеры, куки и т.п., в том числе uri. Затем вызывается метод onMessage и этот объект закидывается в него. Т.е. onMessage эта реакция на запрос, соответственно с него все и начинается.
    Хотите обрабатывать отдельно, вызывайте обработчик из onMessage, и передавайте в него uri. Хотите один объект обработчик, закидывайте его в onMessage через зацепление.
    Написано
  • Как пробросить подключение к удаленной базе данных mysql в phpstorm?

    @Vitsliputsli
    TheCLub27,
    Vitsliputsli, видимо где-то на своем жизненном пути, тебе неправильно преподнесли термины духоты и точности. Вот конкретно сейчас, низойдя на говно, ты начал уточнять.
    "Пока не разберешься чем отличается IDE от интерпретатора, нет смысла чтото делать дальше" - с такой логикой для использования компьютера ты обязан уметь программировать микроконтроллеры. Разрешаю сказать, что этот пример вне контекста или притянут за уши, как раз уточнишь)
    В общем знатно повеселил под конец рабочего дня, удачных выходных)

    Причем здесь контекст, если это не пример, а аналогия? В общем все тоже, начни с азов, со значений слов, а потом уже пробуй складывать их в предложения. А то пока не получается.
    Написано
  • Как пробросить подключение к удаленной базе данных mysql в phpstorm?

    @Vitsliputsli
    AlexEfim,
    Vitsliputsli, А причем тут лайк с другой учетки и некропостинг, если ты не в - курсе на почту прилетает уведомление.

    В твоем случае, если ты профи - прочитал вопрос, мог бы ответить по существу, понял что задающий вопрос не на таком условно уровне, внести скажем так вклад в развитие сообщества, а не писать непонятно что мнимо обозначив свою "интеллектуальность", кейс выше по итогу решился на стакоферлоу, так что - порой лучше промолчать - тогда реально за умного сойдешь)) Человек может гуглил по ошибке, пришел за решением и прочитал твое "умозаключение" которое никак не помогло никому кроме твоего самолюбия) Успехов тебе)

    Ага, ну-ну...
    А чем ответ не по-существу? Пока не разберешься чем отличается IDE от интерпретатора, нет смысла чтото делать дальше. Если разобрался - нужно уточнить дальше. А можно как сделал ты - ходить год и дуться...
    Тут не "кейс", а непонимание что делается и зачем, и правильного ответа на него нет. Можно небезопасно править доступы базы, можно неудобно скрипты не локально запускать, можно накостылить и ssh-туннель. Но, вероятнее всего стоит развернуть полноценную среду разработки локально. Но, это ведь не ответ на "кейс", ты же спрашиваешь такую простую вещь, а я тут загоняю невесть что, так ведь думаешь?
    Поэтому советую вернуться к моему ответу и проанализировать как он должен поменять вопрос.
    И, как любой человек, могу ошибаться, и тогда ты, раз так радеешь за развитие сообщества, мог бы опубликовать свое решение, но нет, опять же, все пустой треп.
    Написано
  • Как пробросить подключение к удаленной базе данных mysql в phpstorm?

    @Vitsliputsli
    TheCLub27,

    какой же ты душный, это пиздец

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

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

    @Vitsliputsli
    В колледже программу 10-11 класса проходят на первом курсе, поэтому при отчислении лучше взять справку, что обучались, лишним не будет. На практике, думаю она мало кому будет интересна.
    Пока еще сохраняется "норма", что очень странно если человек не закончил ни 11 классов, ни колледж. Хотя с последними тенденциями и ограниченным набором в 10 класс, все скоро может поменяться.
    Написано
  • Возьмут ли меня на работу с 9 классами образования?

    @Vitsliputsli
    AKimovd,
    инициатива должна быть соответствующий образом оформлена.
    Как оформлять может быть написано в уставе.

    А есть ссылка на закон?
    Любые требования устава ничтожны, если нарушают закон. Ст.61 говорит что достаточно только инициативы, т.е. обращения с указанием своего желания прекратить отношения. Ст.30 говорит, что никакие уставы не могут ухудшать положения обучающихся, т.е. требовать какие-то "уважительные причины" - это прямое нарушение закона.
    Написано
  • Возьмут ли меня на работу с 9 классами образования?

    @Vitsliputsli
    AKimovd,

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

    Неважно, что там в уставе, есть закон «Об образовании в Российской Федерации» (№ 273-ФЗ):
    Ст.61.2. Образовательные отношения могут быть прекращены досрочно в следующих случаях:
    1) по инициативе обучающегося или родителей (законных представителей) несовершеннолетнего обучающегося.

    Т.е. достаточно инициативы.
    Написано
  • Возьмут ли меня на работу с 9 классами образования?

    @Vitsliputsli
    Hallexz,

    приходила, написала заявление об отчислении, но не захотели его подписывать у меня

    Вам лет сколько? Если несовершеннолетняя, то заявление должен писать законный представитель.
    Либо как написал Василий Банников. Либо 2 экземпляра заявления, требуете отметки о принятие на своей копии. Если не ставят, требуйте письменный отказ с указанием причины. Если все равно в отказ, то если сможете, выносите им мозг до победного, "никуда не уйду, пока не примете заявление". Тут нужна выдержка, их много, ты один, будут пугать полицией и т.д.
    Написано
  • Как установить timezone в php.ini?

    @Vitsliputsli
    geometria,

    что делать дальше - не знаю

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

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

    @Vitsliputsli
    Виктор Кожухарь, php и был по сути шаблонизатором, и лишь потом развился до языка общего назначения, унаследовав типичные для шаблонизаторов функции. Да, это очень снизило порог входа, но это говорит лишь о том, что php очень удачный язык для веба, и потому популярный, в том числе у тех кто не умеет писать код. И, это скорее плюс.
    Плохая репутация заложилась в момент становления языка, и тогда, лет 15 и более назад этот негатив был обоснован. Но, "это было давно и неправда". А хреново можно писать на любом языке, и чаще всего язык в этом не виноват.
    Убеждать дело неблагодарное, нормальных разработчиков и не нужно, они не молятся на свои инструменты и применяют разные по необходимости. А фанатики и не будут слушать, потому как они не понимают даже как их "идеальный" язык работает. Посмотрите на претензии к php - "нет указателей", "нет перегрузки". Ладно бы там про потоки и асинхронность, хотя и это не проблемы.
    Написано
  • MySQL как получить ID родительского поля у которого в разных строках есть значение?

    @Vitsliputsli
    Михаил Ливач, здесь скорее всего имелся ввиду сервис для попутчиков или любой другой, где нужно выбрать часть пути из общего. Поэтому вариант не совсем корректен, нужно выбирать сперва общий путь по from, а уже из них выбирать по to и что точка будет позже, чем from. Иначе, в примере выше можно уехать из КРД в СПБ по 1 маршруту.
    Сделать это можно через тот же join на себя, введя время или очередность точек в пути. Вероятно можно через аналитическую функцию, но нужно смотреть.
    Написано
  • Как решить проблему с правами доступа после деплоя на production?

    @Vitsliputsli
    Php то как запущен? Если это php-fpm, то он с какими правами?
    Ну и в консоли от нужного пользователя попробовать записать проблемный файл.
    Написано
  • Почему приложение не может получить доступ к бэкенду?

    @Vitsliputsli
    Кирилл Вегеле,
    я уже не вижу смысла продолжать с вами диалог

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

    я ни один раз указал тот факт, что 4200 работает, и в прикрепленных файлах прекрасно видно всё, что делает этот эндпоинт

    где работает? В вашем логе написано, что не работает:
    18.58 path: 'backend-test:4200/api',
    18.58 code: 'ConnectionRefused',
    18.58 [cause]: [Error: Unable to connect. Is the computer able to access the url?]

    А то, что у вас гдето чтото отвечает на 4200 порту, это прекрасно, но ведь вроде ж нужно чтобы оно работало там куда обращается ваш контейнер, не? Я выше написал, что нужно сделать, чтобы диагностировать где проблема, в именах, в сети, или в сервисе. Но можно диагностику не проводить, а продолжить гадать.

    И при чем тут вообще bun, если используется команда next build а не bun build

    Опять же в вашем же логе: > [frontend builder 6/6] RUN bun run build:
    Написано
  • Почему приложение не может получить доступ к бэкенду?

    @Vitsliputsli
    Кирилл Вегеле,

    Я пробовал использовать все варианты url адресов

    Вы гадаете, а нужно понять как это работает. Что за процесс на порту 4200? В каком контейнере он работает? И работает ли? Что вы запускаете, чтобы этот процесс работал?
    Ответив на эти вопросы можно будет чтото искать в докере.
    Если нет ответа на эти вопросы - гуглить, спросить фронтендеров как это должно работает в bun.
    Написано