#java #concurrency
Парни из @generictalks несколько раз в подкасте упоминали project Loom, а тут вот вышел большой лонгрид про Loom(green threads в java).
Очень советую почитать даже тем кто не из java мира, потому что это наконец-то что-то новое, а не заезженный всеми async-await. При этом в статье разбирается как это будет работать!
Парни из @generictalks несколько раз в подкасте упоминали project Loom, а тут вот вышел большой лонгрид про Loom(green threads в java).
Очень советую почитать даже тем кто не из java мира, потому что это наконец-то что-то новое, а не заезженный всеми async-await. При этом в статье разбирается как это будет работать!
Forwarded from Scala bin
С небольшим запозданием до меня добралась новость, что Scala обзавелась страницей для начинающих от SoftwareMill с кратким обзором IDE, курсов, книг и основных библиотек.
Коллеги, ещё только планирующие попробовать Scala, страницу оценили - удобно, когда вся необходимая информация собрана в одном месте.
Коллеги, ещё только планирующие попробовать Scala, страницу оценили - удобно, когда вся необходимая информация собрана в одном месте.
SoftwareMill
What is Scala? | SoftwareMill
Scala is a functional, strongly typed, general-purpose programming language. Dive into functional programming world with us & learn Scala!
Внезапно сейчас будет не про IT
Я вообще очень восхищаюсь людьми, которые умеют что-то чего я не умею, и, при этом, еще и делают это круто. Поэтому узнав, что коллега пишет музыку не смог не попиарить(хоть это и далековато от моих любимых Pantera).
Так что если кто-то давно хотел пополнить плейлист, то велкам
Я вообще очень восхищаюсь людьми, которые умеют что-то чего я не умею, и, при этом, еще и делают это круто. Поэтому узнав, что коллега пишет музыку не смог не попиарить(хоть это и далековато от моих любимых Pantera).
Так что если кто-то давно хотел пополнить плейлист, то велкам
Forwarded from Блог Сергея Баранова
У многих разработчиков и архитекторов законно возникает множество вопросов к согласованности данных в микросервисах. Некоторые приходят к паттерну SAGA и вопросов становится еще больше 🙂 Saga из тех паттернов, к которым интуитивно подходит я бы не советовал по двум причинам:
1. Она все-таки сложна в реализации и
2. Нередко затрагивает достаточно важные бизнес-процессы в распределенной, событийной системе
То есть вероятность завалить всё высокая, а исправить быстро (и ладно бы исправить — банально понять в чем дело) получается далеко не всегда.
А ведь больше половины ответов на чаще всего возникающие вопросы содержатся прям вот в том самом документе, который её и породил: https://www.cs.cornell.edu/andru/cs711/2002fa/reading/sagas.pdf
И практически все статьи повторяют в том или ином виде описанное в этой статье (иногда дополняя технологическими особенностями, иногда приводя примеры из конкретных предметных областей). Но я все же считаю, что если уж и изучать что-то сложное, то начинать с первоисточников (если первоисточники не дискридитированы, но тогда и о чтении базирующихся на первоисточнике материалов стоит задуматься), после чего можно переходить к интерпретациям.
Кто еще не читал — must read!
1. Она все-таки сложна в реализации и
2. Нередко затрагивает достаточно важные бизнес-процессы в распределенной, событийной системе
То есть вероятность завалить всё высокая, а исправить быстро (и ладно бы исправить — банально понять в чем дело) получается далеко не всегда.
А ведь больше половины ответов на чаще всего возникающие вопросы содержатся прям вот в том самом документе, который её и породил: https://www.cs.cornell.edu/andru/cs711/2002fa/reading/sagas.pdf
И практически все статьи повторяют в том или ином виде описанное в этой статье (иногда дополняя технологическими особенностями, иногда приводя примеры из конкретных предметных областей). Но я все же считаю, что если уж и изучать что-то сложное, то начинать с первоисточников (если первоисточники не дискридитированы, но тогда и о чтении базирующихся на первоисточнике материалов стоит задуматься), после чего можно переходить к интерпретациям.
Кто еще не читал — must read!
#db
Тут подъехала статья от Jaana Dogan про то как работает репликация в Spanner
Для затравочки: репликация синхронная, но SLA у них 99,999. Там 2PC, но при этом Paxos и еще много интересного
Тут подъехала статья от Jaana Dogan про то как работает репликация в Spanner
Для затравочки: репликация синхронная, но SLA у них 99,999. Там 2PC, но при этом Paxos и еще много интересного
Medium
How Does Spanner Avoid Single Point of Failures in Writes?
Google’s Spanner is a relational database with 99.999% availability which is roughly 5 mins a year. Spanner is a distributed system and…
Forwarded from Consensus
Интересная статья про Consistent Hashing алгоритмы, которые используется для построения DHT(Distributed Hash Table).
Статья содержит ссылки на Github с имплементацией различных алгоритмов на Go.
https://medium.com/@dgryski/consistent-hashing-algorithmic-tradeoffs-ef6b8e2fcae8
#DHT #ConsistentHashing #почитать
Статья содержит ссылки на Github с имплементацией различных алгоритмов на Go.
https://medium.com/@dgryski/consistent-hashing-algorithmic-tradeoffs-ef6b8e2fcae8
#DHT #ConsistentHashing #почитать
Medium
Consistent Hashing: Algorithmic Tradeoffs
Like this article? Buy me a coffee.
Forwarded from Пятничный деплой
Ближайшие митапы от DevOps Novosibirsk:
21 мая, 19:00 Нск, 15:00 Мска:
"Андрей Бешков. Построение DevSecOps как гармоничный путь развития."
FB: https://www.facebook.com/events/277229400104967/
Timepad: devops-nsk.timepad.ru/event/1316477/
28 мая, 19:00 Нск, 15:00 Мска:
"Нетворкинг: как создать и развить свой круг контактов в текущей реальности"
FB: https://www.facebook.com/events/824790024713599/
Timepad:
https://devops-nsk.timepad.ru/event/1308738/
4 июня, 19:00 Нск, 15:00 Мска:
"Тонем в облаках: краткое руководство освоения AWS"
FB: https://www.facebook.com/events/604603216818328/
Timepad: https://devops-nsk.timepad.ru/event/1311148/
—
У вас есть возможность поддержать сообщество:
https://www.patreon.com/devopsnsk
21 мая, 19:00 Нск, 15:00 Мска:
"Андрей Бешков. Построение DevSecOps как гармоничный путь развития."
FB: https://www.facebook.com/events/277229400104967/
Timepad: devops-nsk.timepad.ru/event/1316477/
28 мая, 19:00 Нск, 15:00 Мска:
"Нетворкинг: как создать и развить свой круг контактов в текущей реальности"
FB: https://www.facebook.com/events/824790024713599/
Timepad:
https://devops-nsk.timepad.ru/event/1308738/
4 июня, 19:00 Нск, 15:00 Мска:
"Тонем в облаках: краткое руководство освоения AWS"
FB: https://www.facebook.com/events/604603216818328/
Timepad: https://devops-nsk.timepad.ru/event/1311148/
—
У вас есть возможность поддержать сообщество:
https://www.patreon.com/devopsnsk
devops-nsk.timepad.ru
Возлюби безопасника своего как самого себя: Построение DevSecOps как гармоничный путь развития. / События на TimePad.ru
Forwarded from Українська девопсарня
Вышла в свет отличная книга от гугловых иженеров Building Secure and Reliable Systems - https://landing.google.com/sre/books/
Книга бесплатна в электронной версии, я пока читаю и мне очень нравится.
OK из нашего сообщества скинул прикольную цитату:
>Dubbed NotPetya, the new malware spread glob‐ ally very quickly, but was primarily found on systems in Ukraine on the eve of a Ukrainian holiday
В общем, как обычно, интересно о главном. Стоит обратить внимание.
Книга бесплатна в электронной версии, я пока читаю и мне очень нравится.
OK из нашего сообщества скинул прикольную цитату:
>Dubbed NotPetya, the new malware spread glob‐ ally very quickly, but was primarily found on systems in Ukraine on the eve of a Ukrainian holiday
В общем, как обычно, интересно о главном. Стоит обратить внимание.
DDDevotion
В эту пятницу будет большая онлайн-туса Distributed Domain-Driven Design Day https://virtualddd.com/#/conference. Помимо докладов будут также hands-on. Топовая подборка спикеров: Брандолини, Влад Хононов (@vladik_kh), Алексей Зимарев (@zimareff) и многие…
YouTube
Distributed Domain-Driven Design Day
Share your videos with friends, family, and the world
Forwarded from Sysadmin Tools 🇺🇦
Altinity | Run open source ClickHouse® better
ClickHouse® Kafka Engine FAQ
Kafka is a popular way to stream data into ClickHouse. ClickHouse has a built-in connector for this purpose -- the Kafka engine. This article collects typical questions that we get in our support cases regarding the Kafka engine usage. We...
#devops
Тут вот крутой тул ддя рисования диаграмм на python. Это как микс PlantUML и Visio. Сейчас можно рисовать инфраструктуру популярных cloud провайдеров, k8s и много разных on-premise штуковин(все популярные базы, CI, сетевые решния и пр.)
Не знаю как вы, а я очень рад. Теперь можно не страдать с Draw.io и Visio
Тут вот крутой тул ддя рисования диаграмм на python. Это как микс PlantUML и Visio. Сейчас можно рисовать инфраструктуру популярных cloud провайдеров, k8s и много разных on-premise штуковин(все популярные базы, CI, сетевые решния и пр.)
Не знаю как вы, а я очень рад. Теперь можно не страдать с Draw.io и Visio
Mingrammer
Diagrams · Diagrams
`Diagram` is a primary object representing a diagram.
Кстати, в этом году PgCon онлайновый и бесплатный!
www.pgcon.org
The PostgreSQL Conference - PGCon 2020
PGCon is a PostgreSQL Conference for Users and Developers
Forwarded from Sysadmin Tools 🇺🇦
MongoDB Best Practices on Linux 2020 Edition
https://www.percona.com/blog/2020/04/17/mongodb-best-practices-2020-edition/
#mongodb #mongo #linux #nosql
https://www.percona.com/blog/2020/04/17/mongodb-best-practices-2020-edition/
#mongodb #mongo #linux #nosql
Percona Database Performance Blog
MongoDB Best Practices: Security, Data Modeling, & Schema Design
Discover MongoDB best practices for security, data modeling, & schema design to improve performance while enhancing the HA & resilience of MongoDB.
ScalingMemcacheatFacebook.pdf
370.1 KB
#cache
Старенький, но годный пейпер про то как Facebook скейлил memcache
Старенький, но годный пейпер про то как Facebook скейлил memcache
#management #grades
Тут твитером выбросило грейд систему авито с целями-обязанностями по каждому грейду.
Эх, мне бы вот это на пол-годика пораньше, когда я у себя на галере похожее делал...
Тут твитером выбросило грейд систему авито с целями-обязанностями по каждому грейду.
Эх, мне бы вот это на пол-годика пораньше, когда я у себя на галере похожее делал...
GitHub
playbook/developer-profile.md at master · avito-tech/playbook
AvitoTech team playbook. Contribute to avito-tech/playbook development by creating an account on GitHub.
#arch
Это скорее себе заметка, но мб кому-то тоже пригодится.
IBMовский архитектурный фреймворк IBM Garage Methodology. На сайте чет очень много маркетинга и не понятно как до сути добраться, но из того что я понял он адаптирован под клауд, помогает с DevOps, SRE и, внезапно, Agile(Kanban)
Это скорее себе заметка, но мб кому-то тоже пригодится.
IBMовский архитектурный фреймворк IBM Garage Methodology. На сайте чет очень много маркетинга и не понятно как до сути добраться, но из того что я понял он адаптирован под клауд, помогает с DevOps, SRE и, внезапно, Agile(Kanban)
Forwarded from Sysadmin Tools 🇺🇦
Интерактивчик подвезли http://thesecretlivesofdata.com/raft/
Forwarded from 4gophers
Канал Юры Насретдинова на английском языке, где он разрабатывает распределенную key-value базу данных на Go. Касаются различных подходов к шардированию, как делать решардинг, и многое другое.
https://www.youtube.com/watch?v=Mgd9_P3D6u8
https://www.youtube.com/watch?v=Mgd9_P3D6u8
YouTube
Distributed key-value db in go #3: automated testing
In this video we will write unit and functional tests for the distributed key-value database in Go (golang). We don't want to make our comrads (and ourselves) suffer too much when testing things manually so we need to automate it. The database uses BoltDB…
Forwarded from Хекслет (hexlet_bot)
# Почему ООП — это плохо
Создатель языка Erlang Джо Армстронг написал эту статью 20 лет назад. Но в ней поднимаются важные и острые вопросы, поэтому мы перевели этот материал для вас.
Армстронгу не нравилось ООП по разным причинам. В статье он поделился несколькими из них:
- Функции и структуры данных имеют разную природу, поэтому с ними нельзя работать, как с одинаковыми сущностями.
- Отношение к любой сущности как к объекту усложняет работу. В объектно-ориентированном языке, например, в Smalltalk, даже число — объект. А в Erlang это экземпляр типа данных.
- В объектно-ориентированных языках принято прятать состояние. По мнению Джо Армстронга, это худшее из возможных решений.
Подробнее об отношении Армстронга к объектно-ориентированному программированию читайте в нашем блоге.
Создатель языка Erlang Джо Армстронг написал эту статью 20 лет назад. Но в ней поднимаются важные и острые вопросы, поэтому мы перевели этот материал для вас.
Армстронгу не нравилось ООП по разным причинам. В статье он поделился несколькими из них:
- Функции и структуры данных имеют разную природу, поэтому с ними нельзя работать, как с одинаковыми сущностями.
- Отношение к любой сущности как к объекту усложняет работу. В объектно-ориентированном языке, например, в Smalltalk, даже число — объект. А в Erlang это экземпляр типа данных.
- В объектно-ориентированных языках принято прятать состояние. По мнению Джо Армстронга, это худшее из возможных решений.
Подробнее об отношении Армстронга к объектно-ориентированному программированию читайте в нашем блоге.
Хекслет
# Почему ООП — это плохо Создатель языка Erlang Джо Армстронг написал эту статью 20 лет назад. Но в ней поднимаются важные и острые вопросы, поэтому мы перевели этот материал для вас. Армстронгу не нравилось ООП по разным причинам. В статье он поделился…
Не в полной мере согласен, но статья интересная, рекомендую. Тем более, что перевели на русский