Все сервисы Хабра

Сообщество IT-специалистов

Ответы на любые вопросы об IT

Профессиональное развитие в IT

Удаленная работа для IT-специалистов

Войти на сайт
  • Все вопросы
  • Все теги
  • Пользователи

Хабр Q&A — вопросы и ответы для IT-специалистов

Получайте ответы на вопросы по любой теме из области IT от специалистов в этой теме.

Узнать больше
другие проекты хабра
  • Хабр
  • Карьера
  • Фриланс
Задать вопрос
mgyk

mgyk

  • 82
    вклад
  • 19
    вопросов
  • 172
    ответа
  • 19%
    решений
Ответы
  • Информация
  • Ответы
  • Вопросы
  • Комментарии
  • Подписки
  • Нравится
  • Достижения
  • Какой инструмент выбрать для электронного журнала на основе базы данных?

    mgyk
    mgyk @mgyk
    Google docs?
    Ответ написан более года назад
    1 комментарий
    Нравится 1 комментарий
  • Как организовать совместную работу docker контейнеров?

    mgyk
    mgyk @mgyk
    Можно оставить внутренние порты однинаковые и поменять только биндинг к локалхосту. Порт_локалхост:Порт_контейнера
    app1:
    ports:
    - '3001:3000'
    app2:
    ports:
    - '3002:3000'
    Ответ написан более двух лет назад
    Комментировать
    Нравится 1 Комментировать
  • Как сделать быструю выборку из большой mysql базы?

    mgyk
    mgyk @mgyk
    Вообще должно быстро работать, возможно mysql неправильный индекс берет, попробуйте форсировать для запроса индекс https://dev.mysql.com/doc/refman/8.0/en/index-hint...
    Ответ написан более двух лет назад
    Комментировать
    Нравится Комментировать
  • Как выдавать статику или генерировать статистику с помощью nginx?

    mgyk
    mgyk @mgyk
    Совсем непонятно как фаил должен появится на сервере nginx?
    Вариант c try_files и редиректом при отсутсвии фаила идет не другой ресурс и все. Локально он от этого не появится.
    https://www.nginx.com/blog/nginx-caching-guide/ Нужно крутить кэширование ответов на стороне nginx.
    Ответ написан более двух лет назад
    1 комментарий
    Нравится 1 1 комментарий
  • Почему redis очищается, когда происходит snapshot?

    mgyk
    mgyk @mgyk
    Может Django TTL ставит на ключи и они автоматически удаляются?
    Рекомендую сделать redis-cli monitor . Посмотрите, что бегает между Django и редисом
    Ответ написан более трёх лет назад
    Комментировать
    Нравится Комментировать
  • Как правильно вытащить данные в redis?

    mgyk
    mgyk @mgyk
    Вы выбрали не самый лучше вариант тип данных(hash) в сущности делаете только одну пару ключ/значение. Но, редис дает возможность частично обновлять его. Думаю будет сильно проще использовать string тип и писать ключи
    set('users:guid', JSON), то-есть ключ будет строка users + ":" + Guid::getGuid(), а значение ваш json
    get('users:guid'), соответственно, чтобы прочитать значение.

    полный список команд тут
    https://redis.io/commands/#string

    p.s. если по каким-то причинам уверены, что нужно хранить все в хеш, то hexists('users', 'guid') для проверки есть ли такое значение в вашем хэше
    Ответ написан более трёх лет назад
    Комментировать
    Нравится Комментировать
  • Почему не деплоится сайт?

    mgyk
    mgyk @mgyk
    bundle: not found
    capistrano не нашел бандлер, посмотрите установлен ли бандлер для текущей версии руби
    Ответ написан более трёх лет назад
    Комментировать
    Нравится 3 Комментировать
  • Синхронность комманд через multi/exec redis?

    mgyk
    mgyk @mgyk
    Команды в блоке multi/exec будут выполняться последовательно и будут атомарны, так как редис работает отднопоточно
    Ответ написан более трёх лет назад
    Комментировать
    Нравится Комментировать
  • Сервис Cloudflare предоставляет услуги на все домены?

    mgyk
    mgyk @mgyk
    Нужно включать для каждого домена второго уровня. Cloudflare работает как прокси, то-есть нужно перенести NS сервера на Cloudflare
    Ответ написан более трёх лет назад
    Комментировать
    Нравится Комментировать
  • Потерял миграции, как лучше поправить сервер и развернуть проект на рабочем компе?

    mgyk
    mgyk @mgyk
    Поднимайте лучше из схемы (schema.rb) и храните ее в git. Нужно, чтобы были только те миграции которые актуальны для продакшена +/- несколько если нужно роллбэк сделать. Держать всю историю миграций с начала проекта не нужно. То-есть можно задампить схему на продакшене и утянуть ее в git. Это и будет вашей точной отсчета
    Ответ написан более трёх лет назад
    1 комментарий
    Нравится 1 1 комментарий
  • Mysql & multi tenant db: как лучше организовать?

    mgyk
    mgyk @mgyk
    Делать это не нужно, даже если БД позволяет. При таком подходе каждый пользователь должен будет открывать свое соединение со своими правами к БД.
    Кроме этого на стороне бэкэнда использовать такой подход будет достаточно сложно. Допустим в рельсах без большого напильника у вас не получится открыть много соединений к БД с разными правами.
    Ответ написан более трёх лет назад
    Комментировать
    Нравится Комментировать
  • MacBook Pro retina 13 2013 или MacBook Air 13 2015?

    mgyk
    mgyk @mgyk
    Разница в экранах очень существенная. Батарейка меняется просто, стоит обычно где-то около 50-60$, на бушном ноуте может иметь смысл поменять.
    Ответ написан более трёх лет назад
    Комментировать
    Нравится Комментировать
  • Где ошибка в запросе выборки?

    mgyk
    mgyk @mgyk
    LIMIT 20,10 <- кол-во записей начина с 20
    Ответ написан более трёх лет назад
    Комментировать
    Нравится 2 Комментировать
  • Какой gem выбрать для тестирования api rails?

    mgyk
    mgyk @mgyk
    https://github.com/vcr/vcr
    Можно этим. Идея в том, что вы один раз записываете ответ API и потом можно его подкладывать сколько угодно раз в тестах и при необходимости обновлять ответы.
    Чтобы совсем не использовать API можно просто эмулировать все ответы API внутри spec'а https://robots.thoughtbot.com/how-to-stub-external...
    Ответ написан более трёх лет назад
    Комментировать
    Нравится 1 Комментировать
  • Можно ли получить доступ к текущему объекту в операторе if?

    mgyk
    mgyk @mgyk
    If there is no such data in the cache (a cache miss), then nil will be returned. However, if a block has been passed, that block will be passed the key and executed in the event of a cache miss. The return value of the block will be written to the cache under the given cache key, and that return value will be returned.

    Rails.cache.fetch("#{last_update}/all_pages_cached") do
       hash
    end


    Если в кэше значения нет, то тогда выполняется блок
    Ответ написан более трёх лет назад
    1 комментарий
    Нравится 1 комментарий
  • Как обеспечить безопасность файловой системы?

    mgyk
    mgyk @mgyk
    Обычно используя какие-то ошибки в коде. Если возможно запустить произвольный код на системе, то через эту уязвимость можно загрузить shell через который уже получить доступ к серверу и всем остальным фаилам.
    www.sitepoint.com/top-10-php-security-vulnerabilities
    Ответ написан более трёх лет назад
    1 комментарий
    Нравится 1 1 комментарий
  • Как организовать отложенную обработку статистики?

    mgyk
    mgyk @mgyk
    Вытаскивайте данные и очищайте список внутри транзакции:

    redis.io/topics/transactions
    MULTI
    LRANGE clicks_queue 0 -1
    DEL clicks_queue
    EXEC
    Ответ написан более трёх лет назад
    Комментировать
    Нравится 1 Комментировать
  • Как запустить redis/resque на Heroku?

    mgyk
    mgyk @mgyk
    Redis доступен как дополнительный сервис
    https://elements.heroku.com/search?utf8=%E2%9C%93&...
    Добавляете addon и прописываете URL для редиса. Рекомендую все же использовать sidekiq вместо resque, быстрее и не делает форка на каждую задачу
    Ответ написан более трёх лет назад
    2 комментария
    Нравится 1 2 комментария
  • Как произвести выборку групп материалов из базы MySQL по схожим признакам?

    mgyk
    mgyk @mgyk
    Вы пытаетесь решать задачу совсем не тем инструментом. Возьмите Elastic и ищите https://www.elastic.co/guide/en/elasticsearch/refe...
    Ответ написан более трёх лет назад
    1 комментарий
    Нравится 1 комментарий
  • Как в Ruby on Rails в БД MySQL сравнивать эти типы?

    mgyk
    mgyk @mgyk
    Datetime можно перевести в формат БД datetime.to_s(:db)
    Ответ написан более трёх лет назад
    Комментировать
    Нравится 1 Комментировать
Оценили как «Нравится»
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • Следующие →
Самые активные сегодня
  • w3bsmes
    Alice
    • 18 ответов
    • 0 вопросов
  • Василий Банников
    • 9 ответов
    • 0 вопросов
  • saboteur_kiev
    Saboteur
    • 7 ответов
    • 0 вопросов
  • tumbler
    Сергей Тихонов
    • 7 ответов
    • 0 вопросов
  • leahch
    Алексей Черемисин
    • 5 ответов
    • 0 вопросов
  • IgorVader
    IgorVader
    • 5 ответов
    • 0 вопросов
  • © Habr
  • О сервисе
  • Обратная связь
  • Блог

Войдите на сайт

Чтобы задать вопрос и получить на него квалифицированный ответ.
Войти через центр авторизации