• Как реализован режим чтения в браузерах?

    xmoonlight
    @xmoonlight
    https://sitecoder.blogspot.com
    Анализ DOM-дерева и выявление блока, содержащего основной контент.
    Простая фильтрация по кол-ву текста в одном уникальном блоке без повторов (списков) на текущем уровне DOM-дерева.
    Ответ написан
    Комментировать
  • Куда стремиться PHP программисту?

    opium
    @opium
    Просто люблю качественно работать
    вы же умный , пора бы уже самому понять, что вам надо.
    Ответ написан
    Комментировать
  • Что за плата такая?

    AxianLTD
    @AxianLTD
    На ней же написано - "Shield for Arduino, stepper motor controller", то есть - "Доп. плата управления двумя шаговыми двигателями для Arduino". ИМХО интереснее отверток ;-)
    Ответ написан
    Комментировать
  • В каких случаях использовать - redis или memory в mysql?

    riky
    @riky
    Laravel
    redis - скорее всего быстрее.
    memory mysql - можно работать не только как key-value но и делать разные выборки/сортировки/группировки и тд.
    в редисе тоже есть кое какие структуры данных помимо key-value но другие, далеко не те что предоставляют реляционные БД (их нужно еще изучать и привыкать).

    поэтому выбор или простота и скорость или функционал sql.
    Ответ написан
    Комментировать
  • В каких случаях использовать - redis или memory в mysql?

    Когда на сайте малая нагрузка и не упираешься в потолок ресурсов, то можно обойтись и без них. Хотя применение кеширования, как минимум, способствует положительному восприятию пользователем из-за более быстрой отдачи популярного контента.
    О том в каких случаях рекомендуется использовать MEMORY Storage Engine стоит почитать в
    16.3 The MEMORY Storage Engine, секция "When to Use MEMORY or MySQL Cluster".

    Как заметил Евгений Вольф , ещё имеется Memcached. Он достаточен для кеширования сессий пользователя, подсчёта статистики кликов и короткоживущих данных.

    В целом, разница между ними состоит в SQL vs NoSQL, помимо технических ограничений. Обычно, если данные имеют чёткую структуру и типы данных, то лучше SQL.
    Ответ написан
    Комментировать
  • В каких случаях использовать - redis или memory в mysql?

    Wolfnsex
    @Wolfnsex
    Если не хочешь быть первым - не вставай в очередь!
    В каких случаях вы стали бы использовать redis для хранения кеш данных (или не кеш), а в каких storage engine = MEMORY
    Лично я - наверное во всех случаях, в которых Redis для этого подходит. От части по тому, что проекты требующие кэширования такого уровня, в основном (*конкретно в моей практике, по факту - это не говорит ни о чём) комплектуются Postgres'ом.

    Среди прочих достоинств - редиска умеет сохранять данные да диск, это может быть важно/нужно.

    В остальных случаях, главное - без фанатизма это делать. Нет "едноправильного" решения, которое бы дало 100% результат. У Вас определенные требования к задаче, есть инструмент. Если MEMORY_ENGINE работает нормально (т.е. Вас показатели устраивают), и у Вас уже установлен MySQL и он работает - зачем тащить ещё Redis? Это усложнит систему, хоть и не сильно.

    Если у Вас нет MySQL, или MEMORY_ENGINE по какой-то причине не устроил, например, Вам нужно сохранять данные на диск или [причина-N] - берём Redis.

    Так же, стоит заметить, что функциональность MEMORY_ENGINE немного шире, в виду наличия полноценного SQL-движка, и в целом логически отличается от редиски.

    А есть ещё Memcached...

    2) есть еще любопытный костыль - InnoDB on RAMdisk , кто что думает по этому поводу?
    По моему, решение уровня "так себе". Мне эта идиома не нравится.

    Да, и в целом - Redis - это именно кэш-хранилище, со скроком жизни кэша "из коробки" (как пример), MEMORY_ENGINE - это полноценная таблица, со всеми вытекающими из этого фактами. Функционал, как я уже писал выше - немного разный...

    P.S. В MySQL я помню, грозились ввести какой-то новый движок, как раз для того, что бы "затмить" все Redis'ы с Memcached'ами вместе, но что-то я не нахожу информации по этому поводу... а ведь точно помню, что читал такое!
    Ответ написан
    Комментировать
  • Как обрабатывать поток в реальном времени?

    saboteur_kiev
    @saboteur_kiev Куратор тега Программирование
    software engineer
    Многопоточность. Один поток ждет ввода с клавиатуры, другой проверяет и подсвечивает синтаксис, третий часики в углу рисует, четвертый на фоне сохраняет текущее во временный файл...
    Ответ написан
    4 комментария
  • Как реализовать автоматически запускаемую программу сразу после окончания загрузки Windows 10?

    lxsmkv
    @lxsmkv
    Test automation engineer
    может встроеный планировщик задач Taskschd.msc подойдет?
    Ответ написан
    Комментировать
  • Какую дорогу в GameDev лучше выбрать?

    TrueBers
    @TrueBers
    Гуглю за еду
    Да не слушай ты этот бред, который пишут: "То бросай, это бросай, вакансий нету, всё пропало!".
    Всё есть, если есть интерес.
    Учить не важно какой движок, они все используют одни и те же концепции, паттерны примерно одинаковые.

    Внезапно(!), но везде есть и текстуры, и спрайты, и шейдеры. И игровой цикл даже есть!
    Изучив один движок, и написав пару игрушек, потом сам поймёшь, когда стоит перейти на что-то более функциональное и удобное. Придёт осознание, каких фич не хватает, и в каких движках они есть, и т. п.

    А все эти анрилы и юнити только ключевыми словами, по сути, отличаются. Ну, и общий дизайн у них чуть более удобен в плане декомпозиции кода, грамотной архитектуры. Но, пока сам не дойдёшь до необходимости использовать эту декомпозицию, ничего особо не выиграешь, только запутаешься. При переходе достаточно будет ознакомиться с паттернами Gang of Four и всё станет ясно более-менее.

    ПС Знаю разработчиков Юнити, которые начинали геймдев с этого движка и в шоке от того, что кто-то программирует не мышкой. Азы оптимизации им просто недоступны, ибо они даже понятия не имеют о нижележащем уровне API. Они искренне удивляются, как это знать чистый OpenGL и писать всё самому, а разве так можно? Точно так же, кстати, удивляются многие кодеры на плюсах: "А зачем мне знать ассемблер? Я с ним не сталкиваюсь никогда..."

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

    А уж, если хочется просто изучить полезный скилл зарабатывания денег и как зомби рубить бабки, то тут, как описали выше, 2 варианта по сути: Unity (C#), Unreal (C++). По ним вакансий немерено.
    Ответ написан
    4 комментария
  • Как сохранить файл с нужным названием?

    @karminski
    Senior React.JS Developer
    Забудьте ваш код, он говно. Что делает функция totranslit? Транслитилирует русские буквы в русские? Много смысла. Что вы хотите сделать то? Просто скачать файл с отображение диалога скачивания? Тогда вам сюда:
    php.net/manual/ru/function.readfile.php
    (пример 1)
    Ответ написан
    1 комментарий
  • JS. Переменная внутри href?

    villiwalla
    @villiwalla
    HTML-верстка
    var link = document.querySelectorAll('a[href]');
    for ($i = 0; link.length > i; i++) {
     link[i].setAttribute('href', 'http://goo.gl');
    }
    Ответ написан
    Комментировать
  • Как сделать авто обновление программы c++?

    saboteur_kiev
    @saboteur_kiev Куратор тега Программирование
    software engineer
    "Как сделать, что при запуске программы, автоматом сравнивались версии без скачивания version.txt, и если версии не совпадают, выскакивает сообщение "Обновите программу, принужденно" при этом не давая дальше пользоваться ней, потом при нажатии на ок, что бы программа сама скачала Launcher.exe, и заменила место той старой, и потом запустилась."

    Добавить на сайт API для вывода актуальной версии в удобном формате.
    Добавить в запуск программы обращение к вашему сайту за новой версией.
    Добавить в запуск программы запрет на дальнейшее использование, если известно что есть новая версия.
    Добавить в программу сообщение "Обновите программу" с кнопкой OK, по которой будет скачиваться и запускаться Launcher.exe, который будет обновлять старую программу и запускать ее.

    Все просто.
    Ответ написан
    Комментировать
  • Какое средство мониторинга vps серверов выбрать?

    @Erelecano
    Админю сервера, починяю примуса.
    При всем псевдобогатстве выбора нет. Есть только Zabbix, если наблюдать надо больше чем за одним хостом. Всякие мунины с монитами за пределами одного хоста не работают, нагиос — игрушка для психически больных фриков, вот только божественный Заббикс и остается.
    Ответ написан
    Комментировать
  • Какое средство мониторинга vps серверов выбрать?

    martin74ua
    @martin74ua Куратор тега Linux
    Linux administrator
    zabbix
    nagios
    dude
    munin

    выбирайте )
    Ответ написан
    Комментировать
  • Какое средство мониторинга vps серверов выбрать?

    Может быть, Zabbix?
    Ответ написан
    Комментировать
  • Как переопределить конкретный метод из модуля в Yii2?

    qonand
    @qonand
    Software Engineer
    Насколько я понимаю Вам нужно не переопределить действие контроллера, а подменить его. Т.е. подменить действие одного контроллера - действием другого контроллера. Задача конечно сомнительная, но для ее решения нужно понимать как происходит обработка запросов в Yii, а именно:
    1. Пользователь отправляет запрос на сервер
    2. Yii разбирает запрос и определяет к какому модулю/контроллеру/действию этот запрос относиться
    3. Yii адресует запрос к найденному в п2. действию контроллера

    Соответственно что бы подменить запрос c /node/test на /my/test достаточно внести корректировки в процесс разбора URL, это можно сделать например создав соответствующее правило в UrlManager приложения:
    'urlManager' => [
        'enablePrettyUrl' => true,
        'showScriptName' => false,
        'rules' => [
            'node/test' => 'my/test'  // все запросы с node/test переадресовывать на my/test
        ]
    ],


    Соответственно таким образом Вы можете подменять действия между контроллерами.
    Если же есть необходимость подменить целый контроллер в модуле/приложении тогда стоит воспользоваться свойством controllerMap
    Ответ написан
    2 комментария
  • Как начать работать с REST api конкретного ПО?

    Использовать встроенный httpClient.

    Пример:

    /**
     * @param array $options Optional array with options:
     *		"redirect" bool Follow redirects (default true)
     *		"redirectMax" int Maximum number of redirects (default 5)
     *		"waitResponse" bool Wait for response or disconnect just after request (default true)
     *		"socketTimeout" int Connection timeout in seconds (default 30)
     *		"streamTimeout" int Stream reading timeout in seconds (default 60)
     *		"version" string HTTP version (HttpClient::HTTP_1_0, HttpClient::HTTP_1_1) (default "1.0")
     *		"proxyHost" string Proxy host name/address
     *		"proxyPort" int Proxy port number
     *		"proxyUser" string Proxy username
     *		"proxyPassword" string Proxy password
     *		"compress" bool Accept gzip encoding (default false)
     *		"charset" string Charset for body in POST and PUT
     *		"disableSslVerification" bool Pass true to disable ssl check.
     * 	All the options can be set separately with setters.
     */
    $options = [
        'socketTimeout' => 5,
        'streamTimeout' => 15,
    ];
    
    $httpClient = new \Bitrix\Main\Web\HttpClient($options);
    
    // get-запрос
    $response = $httpClient->get('http://site.ru/path/to/url/?query');
    
    // post-запрос
    $response = $httpClient->post('http://site.ru/path/to/url/?query', [
        'param1' => 'value1',
    ]);
    
    // head-запрос
    $response = $httpClient->head('http://site.ru/path/to/url/?query');
    
    // возможные ошибки
    $errors = $httpClient->getError();
    
    // Статус ответа
    $errors = $httpClient->getStatus();
    Ответ написан
    Комментировать
  • Что сейчас модно из форумов?

    Sanasol
    @Sanasol Куратор тега PHP
    нельзя просто так взять и загуглить ошибку
    Лет 5 назад

    везде так же как и сейчас стояли IPB и vBul.
    XenForo(от создателей vBul) еще вроде неплох, но не зашел как-то мне.

    phpBB только на самых упоротых сайтах или бесплатных форумо-хостингах. имхо так себе движок.

    Сейчас продолжаю использовать IPB.
    Хотя в целом форумы уже в полумертвом виде как таковые.
    Из более менее живых:
    Первая категория старые крупные(правда постят там дичь в основном уже, нуль полезной информации).
    Вторая категория форумы продуктов/игр, у которых есть хоть какое-то сообщество и им нужна поддержка.

    В целом форумы уже 1-2 года как в весьма скудном состоянии.
    Сейчас актуально сидеть в чатиках(как в старые добрые времена).
    Telegram, Slack, Gitter и т.п.
    Ответ написан
    Комментировать
  • Как хранить ветки GIT в разных папках?

    Lynn
    @Lynn
    nginx, js, css
    В git с версии 2.5 есть git worktree https://git-scm.com/docs/git-worktree
    Ответ написан
    Комментировать