Вышла новая версия Memcached 1.6.0
Авторы говорят, что добавили много крутых фич и исправили кучу ошибок, которые надо было давно пофиксить: https://github.com/memcached/memcached/wiki/ReleaseNotes160
Если кто уже пробовал — поделитесь в комментариях, как работает и есть ли ускорение или снижения загрузку CPU в этой версии.
Авторы говорят, что добавили много крутых фич и исправили кучу ошибок, которые надо было давно пофиксить: https://github.com/memcached/memcached/wiki/ReleaseNotes160
Если кто уже пробовал — поделитесь в комментариях, как работает и есть ли ускорение или снижения загрузку CPU в этой версии.
Где и как мониторить скорость загрузки веб-сайта, чтобы понимать как можно всё улучшить — годная подборка инструментов от команды Tproger
https://tproger.ru/articles/tproger-performance-monitoring-and-improving-tools/
#мониторинг #инструменты
https://tproger.ru/articles/tproger-performance-monitoring-and-improving-tools/
#мониторинг #инструменты
Сегодня рассказываем про директиву stale-while-revalidate HTTP-заголовка Cache-Control.
Суть в том, что клиент может использовать уже «протухшую» версию файла из кэша, а в это время запросить новую версию в фоне. Вроде как и ответ на запрос можно получить мгновенно и обновление кэша тоже происходит, просто с задержкой.
Вот пример от ребят из Google:
Такой заголовок они добавили для скрипта gpt.js, который используется для показа рекламы. Если файл запрашивается между 15 и 60 минутами, после того как он попал в кэш, будет использоваться устаревшая версия, но в фоне скрипт будет обновлён и закэширован для использования в будущем. Добавление заголовка ускорило начальную загрузку скрипта на 2% и на 0,5% увеличило доход с рекламы.
Директива stale-while-revalidate не входит в основной стандарт, однако уже поддерживается в FF, Chrome и Edge (в целом 67% юзеров по миру на момент публикации поста).
#http #браузеры
Суть в том, что клиент может использовать уже «протухшую» версию файла из кэша, а в это время запросить новую версию в фоне. Вроде как и ответ на запрос можно получить мгновенно и обновление кэша тоже происходит, просто с задержкой.
Вот пример от ребят из Google:
cache-control: private, max-age=900, stale-while-revalidate=3600Такой заголовок они добавили для скрипта gpt.js, который используется для показа рекламы. Если файл запрашивается между 15 и 60 минутами, после того как он попал в кэш, будет использоваться устаревшая версия, но в фоне скрипт будет обновлён и закэширован для использования в будущем. Добавление заголовка ускорило начальную загрузку скрипта на 2% и на 0,5% увеличило доход с рекламы.
Директива stale-while-revalidate не входит в основной стандарт, однако уже поддерживается в FF, Chrome и Edge (в целом 67% юзеров по миру на момент публикации поста).
#http #браузеры
This media is not supported in your browser
VIEW IN TELEGRAM
Сколько раз вы писали sl вместо ls для получения списка файлов в консоли?
Предлагаем делать опечатки стильно:
(ну или какой там у вас пакетный менеджер, утилита есть почти под все платформы)
Теперь к вам приедет паровозик (Steam Locomotive), если вы снова ошибётесь. Разные опции дают разный результат, можно экспериментировать.
#консоль
Предлагаем делать опечатки стильно:
sudo apt-get install sl(ну или какой там у вас пакетный менеджер, утилита есть почти под все платформы)
Теперь к вам приедет паровозик (Steam Locomotive), если вы снова ошибётесь. Разные опции дают разный результат, можно экспериментировать.
#консоль
This media is not supported in your browser
VIEW IN TELEGRAM
В инструментах разработчика Google Chrome есть возможность скопировать любой запрос на вкладке Network в виде команды cURL. Все заголовки и кукисы включены т.е. можно полностью повторить HTTP-реквест вне браузера.
Но можно ещё круче. Берём команду cURL из буфера и вставляем вот тут: https://curl.trillworks.com/. Получаем готовый код на Pyhton, Go, PHP или на чём вы там сейчас пишите.
Это удобно, когда работаете с сайтами, которые проверяют заголовки или ещё какие-то условия, которые просто так сразу не видно.
#chrome #браузеры
Но можно ещё круче. Берём команду cURL из буфера и вставляем вот тут: https://curl.trillworks.com/. Получаем готовый код на Pyhton, Go, PHP или на чём вы там сейчас пишите.
Это удобно, когда работаете с сайтами, которые проверяют заголовки или ещё какие-то условия, которые просто так сразу не видно.
#chrome #браузеры
Git Flow — модель ветвления и слияния в гите, которая стала безумно популярной после одной заметки 10-летней давности. И вот в этом году выходит другая статья, где говорится, что это всё фигня и так делать не надо. И даже автор оригинальной заметки вносит правки в своё видение.
В общем, занятно получилось: https://habr.com/ru/company/flant/blog/491320/
#git
В общем, занятно получилось: https://habr.com/ru/company/flant/blog/491320/
#git
Годная статейка про то, как забирать данные с других сайтов и при этом не попасть в бан. Ну или попасть, но потом обойти его.
https://tproger.ru/translations/web-scraping-without-getting-blocked/
Имеется в виду именно открытый парсинг, когда API или готовых фидов нет. Например, чтобы забрать себе данные по ценам на товары в онлайн-магазинах конкуретов.
(картинка в посте про «извлечение» данных, хехе, ну вы поняли)
#парсинг
https://tproger.ru/translations/web-scraping-without-getting-blocked/
Имеется в виду именно открытый парсинг, когда API или готовых фидов нет. Например, чтобы забрать себе данные по ценам на товары в онлайн-магазинах конкуретов.
(картинка в посте про «извлечение» данных, хехе, ну вы поняли)
#парсинг
webscrapinghandbook.pdf
4.5 MB
По поводу веб-скрейпинга. Вот тут ещё подъехало руководство по этому делу на Java.
Авторы бесплатно опубликовали книжку на 130 страниц, которую изначально издали в 2018 году. И даже дали прямую ссылку на скачивание PDF (прикрепили к посту).
Для тех, кто всё пропустил: веб-скрейпинг это про то, как забирать данные с других сайтов. Например, спарсить сводки по коронавирусу и отобразить их в своей IDE. Чтобы мониторить ситуацию не отвлекаясь от кодинга.
#парсинг
Авторы бесплатно опубликовали книжку на 130 страниц, которую изначально издали в 2018 году. И даже дали прямую ссылку на скачивание PDF (прикрепили к посту).
Для тех, кто всё пропустил: веб-скрейпинг это про то, как забирать данные с других сайтов. Например, спарсить сводки по коронавирусу и отобразить их в своей IDE. Чтобы мониторить ситуацию не отвлекаясь от кодинга.
#парсинг
Инструмент для ресайза и конвертации картинок в вебе: https://bulkresizephotos.com/
И когда мы говорим «в вебе», то имеем в виду не на удалённом сервере, а локально у вас на комьютере, просто в веб-интерфейсе. По этой причине всё работает так быстро (для референса 150 средних картинок за 60 секунд).
Вроде простая идея, но жизнь сильно упрощает. Не надо ничего скачивать, запускать. Просто переходишь по ссылке с параметрами и все твои настройки уже подгрузились. Драг-н-дропаешь картинки и готово.
#инструменты
И когда мы говорим «в вебе», то имеем в виду не на удалённом сервере, а локально у вас на комьютере, просто в веб-интерфейсе. По этой причине всё работает так быстро (для референса 150 средних картинок за 60 секунд).
Вроде простая идея, но жизнь сильно упрощает. Не надо ничего скачивать, запускать. Просто переходишь по ссылке с параметрами и все твои настройки уже подгрузились. Драг-н-дропаешь картинки и готово.
#инструменты
12 концепций, которые прокачают ваш JavaScript: https://tproger.ru/translations/javascript-important-concepts/
Рекомендуем всем, кто сталкивается с JS. Статья не охватывает всё, что может пригодится, но некоторые полезные советы точно найти можно.
#javascript
Рекомендуем всем, кто сталкивается с JS. Статья не охватывает всё, что может пригодится, но некоторые полезные советы точно найти можно.
#javascript
This media is not supported in your browser
VIEW IN TELEGRAM
Визуальный клиент Git для терминала: https://github.com/jesseduffield/lazygit
Написан на Go, есть пакеты под популярные дистрибутивы Linux и сборка под Windows.
Git — очень удобный и мощный инструмент. Но начать им пользоваться сразу на полную не всегда просто. Так что подобные инструменты помогают перестать бояться мержей, ребейзов и других страшных слов.
#git
Написан на Go, есть пакеты под популярные дистрибутивы Linux и сборка под Windows.
Git — очень удобный и мощный инструмент. Но начать им пользоваться сразу на полную не всегда просто. Так что подобные инструменты помогают перестать бояться мержей, ребейзов и других страшных слов.
#git
Годная статья по балансировке долгоживущих подключений в Kubernetes
https://learnk8s.io/kubernetes-long-lived-connections
Если коротко, то K8s по умолчанию не балансирует коннекшены, которые держатся долго: HTTP/2, gRPC, RSockets, AMQP или подключения в БД, например. И некоторые поды могут получить куда больше нагрузки, чем хотелось бы.
И тут можно задуматься о балансировке на клиенте. Вот в статье про это и пишут.
#devops #kubernetes
https://learnk8s.io/kubernetes-long-lived-connections
Если коротко, то K8s по умолчанию не балансирует коннекшены, которые держатся долго: HTTP/2, gRPC, RSockets, AMQP или подключения в БД, например. И некоторые поды могут получить куда больше нагрузки, чем хотелось бы.
И тут можно задуматься о балансировке на клиенте. Вот в статье про это и пишут.
#devops #kubernetes
Продолжаем тему HTTP/3, потому что всем уже очень хочется, чтобы это заработало. Наши сайты просто станут быстрее работать, юзеры довольны, программисты, владельцы — все.
Попалась хорошая статейка о том, что вообще такое HTTP/3, откуда и как он появился, в чём плюсы: https://tprg.ru/YoQF
По срокам HTTP/3 хотя бы частично в реальной жизни можно ожидать в 2020 году, летом стандарт обещают окончательно утвердить, а экспериментальная поддержка есть уже почти везде. Особо никто не торопится, чтобы не накосячить в процессе.
А потом можно ждать и обновление с multipath (доступ к одному сайту по разным сетевым соединениям) и поддержкой ненадёжных или частично надёжных стримов (трансляторы всякие порадуются) и других вкусняшек.
#http
Попалась хорошая статейка о том, что вообще такое HTTP/3, откуда и как он появился, в чём плюсы: https://tprg.ru/YoQF
По срокам HTTP/3 хотя бы частично в реальной жизни можно ожидать в 2020 году, летом стандарт обещают окончательно утвердить, а экспериментальная поддержка есть уже почти везде. Особо никто не торопится, чтобы не накосячить в процессе.
А потом можно ждать и обновление с multipath (доступ к одному сайту по разным сетевым соединениям) и поддержкой ненадёжных или частично надёжных стримов (трансляторы всякие порадуются) и других вкусняшек.
#http
GitHub купил npm: https://github.blog/2020-03-16-npm-is-joining-github/
Говорят, что всё по прежнему будет бесплатным. Сейчас в npm более 1,3 миллиона пакетов и 75 миллиардов загрузок в месяц. Это очень важная часть JavaScript-мира.
Ключевые направления развития обозначены так:
— инвестиции в развитие инфраструктуры и платформы;
— улучшение пользовательского опыта: продолжение развития Workspaces, процесса публикации пакетов и добавление многофакторной аутентификации;
— взаимодействие с сообществом: идеи от пользователей будут приниматься и добавляться в план разработки.
Мы думаем, что новость скорее позитивная. MS довольно хорошо повлияла на GitHub после покупки. Посмотрим, что будет дальше.
#javascript #npm #github
Говорят, что всё по прежнему будет бесплатным. Сейчас в npm более 1,3 миллиона пакетов и 75 миллиардов загрузок в месяц. Это очень важная часть JavaScript-мира.
Ключевые направления развития обозначены так:
— инвестиции в развитие инфраструктуры и платформы;
— улучшение пользовательского опыта: продолжение развития Workspaces, процесса публикации пакетов и добавление многофакторной аутентификации;
— взаимодействие с сообществом: идеи от пользователей будут приниматься и добавляться в план разработки.
Мы думаем, что новость скорее позитивная. MS довольно хорошо повлияла на GitHub после покупки. Посмотрим, что будет дальше.
#javascript #npm #github
Сегодня делимся полезными ссылками для всех программистов, не только по вебу. Да что уж там, это вообще для многих полезно.
Как возродить потерянную мотивацию: https://tprg.ru/c2af
Вам кажется, что все вокруг программируют лучше? Не беспокойтесь, вы не одиноки: https://tprg.ru/Pmjy
Зачем разработчику личный план развития и как его составить: https://tprg.ru/ICke
Как побороть прокрастинацию: https://tprg.ru/isha
#мотивация #саморазвитие
Как возродить потерянную мотивацию: https://tprg.ru/c2af
Вам кажется, что все вокруг программируют лучше? Не беспокойтесь, вы не одиноки: https://tprg.ru/Pmjy
Зачем разработчику личный план развития и как его составить: https://tprg.ru/ICke
Как побороть прокрастинацию: https://tprg.ru/isha
#мотивация #саморазвитие
Инструмент для организации доски мониторинга за серверами, статусом сборки, критическими ошибками и всякими другими метриками. Ну, знаете, такой большой экран на стене, которы иногда становится красным и все в офисе паникуют.
Называется Monitoror: https://github.com/monitoror/monitoror
На картинке в посте пример дашборда, его же можно глянуть в лайв-режиме здесь: https://tprg.ru/Ibqk
Monitoror написан на Go, работает на Linux (64bits, ARM), macOS, Windows (64bits). Все подробности в репозитории.
#мониторинг
Называется Monitoror: https://github.com/monitoror/monitoror
На картинке в посте пример дашборда, его же можно глянуть в лайв-режиме здесь: https://tprg.ru/Ibqk
Monitoror написан на Go, работает на Linux (64bits, ARM), macOS, Windows (64bits). Все подробности в репозитории.
#мониторинг
Инструмент для сканирования кластера Kubernetes на потенциально небезопасные права доступа: https://github.com/cyberark/KubiScan
Называется KubiScan. Эта штука была опубликована как часть отдельного исследования по безопасности Role-based access control в K8s: https://tprg.ru/5mk6
Все поднобности в репозитории, там же пример использования и демка.
#kubernetes
Называется KubiScan. Эта штука была опубликована как часть отдельного исследования по безопасности Role-based access control в K8s: https://tprg.ru/5mk6
Все поднобности в репозитории, там же пример использования и демка.
#kubernetes
Зачем в современном вебе нужен title?
Мобильные браузеры отображать в тултипе содержимое атрибута не могут, в отличие от десктопных. В описании ссылок и изображений атрибут тоже в общем-то не нужен. Можно, конечно использовать для добавления дополнительной информации к фреймам, но фреймы уже никто не использует.
Подробней почитать про этот вопрос можно в статье разработчика, участника рабочих групп W3C:
https://tprg.ru/IGwV
#фронтенд #html
Мобильные браузеры отображать в тултипе содержимое атрибута не могут, в отличие от десктопных. В описании ссылок и изображений атрибут тоже в общем-то не нужен. Можно, конечно использовать для добавления дополнительной информации к фреймам, но фреймы уже никто не использует.
Подробней почитать про этот вопрос можно в статье разработчика, участника рабочих групп W3C:
https://tprg.ru/IGwV
#фронтенд #html