Задать вопрос
  • Как отследить появление горизонтальной прокрутки JQuery?

    @AlexSuslov
    сохрани при загрузке размер страницы и проверяй с текущим по
    window.addEventListener('resize', () => { /* code */ });
    у меня это работает.

    или попробуй

    function scrollbarVisible(element) {
    return element.scrollHeight > element.clientHeight;
    }
    Ответ написан
    Комментировать
  • Есть ли в Golang поддержка MySQL?

    @AlexSuslov
    Мне jmoiron.github.io/sqlx нравится. Или Gorm gorm.io/docs
    Ответ написан
    Комментировать
  • Как правильно настроить окружение для node.js?

    @AlexSuslov
    Нашел как победить проверку на человечность Хабра.

    Привет!
    Самый костыльный запуск сервера, это старт из под screen. Но если приложение при авто деплое сможет на глухо завесить прод, так что и данные из базы не достать. Будет много приятных минут.

    По поводу исходников на проде.
    Это не хорошо. Может утечь что то лишнее. Собрать и залить результат.

    Сейчас пошла мода разрабатывать и собирать все в контейнерах.
    В ноде работает много зависимостей. Здоровья не хватит всё посмотреть. Стартуют с правами разработчика. Могут потырить контакты или секреты какие.
    Не хорошо. Поэтому запускаем все в своей песочнице. Секреты храним в vault
    https://github.com/alexsuslov/vault-consul-docker

    2 Nginx отличная штука!

    Поможет:
    - раскидать трафик как между процессами так между машинами
    - сертификаты подсунуть.
    - ограничить доступ к админке по ip
    - запаролить что то
    и еще много чего

    Авторизация
    - Регистрация
    процесс относительно редкий, данные пишем в базу
    - Идинтификация
    это происходит на каждый запрос
    дергать на каждый чих базу не хорошо

    JWT это шифрованный объект в заголовках http.
    Сервер его сам делает и может прочитать.
    Итого: мы заставляем пользователя таскать с собой некий паспорт в котором храним что нам нравится. Трафик немного растет, но не критично.
    Полезная штука

    Про эластик не помогу. Как то он мимо меня все время пробегает.

    А поиск нужно делать используя 2 источника данных
    1. поисковые фразы из описаний
    посмотреть сколько слов в среднем набирает пользователь, нарезать описания на фразы

    2. Собирать поисковые фразы пользователей, регион, время.

    Делать какую то сумму этого. Подсовывать в авто комплит под инпутом.
    Надеюсь понятно написал.
    Удачи.
    Ответ написан
  • Что такое Resolver в GraphQL?

    @AlexSuslov
    Resolver - функция которая делает что то и возвращает результат
    можно использовать от включения релюшек в IOT до бесконечности.
    Ответ написан
    Комментировать