This media is not supported in your browser
VIEW IN TELEGRAM
Смеющийся испанец для меня, однозначно, мем года. А тут еще и про данные! Не могу не поделиться
Котаны, с наступающим(а кого-то и с уже наступившим) новым годом! Как говорил Конфуций: "найдите себе работу по душе, и вам не придется работать ни дня в своей жизни", вот и Вам я желаю, что бы айти приносило только удовлетворение от простого решения сложных проблем, а не головняк, фрустрацию и овертаймы! Ура, товарищи!
#kafka #performance
Отличная прошлогодняя статья про то, откуда растут ноги скорости Кафки. Если не читали, то очень советую.
В принципе ничего неожиданного (в основном, оптимизация I\O по всем фронтам), но очень круто, что кто-то собрал все такие трюки в одном месте
Отличная прошлогодняя статья про то, откуда растут ноги скорости Кафки. Если не читали, то очень советую.
В принципе ничего неожиданного (в основном, оптимизация I\O по всем фронтам), но очень круто, что кто-то собрал все такие трюки в одном месте
Хабр
Почему Kafka такая быстрая
За последние несколько лет в сфере архитектуры ПО произошли огромные изменения. Идея единственного монолитного приложения или даже нескольких крупных сервисов,...
Кстати, котаны, только сегодня узнал о существовании вот такой вот замечательной карты от CNCF
Тут собраны и сгруппированы все плюс-минус зрелые Cloud Native технологии. Очень удобно для понимания альтернатив при выборе очередного кирпичика для решения
Тут собраны и сгруппированы все плюс-минус зрелые Cloud Native технологии. Очень удобно для понимания альтернатив при выборе очередного кирпичика для решения
CNCF Landscape
The CNCF Cloud Native Landscape is intended as a map through the previously uncharted terrain of Cloud Native technologies. It attempts to categorize projects and products in the Cloud Native space.
Forwarded from @yarosh_log
Список технических блогов, стоит добавить в закладки и раз в месяц почитывать
Cloudflare https://blog.cloudflare.com/
Netflix https://netflixtechblog.com/
Uber https://eng.uber.com/
Lyft https://eng.lyft.com/
Twilio https://www.twilio.com/blog
Facebook https://research.fb.com/
Twitter https://blog.twitter.com/engineering/en_us.html
Databricks https://databricks.com/blog/category/engineering
Google AI https://ai.googleblog.com/
Google Dev https://developers.googleblog.com/
Slack (already mentioned) https://slack.engineering/
Twitch https://blog.twitch.tv/en/?tag=engineering
Quora https://www.quora.com/q/quoraengineering
Discord https://blog.discord.com/engineering-posts/home
Cloudflare https://blog.cloudflare.com/
Netflix https://netflixtechblog.com/
Uber https://eng.uber.com/
Lyft https://eng.lyft.com/
Twilio https://www.twilio.com/blog
Facebook https://research.fb.com/
Twitter https://blog.twitter.com/engineering/en_us.html
Databricks https://databricks.com/blog/category/engineering
Google AI https://ai.googleblog.com/
Google Dev https://developers.googleblog.com/
Slack (already mentioned) https://slack.engineering/
Twitch https://blog.twitch.tv/en/?tag=engineering
Quora https://www.quora.com/q/quoraengineering
Discord https://blog.discord.com/engineering-posts/home
The Cloudflare Blog
Get the latest news on how products at Cloudflare are built, technologies used, and join the teams helping to build a better Internet.
#dotnet #staticanalysis
Котаны, у Facebook есть замечательный static analysis тул под названием Infer. Если верить фейсбуку, там под капотом мат. аппарат, который позволяет детектить до 80% багла до прода.
Исторически тул работал для Java, C и Objective-C, но фейсбук внезапно добавил поддержку C# Додиезеры, возрадуйтесь!
Котаны, у Facebook есть замечательный static analysis тул под названием Infer. Если верить фейсбуку, там под капотом мат. аппарат, который позволяет детектить до 80% багла до прода.
Исторически тул работал для Java, C и Objective-C, но фейсбук внезапно добавил поддержку C# Додиезеры, возрадуйтесь!
Fbinfer
Infer Static Analyzer | Infer | Infer
A tool to detect bugs in Java and C/C++/Objective-C code before it ships
Forwarded from oleg_log (Oleg Kovalov)
Пссс, я тут недавно запостил давно начатый клиент для Redis на Go.
Зачем? Хотелось и другое не нравилось. У кого там были идеи по апи или еще какие-то боли из прода, подкиньте коментов/аргументов/ишью. Можно в лс. (Особо активных позову потом в чат организации)
Лайк-подписка на вырост https://github.com/cristalhq/redis
Зачем? Хотелось и другое не нравилось. У кого там были идеи по апи или еще какие-то боли из прода, подкиньте коментов/аргументов/ишью. Можно в лс. (Особо активных позову потом в чат организации)
Лайк-подписка на вырост https://github.com/cristalhq/redis
GitHub
GitHub - cristalhq/redis: WIP. Redis client for Go
WIP. Redis client for Go. Contribute to cristalhq/redis development by creating an account on GitHub.
#data
Отличный курс лекций про данные от Ростелека и вендоров: https://www.youtube.com/playlist?list=PLlCP3a0hjY50I5mumo_YCu7IEDjiUpEWO
З.Ы. лекции 1.1-1.3 вводные, их можно пропустить
Отличный курс лекций про данные от Ростелека и вендоров: https://www.youtube.com/playlist?list=PLlCP3a0hjY50I5mumo_YCu7IEDjiUpEWO
З.Ы. лекции 1.1-1.3 вводные, их можно пропустить
YouTube
Лекции DataTalks
Share your videos with friends, family, and the world
Forwarded from Человек и машина
#машины_разное
Во время своего выступления Дор Лаор, СЕО Scylla анонсировал новый проект Circe, который в корне меняет структуру консенсуса ScyllaDB.
Взамен Paxos в ядро этого немалоизвестного конкурента Cassandra и DynamoDB будет использоваться Raft, что по словам Дора сделано в угоду консистентности и позволяет быстрее синхронизировать новые узлы в кластере.
Интересно попробовать собрать POSIX FS over Scylla... когда-нибудь.
Во время своего выступления Дор Лаор, СЕО Scylla анонсировал новый проект Circe, который в корне меняет структуру консенсуса ScyllaDB.
Взамен Paxos в ядро этого немалоизвестного конкурента Cassandra и DynamoDB будет использоваться Raft, что по словам Дора сделано в угоду консистентности и позволяет быстрее синхронизировать новые узлы в кластере.
Интересно попробовать собрать POSIX FS over Scylla... когда-нибудь.
ScyllaDB
Making ScyllaDB a Monstrous Database: Introducing Project Circe - ScyllaDB
Project Circe is a year-long initiative to make ScyllaDB even more of a monstrous database, improving performance, scalability and elasticity.
#databases #arch
Отличное научпоп-введение в master-master БД. В программе: как это работает, когда стоит и когда не стоит использовать, в чем отличие от более распространенных master-slave
Отличное научпоп-введение в master-master БД. В программе: как это работает, когда стоит и когда не стоит использовать, в чем отличие от более распространенных master-slave
Medium
Active-Active Shared-Nothing Database Architecture
Choosing the right pattern for the right case
Ехехехе, кажется сегодня вместо пятничных мемов у нас будет рубрика "я у мамы орхитектор"
Многие не любят крон джобы, и заслуженно! У них много недостатков: их сложно мониторить, нагрузка плохо распределяется и тд и тп. Так же я видел кучу различных способов нивелировать эти недостатки: кто-то запихивает крон в приложения(здрасьте Quartz и robfig/cron), кто-то пытается использовать более современные инструменты(k8s cronjob и systemd timers), но то что я тут нашел на одном из проектов просто должно войти в историю!
Парни сделали отдельный (микро-)сервис, который при старте читает конфиг с расписаниями и по расписанию начинает через синхронное http api(КАРЛ!) дергать другие сервисы, таким образом оркестрируя выполнение отложенных/переодических задач
Вот такой вот нехитрый способ ценой связности всех сервисов, отказоустойчивости и, пожалуй, логики сэкономить немножко бойлерплейта
Многие не любят крон джобы, и заслуженно! У них много недостатков: их сложно мониторить, нагрузка плохо распределяется и тд и тп. Так же я видел кучу различных способов нивелировать эти недостатки: кто-то запихивает крон в приложения(здрасьте Quartz и robfig/cron), кто-то пытается использовать более современные инструменты(k8s cronjob и systemd timers), но то что я тут нашел на одном из проектов просто должно войти в историю!
Парни сделали отдельный (микро-)сервис, который при старте читает конфиг с расписаниями и по расписанию начинает через синхронное http api(КАРЛ!) дергать другие сервисы, таким образом оркестрируя выполнение отложенных/переодических задач
Вот такой вот нехитрый способ ценой связности всех сервисов, отказоустойчивости и, пожалуй, логики сэкономить немножко бойлерплейта
#data #cdc
Как-то пропустил новость про CDC-фреймворк от Netflix. Кажется у дебезиума теперь есть достойный конкурент)
Как-то пропустил новость про CDC-фреймворк от Netflix. Кажется у дебезиума теперь есть достойный конкурент)
Medium
DBLog: A Generic Change-Data-Capture Framework
Andreas Andreakis, Ioannis Papapanagiotou
#api
Нашел шикарное(хоть и древнее) эссе про дизайн Rest api от чувака который работал над Red Hat Enterprise Virtualization API. Очень рекомендую, узнал много интересного!
Например, вы знали, что если вам нужно уметь работать с версиями ресурсов, то в Rest'е есть нативный механизм для этого под названием variants?
Или про Link headers, позволяющие получить все ссылки из ответа на запрос без парсинга самого ответа?
Нашел шикарное(хоть и древнее) эссе про дизайн Rest api от чувака который работал над Red Hat Enterprise Virtualization API. Очень рекомендую, узнал много интересного!
Например, вы знали, что если вам нужно уметь работать с версиями ресурсов, то в Rest'е есть нативный механизм для этого под названием variants?
Или про Link headers, позволяющие получить все ссылки из ответа на запрос без парсинга самого ответа?
Forwarded from Админим с Буквой (bykva)
А еще я каким-то образом вдруг сделал вклад в опенсорс и написал (ну не только я, а еще с помощью моих коллег из ситимобил) ansible роли для разворачивания victoriametrics.
https://github.com/VictoriaMetrics/ansible-playbooks
https://github.com/VictoriaMetrics/ansible-playbooks
GitHub
GitHub - VictoriaMetrics/ansible-playbooks: Ansible Playbooks for Victoria Metrics monorepo
Ansible Playbooks for Victoria Metrics monorepo. Contribute to VictoriaMetrics/ansible-playbooks development by creating an account on GitHub.
#management
Наконец-то посмотрел доклад моего хорошего друга Коли Архипова с прошедшего РИТа. Если интересуетесь темой проверки продуктовых гипотез(да и если не интересуетесь😉), то крайне рекомендую к просмотру!
Наконец-то посмотрел доклад моего хорошего друга Коли Архипова с прошедшего РИТа. Если интересуетесь темой проверки продуктовых гипотез(да и если не интересуетесь😉), то крайне рекомендую к просмотру!
YouTube
Как мы побеждаем неопределенность в Delivery Club / Николай Архипов (Delivery Club)
Профессиональный онлайн-фестиваль для тех, кто делает Интернет РИТ++ 2020
Тезисы и презентация:
https://ritfest.ru/2020/abstracts/6836
Вы, конечно, слышали, что есть R&D. Но чем конкретно они занимаются? Алгоритмы, данные, математика, аналитика или разработка?…
Тезисы и презентация:
https://ritfest.ru/2020/abstracts/6836
Вы, конечно, слышали, что есть R&D. Но чем конкретно они занимаются? Алгоритмы, данные, математика, аналитика или разработка?…
Forwarded from oleg_log (Oleg Kovalov)
По поводу последнего (S02E15) выпуска @generictalks
Дебаг кубов. Я не знаю, что может быть лучше этого. Удивите и скиньте, если есть.
Правда вещь отличная, ты просто идешь по стрелочками и понимаешь, что не так. Обрадую, скорее всего вы получите ответ.
https://learnk8s.io/troubleshooting-deployments
Дебаг кубов. Я не знаю, что может быть лучше этого. Удивите и скиньте, если есть.
Правда вещь отличная, ты просто идешь по стрелочками и понимаешь, что не так. Обрадую, скорее всего вы получите ответ.
https://learnk8s.io/troubleshooting-deployments
LearnKube
A visual guide on troubleshooting Kubernetes deployments
Troubleshooting in Kubernetes can be a daunting task. In this article you will learn how to diagnose issues in Pods, Services and Ingress.
Forwarded from Kaznacheev Feed
#книги
Microservices Patterns - Chris Richardson
Наконец-то дочитал эту книгу, потребовалось всего лишь полгода.
Интересная книжка, которая покрывает достаточно широкий спектр проблем, связанных с разделением системы на микросервисы, а также их возможные решения.
🤔Кому интересно: разработчикам и архитекторам, занимающимся построением микросервисных систем.
👍Что понравилось: книга довольно подробно и постепенно рассказывает о переходе серверного приложения от монолитной к распределенной архитектуре, о том, с какими сложностями это связано, и как их решать. Помимо этого, каждый паттерн сопровождается описанием плюсов и минусов его применения, которым отводится достаточное место.
Особенно понравилась глава 2, где подробно рассматриваются принципы декомпозиции логики приложения на микросервисы, а также этапы разбиения с уровня высоких абстракций до конкретных реализаций.
Помимо этого, очень порадовали последние главы, описывающие тестирование, приемы трейсинга и мониторинга и описание service mesh и как его применять. Узнал много полезного, что буду применять в работе.
👎Как гласит название - это книга с примерами на Java. И это как раз та книга, где от их изобилия становится неприятно. Кроме того, автор постоянно рекламирует фреймворк, который разработан его собственным стартапом. В этом, в принципе, ничего плохого нет, но половина из примеров на Java являются примерами по решению задач с использованием этого фреймворка. С какого-то момента я просто начал проматывать листинги, так как толку от них для меня никакого.
Кроме того, что свойственно Java разработке, автор во многих местах начинает очень сильно переусложнять. Главы 4, 5, 6 прямо-таки отличный пример того, почему не стоит применять микросервисную архитектуру - в них показано, как простейшие для монолита вещи можно настолько усложнить, что разгребать придется введением дополнительных паттернов, которые, в свою очередь, придется разгребать еще несколько глав. При этом я так и не увидел, чтобы проблемы тех же распределенных транзакций были решены. Автор оперирует оркестрируемыми сагами так, как будто это простейший в реализации паттерн, учитывая предлагаемые над ним надстройки для приближенного выполнения ACID требований.
На деле это в какой-то момент превращается в абсурд и фарс, поверх которого ровным слоем намазана реклама разработанного автором фреймворка. Неподготовленный читатель может купиться на элегантность, с которой автор описывает эти решения, но на деле это сложнейшие в поддержке архитектурные элементы, которые изобилуют ограничениями и краевыми условиями.
👷♂️В книге уделяется много внимания объяснению паттернов и дается много примеров их реализации (хоть и на Java). В целом много информации, покрывающей полный цикл разработки микросервисных приложений, начиная от архитектуры и декомпозиции, заканчивая тестированием, развертыванием, мониторингом и запуском в облачных средах. Хорошее пособие для разработчиков микросенвисов, а также неплохая матчасть по этой теме, здорово упорядочивающаяся знания.
В целом книга интересная и довольно хорошая в плане пользы для читателя. Даже несмотря на огромное количество Java листингов, рекламы и явного переусложнения некоторых решений, материал все еще очень полезен для людей, испытывающих проблемы в поддержании и реализации микросервисных систем. Читать однозначно стоит, более того, книга построена таким образом, что к ней можно возвращаться за какими-то уточнениями по реализации паттернов, в конце по ним есть удобный указатель.
Microservices Patterns - Chris Richardson
Наконец-то дочитал эту книгу, потребовалось всего лишь полгода.
Интересная книжка, которая покрывает достаточно широкий спектр проблем, связанных с разделением системы на микросервисы, а также их возможные решения.
🤔Кому интересно: разработчикам и архитекторам, занимающимся построением микросервисных систем.
👍Что понравилось: книга довольно подробно и постепенно рассказывает о переходе серверного приложения от монолитной к распределенной архитектуре, о том, с какими сложностями это связано, и как их решать. Помимо этого, каждый паттерн сопровождается описанием плюсов и минусов его применения, которым отводится достаточное место.
Особенно понравилась глава 2, где подробно рассматриваются принципы декомпозиции логики приложения на микросервисы, а также этапы разбиения с уровня высоких абстракций до конкретных реализаций.
Помимо этого, очень порадовали последние главы, описывающие тестирование, приемы трейсинга и мониторинга и описание service mesh и как его применять. Узнал много полезного, что буду применять в работе.
👎Как гласит название - это книга с примерами на Java. И это как раз та книга, где от их изобилия становится неприятно. Кроме того, автор постоянно рекламирует фреймворк, который разработан его собственным стартапом. В этом, в принципе, ничего плохого нет, но половина из примеров на Java являются примерами по решению задач с использованием этого фреймворка. С какого-то момента я просто начал проматывать листинги, так как толку от них для меня никакого.
Кроме того, что свойственно Java разработке, автор во многих местах начинает очень сильно переусложнять. Главы 4, 5, 6 прямо-таки отличный пример того, почему не стоит применять микросервисную архитектуру - в них показано, как простейшие для монолита вещи можно настолько усложнить, что разгребать придется введением дополнительных паттернов, которые, в свою очередь, придется разгребать еще несколько глав. При этом я так и не увидел, чтобы проблемы тех же распределенных транзакций были решены. Автор оперирует оркестрируемыми сагами так, как будто это простейший в реализации паттерн, учитывая предлагаемые над ним надстройки для приближенного выполнения ACID требований.
На деле это в какой-то момент превращается в абсурд и фарс, поверх которого ровным слоем намазана реклама разработанного автором фреймворка. Неподготовленный читатель может купиться на элегантность, с которой автор описывает эти решения, но на деле это сложнейшие в поддержке архитектурные элементы, которые изобилуют ограничениями и краевыми условиями.
👷♂️В книге уделяется много внимания объяснению паттернов и дается много примеров их реализации (хоть и на Java). В целом много информации, покрывающей полный цикл разработки микросервисных приложений, начиная от архитектуры и декомпозиции, заканчивая тестированием, развертыванием, мониторингом и запуском в облачных средах. Хорошее пособие для разработчиков микросенвисов, а также неплохая матчасть по этой теме, здорово упорядочивающаяся знания.
В целом книга интересная и довольно хорошая в плане пользы для читателя. Даже несмотря на огромное количество Java листингов, рекламы и явного переусложнения некоторых решений, материал все еще очень полезен для людей, испытывающих проблемы в поддержании и реализации микросервисных систем. Читать однозначно стоит, более того, книга построена таким образом, что к ней можно возвращаться за какими-то уточнениями по реализации паттернов, в конце по ним есть удобный указатель.
Manning Publications
Microservices Patterns - Chris Richardson
This clearly-written practical guide offers experience-driven advice to help you design, implement, test, and deploy your microservices-based application.