Size: a a a

Пятничный деплой

2021 May 30
Пятничный деплой
Gatus is a health dashboard written in Go.

It has minimalistic configuration and allows you to set multiple conditions to label an endpoint as "healthy".

Also, you can host it on your own inside your private network. So, if you have security requirements of not to allow external health checkers into the perimeter, this could be a good way to go.

#toolz #observability
источник
Пятничный деплой
Perf is a good thing, but you also need to measure it properly. Check this out https://stonecode.ca/benchmarking-with-go/

(additional 💟 for the upcoming -shuffle=on in #golang 1.17)
источник
2021 May 31
Пятничный деплой
Introducing Argo Rollouts v1.0

https://blog.argoproj.io/introducing-argo-rollouts-v1-0-803e87f76ef7

#argocd #k8s #kubernetes
источник
Пятничный деплой
https://t.me/theaftertimes ведёт текстово картиночную трансляцию  с DevOps conf 2021
источник
Пятничный деплой
Лучшие рекомендации по Code Review

Несколько советов и приемов Code Review, которым можно следовать как в крупных компаниях, так и в стартапах.

📺 YouTube

Clean Code #видео#видео #cleancode#cleancode #CodeReview#CodeReview
источник
2021 June 01
Пятничный деплой
Отличная статья про аномалии в уровнях изоляции транзакций.

#theory #transaction #db

https://sitano.github.io/theory/databases/2019/07/30/tx-isolation-anomalies/#g0-dirty-writes
источник
Пятничный деплой
@kvaps вещает
Слайды по ссылке
https://devopsconf.io/moscow/2021/abstracts/7482
источник
Пятничный деплой
​​Статья
Implementing a simple K8s admission controller in Go

In a nutshell, Kubernetes admission controllers are plugins that govern and enforce how the cluster is used. They can be thought of as a gatekeeper that intercept (authenticated) API requests and may change the request object or deny the request altogether. The admission control process has two phases: the mutating phase is executed first, followed by the validating phase.

#kubernetes
источник
Пятничный деплой
⚙️ Тем временем, там уже 4 части набралось (ссылки в левой части страницы), последняя - Network address translation part 4 – Conntrack troubleshooting.

#напочитать #network #troubleshooting
источник
Пятничный деплой
Как масштабировать дата-центры. Доклад Яндекса
https://habr.com/ru/company/yandex/blog/476146/
источник
Пятничный деплой
Тут прошла конференция FAST'21 про системы хранения. Они читаются легко (и есть видосы) и сами по себе не за гранью понимания, спасибо регламенту, что каждая статья должна быть максимум на 11 страниц без приложения.

Много разговоров про Intel Optane 900P, если кратко, то это NVM (non volatile memory), которая вставляется за место обычной RAM памяти. Случайные чтения/записи всего лишь 300-400ns (3-4x от latency RAM), когда как у NVMe SSDs порядка 15-16us, пропускная способность раз в 3-10 меньше, чем у RAM и на уровне NVMe дисков, а ещё DWPD (Drive writes per day) в 30 раз больше, чем у NVME, которые рассчитаны на 5 лет ежедневной перезаписи. Отличие сейчас в том, что такую железку можно свободно купить за большие деньги ($1200 долларов за 375GB плашку), но всё ещё дешевле, чем столько памяти. Память становится очень дорогой — половина стоимости сервера спокойно занимает, тренды в науке это тоже подхватывают.

1. ROART: Range-query Optimized Persistent ART

Авторы красивым способом модифицируют адаптивное сжатое префиксное дерево (или, в простонародье, сжатый бор), чтобы ускорить запросы на отрезке ключей различной длины в NVM памяти. Так как NVM добавляет хлопот, например, утечки памяти, если использовать обычные аллокаторы, статья много времени уделяет корректности, сборщику мусора. Все предыдущие труды либо имели ключи фиксированной длины, либо не следили за корректностью. Как по мне, красивая статья по не менее красивым структурам данных.

2. SpanDB: A Fast, Cost-Effective LSM-tree Based KV Store on Hybrid Storage

Авторы предоставляют форк RocksDB (такая база данных от Facebook), в которой рассматривают, как сделать гибридное хранилище, где холодные данные лежат на "этих ваших старых SATA SSD", а горячие и метаданные на "Intel Optane 900P", да ещё и отказываются от Linux FS и делают всё через Intel SPDK (Storage Performance Development Kit). Окей, я верю, что Вы получили 2x уменьшение latency, ведь используется ну очень мощная железка без хождения в ядро.

Статья про далекое будущее, не знаю, кто может позволить хранить себе холодные данные на SATA SSD, которые уже на самом деле и не производятся. Для себя вытащил только SPDK на поиграться и что ext4 оверхед уже начинает быть заметным.

3. REMIX: Efficient Range Query for LSM-trees

LSM (Log-structured merge-tree) в последнее время всё больше и больше проникает в базы данных, так как она хорошо ложится под современные NVMe SSD. Авторы предлагают неплохую оптимизацию запросов на отрезке LSM деревьев за совсем немного памяти. Основная идея заключается в том, что создаются блоки размеров 16/32/64 от сконкатенированных уровней дерева и тем самым вместо 4 log(N) seek, используется log(4N) + eps. Бенчмарки, конечно же, на Intel Optane 900P

4. High Velocity Kernel File Systems with Bento

Да, файловая система на Rust, да, безопасно, дебаг предоставляется пользователю в отличие от FUSE. Статья хорошо учит как сделать хороший модуль на Rust для работы с ядром. Конечно, нет поводов не делать это в Rust, который просто не имеет проблем с памятью, но давать Best Paper Award мне кажется за такое слегка overkill. Любителям Rust обязательно обмазаться.

5. Learning Cache Replacement with CACHEUS

Все мы очень любим кешировние и знаем техники как LRU/LFU, авторы решили скомбинировать много известных техник в простую модельку машинного обучения градиентного бустинга. Получилось неплохо лучше. Было очень интересно почитать о методике как оценивать ускорения и на каких данных. Почему-то после прочтения статьи вспоминалась фраза от моего знакомого: "Чтобы ускорить приложение, надо добавить кеш, чтобы ускорить это же приложение через 5 лет, нужно убрать этот кэш. Тот, кто однажды понимает эту дуальность, познает performance". В общем, познавательно, нежели практично.

Были интересны статьи от Facebook. Но к сожалению, не все статьи впечатляют меня как человека из индустрии, например, статья по сжатиям логов, очередная идея со словарем, где строки заменяются на числа. Или очередные шедулеры NVME, но тут, признаюсь, я просто пока глуп, чтобы это понять. Развиваю свой вкус :)
источник
Пятничный деплой
Шпаргалка по инструментам для повышения производительности Go.

