Интересная история из Dropbox про то как они строили монорепу на Git.
TLDR парням пришлось дождаться новой версии гита, самим поправить баги и в итоге написать свой враппер над гитом и все равно
Кароч очередной привет всем кто считает, что достаточно Bazel поставить
TLDR парням пришлось дождаться новой версии гита, самим поправить баги и в итоге написать свой враппер над гитом и все равно
git status у них подскакивает до 1.5сек. Так же в статье есть ссылка на аналогичный success-story от Микрософт.Кароч очередной привет всем кто считает, что достаточно Bazel поставить
dropbox.tech
Speeding up a Git monorepo at Dropbox with <200 lines of code
Forwarded from Lil Functor
Хорошая статья с чеклистом для ревью кода внутри распределённых систем.
Обращение к сторонним компонентам
- обрабатываются ли все ошибки, прописано ли восстановление после ошибок?
- закрываются ли ресурсы в случае ошибок, откатываются ли изменения состояния?
- есть ли таймаут на обращение к другому компоненту? обрабатывается ли таймаут отдельно от остальных ошибок?
- есть ли ретраи на таймауты?
- ограничивается ли нагрузка при ретраях (экспоненциальные ретраи, circuit breaker)?
- в случае использования batch API, ограничен ли размер батча?
- кешируются ли ответы?
Разработка API
- идемпотентно ли API?
- ограничено ли время ожидания ответа?
- может ли API работать батчами? ограничен ли размер принимаемого батча?
- собираются ли логи/метрики обращений к API?
- какой статус должен получить клиент в случае отказа отдельных этапов обработки запроса?
- не протекают ли доменные модели между частями системы?
Ещё у автора есть пост по дизайн ревью новых компонентов системы: https://www.kislayverma.com/post/design-review-checklist-for-distributed-systems
Обращение к сторонним компонентам
- обрабатываются ли все ошибки, прописано ли восстановление после ошибок?
- закрываются ли ресурсы в случае ошибок, откатываются ли изменения состояния?
- есть ли таймаут на обращение к другому компоненту? обрабатывается ли таймаут отдельно от остальных ошибок?
- есть ли ретраи на таймауты?
- ограничивается ли нагрузка при ретраях (экспоненциальные ретраи, circuit breaker)?
- в случае использования batch API, ограничен ли размер батча?
- кешируются ли ответы?
Разработка API
- идемпотентно ли API?
- ограничено ли время ожидания ответа?
- может ли API работать батчами? ограничен ли размер принимаемого батча?
- собираются ли логи/метрики обращений к API?
- какой статус должен получить клиент в случае отказа отдельных этапов обработки запроса?
- не протекают ли доменные модели между частями системы?
Ещё у автора есть пост по дизайн ревью новых компонентов системы: https://www.kislayverma.com/post/design-review-checklist-for-distributed-systems
Kislay Verma
Code review checklist for distributed systems | Kislay Verma
A basic checklist for reviewing code in a distributed systems environment
Forwarded from HABR FEED + OPENNET
Что нужно знать об архитектуре ClickHouse, чтобы его эффективно использовать. Алексей Зателепин
https://habr.com/ru/post/509540/?utm_source=habrahabr&utm_medium=rss&utm_campaign=509540
Tags: IT-инфраструктура, Open source, Администрирование баз данных, Высокая производительность, Хранение данных, clickhouse
Author chemtech #habr
https://habr.com/ru/post/509540/?utm_source=habrahabr&utm_medium=rss&utm_campaign=509540
Tags: IT-инфраструктура, Open source, Администрирование баз данных, Высокая производительность, Хранение данных, clickhouse
Author chemtech #habr
Хабр
Что нужно знать об архитектуре ClickHouse, чтобы его эффективно использовать. Алексей Зателепин (2018г)
ClickHouse — высокопроизводительная аналитическая база данных с открытыми исходниками, разработанная в Яндексе. Изначально ClickHouse создавался для задач Яндекс.Метрики, но постепенно нашёл...
#security
Elastic заопенсорсили свой набор detection rule'ов. Я тот еще мамкин безопасник, поэтому понятия не имею как это правильно заюзать, но возможно кому-то будет полезно
Elastic заопенсорсили свой набор detection rule'ов. Я тот еще мамкин безопасник, поэтому понятия не имею как это правильно заюзать, но возможно кому-то будет полезно
Elastic Blog
Elastic Security opens public detection rules repo
Elastic Security has opened its detection rules repository to the world. We will develop rules in the open alongside the community, and we’re welcoming your community-driven detections. This is an opp...
#concurrency
Очень интересный лонгрид про уровни concurrency паттернов с миленькими бенчами на разных архитектурах.
Очень полезно(хоть и больно, т.к. код на крестах) будет почитать всем кто не очень понимает в чем отличие по перфомансу spin wait'a от atomic'ов
Очень интересный лонгрид про уровни concurrency паттернов с миленькими бенчами на разных архитектурах.
Очень полезно(хоть и больно, т.к. код на крестах) будет почитать всем кто не очень понимает в чем отличие по перфомансу spin wait'a от atomic'ов
Performance Matters
A Concurrency Cost Hierarchy
Concurrent operations can be grouped relatively neatly into categories based on their cost
тут в твиттере мелькнула интересная мысль: этот ваш софтваре девелопмент отлично ложится на Akin’s Laws of Spacecraft Design(ну или, по-крайней мере, если следовать этим законам, то софт будет получаться сильно лучше)
Все знают про каррирование функций названное в честь Хаскелла Карри, но не многие в курсе, что концепция каррирования была немного раньше(до Карри) уже изобретена Мосесом Шонфинкелем(не уверен, что правильно перевел Schoenfinkel). Так что технически мы с вами функции шонфилькируем)))
Очень годный лонгрид про полиморфизм(особенно если походить по ссылочкам).
Если все еще путаете параметрический и ad-hoc, то вам сюда
Если все еще путаете параметрический и ad-hoc, то вам сюда
Medium
Полиморфизм простыми словами
Скорее всего вы уже встречались с понятием “полиморфизм” и даже помните примеры с наследованием, но они показывают далеко не всё..
#linux
Каким-то чудом не запостил сериал от Петра Зайцева(Percona) про то, как мерять перфоманс подсистем линукса. Как раз вышла новая часть про io
Каким-то чудом не запостил сериал от Петра Зайцева(Percona) про то, как мерять перфоманс подсистем линукса. Как раз вышла новая часть про io
ma.ttias.be
How to measure Linux Performance Avoiding Most Typical Mistakes: CPU
This post is the first in a four-part blog series by Peter Zaitsev, Percona Chief Executive Officer.
Forwarded from CatOps
Статья от Percona с советами по созданию дашбордов
В названии фигурирует Grafana, но советы на самом деле общее. Кому-то они могут показаться капитанскими, но я повидал слишком много непонятных, бесполезных и перегруженных дашбордов. Потому считаю необходимым запостить.
#observability
В названии фигурирует Grafana, но советы на самом деле общее. Кому-то они могут показаться капитанскими, но я повидал слишком много непонятных, бесполезных и перегруженных дашбордов. Потому считаю необходимым запостить.
#observability
Percona Database Performance Blog
Tips for Designing Grafana Dashboards
Peter Zaitsev share some of his considerations for designing Grafana Dashboards which will allow you to create better dashboards.
Forwarded from dd if=/dev/stuff of=/dev/tg
Пейперы, поданные на ICFP 2020:
https://github.com/llelf/icfp2020-papers
https://github.com/llelf/icfp2020-papers
GitHub
GitHub - llelf/icfp2020-papers: ICFP 2020 papers. Crowd-sourced
ICFP 2020 papers. Crowd-sourced. Contribute to llelf/icfp2020-papers development by creating an account on GitHub.
I hate overtime
#data Шикарный лонгрид с обзорами и сравнением DWH и DataLake Одна картинка чего стоит, хех. Кмк, это самое емкое определение data governance
Forwarded from oleg_log (Oleg Kovalov)
Так вот. Dropbox победил.
Много кто из отозвавшихся синхронизирует через Db, и книги, и доки, и даж фотки. Фотки чаще в Google Photos и iCloud.
Треть тех, кто кто юзает клауд, еще и на HDD/SSD сливают бекап, на всякий случай. Звучит честно. Была парочка человек с зашифрованными флешками и самым важным (ssh ключи и боевые картиночки).
Поддержание своего сервера с каким-то там бесплатным решением для синхронизации оказалось редким (я о Syncthing и аналогах). Хотя у Digitalocean дешевый S3 как помню.
2. Для знаний Телеграм (внезапно) и Notion. Apple, Google, MS заметки очень редкие оказались, хотя мне кажется Apple-вские юзает все, у кого мак/айфон. Может я неправильно в чужие мониторы смотрел.
Foam и https://obsidian.md/ идеальный вариант, если боитесь, что с Notion что-то случится. (https://www.orgroam.com/ сюда же)
Ах да, кое-кто сделал решение с Todoist -> Integromat => Airtable (No code, товарищи), как минимум лайк за оригинальность.
Если интересно мое:
1. Google drive для доков и бюрократии, хотя часть и на Dropbox тоже. Google photos для медиа.
2. Хотелось Notion но сильно не зашло, хотелось попробовтаь в Markdown, но остановился на "приватный канал в телеге по теме" куда просто кидаю хорошие ссылки.
Но Фоам и Обсидиан точно потыкаю, хочется аналог книги. Спасибо всем отозвавшимся.
Много кто из отозвавшихся синхронизирует через Db, и книги, и доки, и даж фотки. Фотки чаще в Google Photos и iCloud.
Треть тех, кто кто юзает клауд, еще и на HDD/SSD сливают бекап, на всякий случай. Звучит честно. Была парочка человек с зашифрованными флешками и самым важным (ssh ключи и боевые картиночки).
Поддержание своего сервера с каким-то там бесплатным решением для синхронизации оказалось редким (я о Syncthing и аналогах). Хотя у Digitalocean дешевый S3 как помню.
2. Для знаний Телеграм (внезапно) и Notion. Apple, Google, MS заметки очень редкие оказались, хотя мне кажется Apple-вские юзает все, у кого мак/айфон. Может я неправильно в чужие мониторы смотрел.
Foam и https://obsidian.md/ идеальный вариант, если боитесь, что с Notion что-то случится. (https://www.orgroam.com/ сюда же)
Ах да, кое-кто сделал решение с Todoist -> Integromat => Airtable (No code, товарищи), как минимум лайк за оригинальность.
Если интересно мое:
1. Google drive для доков и бюрократии, хотя часть и на Dropbox тоже. Google photos для медиа.
2. Хотелось Notion но сильно не зашло, хотелось попробовтаь в Markdown, но остановился на "приватный канал в телеге по теме" куда просто кидаю хорошие ссылки.
Но Фоам и Обсидиан точно потыкаю, хочется аналог книги. Спасибо всем отозвавшимся.
Obsidian
Obsidian - Sharpen your thinking
The free and flexible app for your private thoughts.
Forwarded from FEDOR BORSHEV
Список вопросов для 1:1
Отличный список для вдохновения, ~300 вопросов, которые можно задать на личной встрече с сотрудником.
Есть всё, от банального «Что ты думаешь о моей работе» до крутейшего «Если бы ты был CEO, чтобы ты поменял первым делом?».
Отличный список для вдохновения, ~300 вопросов, которые можно задать на личной встрече с сотрудником.
Есть всё, от банального «Что ты думаешь о моей работе» до крутейшего «Если бы ты был CEO, чтобы ты поменял первым делом?».
Forwarded from Флант | Специалисты по DevOps и Kubernetes
Новый перевод в блоге — обзор и сравнение утилит для валидации Kubernetes-манифестов: https://habr.com/ru/company/flant/blog/511018/
Хабр
Валидация Kubernetes YAML на соответствие лучшим практикам и политикам
Прим. перев.: С ростом числа YAML-конфигураций для K8s-окружений всё более актуальной становится потребность в их автоматизированной проверке. Автор этого обзора...
Флант | Специалисты по DevOps и Kubernetes
Новый перевод в блоге — обзор и сравнение утилит для валидации Kubernetes-манифестов: https://habr.com/ru/company/flant/blog/511018/
Очень годный обзор, кстати! Советую обзавестись хотя бы минимумом(kubeval), что бы не попасть в ситуацию когда лимиты на ресурсы не сработали потому что в вашем любимом редакторе tab не в нужное число пробелов выставлен(это, кстати, реал стори, поцоны. Как же меня тогда бомбило....)
#monitoring #anomalydetection
Ну и вдогонку статья от гитлаба как они сделали anomaly detection(z-score) на проме.
Советую почитать, потому как реализовать такое достаточно просто, и хорошо помогает при спайках
Ну и вдогонку статья от гитлаба как они сделали anomaly detection(z-score) на проме.
Советую почитать, потому как реализовать такое достаточно просто, и хорошо помогает при спайках
about.gitlab.com
How to use Prometheus for anomaly detection in GitLab
Explore how Prometheus query language can be used to help you diagnose incidents, detect performance regressions, tackle abuse, and more.