https://proglib.io/w/662b9991
источник
Пятничный деплой
Быстрая альтернатива golint. 🏎

https://github.com/mgechev/revive
источник
Пятничный деплой
Расшифровка доклада Дениса Исаева на GopherCon Russia 2019 о линтерах в Go.

https://proglib.io/w/b3e3a372
источник
2021 June 02
Пятничный деплой
Делаем чат-бот в Telegram на функциях: пошаговая инструкция

Рассказываем, как с помощью бессерверных вычислений сделать своего чат-бота в Telegram с нуля. Он сможет отвечать на запросы простыми сообщениями и отправлять картинки. Подойдет для организации процессов разработки, поддержки и продаж.

Мы напишем простого бота-заготовку, которого можно использовать для написания полноценного приложения, добавив нужную вам функциональность.

Подробный гайдлайн читайте в статье →

#yacloud_news
источник
Пятничный деплой
​​Статья
How etcd works and 6 tips to keep in mind

Статья содержит информацию о Raft протоколе, примеры работы с etcd и полезные советы 👍

#etcd #kubernetes
источник
Пятничный деплой
Присоединяйтесь к бесплатному онлайн-интенсиву по программированию, изучите универсальный язык С++ и создайте свой первый сервер для чатов за 3 дня! 😉

Участие бесплатное! Регистрируйтесь по ссылке: 👉 https://clc.am/KvpvGg.

🔥 Занятия проведёт эксперт с 17-летним опытом в области программирования, ведущий методист курсов по программированию в Skillbox — Михаил Овчинников.

☝️ Вы подробно изучите основы языка C++ и сможете понимать его синтаксис, научитесь применять стандартную библиотеку и разрабатывать серверные многопоточные приложения.

🎁 Все, кто сдадут домашнее задание, получат сертификат на 15 000 рублей на любой обучающий курс Skillbox.


Присоединяйтесь к прямым эфирам с 3 по 5 июня в 21:00 по московскому времени!
источник
Пятничный деплой
Consul Service Mesh for Amazon ECS is now in the Tech Preview.

This means that you can deploy Consul Service Mesh on Fargate type ECS using official Terraform modules. However, only setups for Dev are supported right now, i.e. the official module deploys only a single dev/testing Consul task for now. This will be changed before Consul Service Mesh for AWS ECS hits GA.

#consul #hashicorp #aws #networking
источник
Пятничный деплой
Pre-Commit-GoLang — репозиторий, включающий набор git pre-commit хуков для Golang с поддержкой модулей.

К слову сказать, в версии 0.8.3 появилась поддержка линтера revive, а здесь можно почитать про настройку revive в GoLand.
источник
Пятничный деплой
Отличная подборка, которая, судя по GH, ещё и постоянно обновляется.

Curated list of resources on testing distributed systems
https://asatarin.github.io/testing-distributed-systems/

Спасибо подписчику за ссылку.
источник