Получи случайную криптовалюту за регистрацию!

I hate overtime

Логотип телеграм канала @overtimehate — I hate overtime I
Логотип телеграм канала @overtimehate — I hate overtime
Адрес канала: @overtimehate
Категории: Технологии
Язык: Русский
Количество подписчиков: 1.04K
Описание канала:

Some DevOps, SRE and IT development stuff

Рейтинги и Отзывы

4.00

2 отзыва

Оценить канал overtimehate и оставить отзыв — могут только зарегестрированные пользователи. Все отзывы проходят модерацию.

5 звезд

0

4 звезд

2

3 звезд

0

2 звезд

0

1 звезд

0


Последние сообщения 4

2021-03-26 11:12:59 #arch #scheduling
Что-то за последнее время вышло достаточно много статей про task scheduler'ы. Решил подсобрать такое в одном посте потому что во-первых такие решения, это просто красиво, а во-вторых может поможет кому-то выбрать подходящее себе.
Сразу скажу, что это парад велосипедов от различных именитых(и не очень) компаний. Mesos и аналогов тут не будет, т.к. они достойны отдельных постов, а многие из них имеют даже свои пейперы. Ну погнали:
1. Открывает наш парад Яндекс со своим YT. На самом деле это целая экосистема очень похожая на экосистему Hadoop. Лично мне смысл ее создания не очень понятен(т.к., собственно, хадуп уже изобретен), да и MapReduce парадигма уже давно морально устарела, но выглядит все равно достаточно интересно. Буду благодарен, если Яндексоиды в коментах расскажут в чем был цимес ее создания
UPD. @sharpler в комментах классно рассказал про YT, за что большое спасибо!
2. Продолжим интересным решением от Drobox под названием ATF. Проект интересен тем, что он очень близок к serverless теме
3. Дальше у нас Facebook и Twine. На самом деле Twine это не просто шедулер, а настоящий оркестратор а-ля k8s. К сожалению, коллеги его незаопенсорсили, так что инфы про него не очень много. А жаль
4. Дальше у нас Netflix аж с 2мя поделками. Во-первых, это Fenzo, который дружит mesos с aws и, в частности, с автоскелером. Во-вторых, это Genie, который хоть сам ничего и не шедулит, но представляет удобную абстракцию над другими ресурсными менеджерами
Как всегда очень жду еще прикольных ссылок по теме от подписчиков в комментах!
2.7K viewsedited  08:12
Открыть/Комментировать
2021-03-02 23:54:46 #api
Тут пришлось посмотреть несколько открытых API стандартов(Cisco, Microsoft, Atlassian, Heroku, Google и др). У всех у них много общего, но есть и интересные особенности. Дальше озвучу несколько инсайтов:

1. Все, за редким исключением юзают ETag'и для кеширования. ETag — отличный инструмент, который, впрочем, всегда казался мне немного маргинальным. Однако же, оказывается, это не так и все его активно используют
2. У Adidas отличное API. Не, серьезно, почитайте! Тут вам и HATEOAS и HAL и еще куча всего полезного
3. Почти у всех есть поддержка long-running operations, а вот batching многие обходят стороной. Мне это кажется странным, т.к. поддержка батчевых операций всегда казалась мне признаком зрелого API
4. У всех, конечно же, присутствует базовая гигиена а-ля стандартные форматы ошибок, пейджинг, фильтрация и т.д. Кто-то придумывает свои велосипеды типа Facebook projections, кто-то даже пытается это стандартизировать(привет OData). А что если я скажу, что есть RFC на API-ошибки и на кросс-ресурсные ссылки? Лично для меня это стало большим открытием
5. Мне очень понравилась идея использования content negotiation для версионирования API. Идея простая: клиент передает версию апи в заголовке Content-Type (например Content-Type: application/vnd.example.resource+json; version=2.1.3) и API обязано отдать ответ версии не ниже указанной или 406
6. Если для Вас отключение устаревшего API является большой проблемой, то замечательный Sunset Header может немного подсластить пилюлю
7. Если у вас часто тянут толстые ресурсы, то советую подсмотреть концепцию Delta queries. Это позволит ценой небольшого оверхеда отдавать только ту часть информации, которая изменилась с последнего запроса
8. Ну и закончу, пожалуй, мегахоливарным твитом Филдинга про версионирование. Похоже батя REST'а категорически против версий в url, что не мешает подавляющему большинству API версионироваться именно через url

Если Вы знаете\хотите поделиться своим крутым стандартом API(не важно REST\SOAP\(g)RPC\else) кидайте в комменты, Родина вас не забудет)
2.0K views20:54
Открыть/Комментировать
2021-02-22 11:13:11
Жиза
1.5K views08:13
Открыть/Комментировать
2021-02-17 22:16:22 #management
Пришлось мне тут на днях не очень технически подкованному коллеге объяснять как устроен наш релизный цикл. Для восприятия, конечно же лучше подходит формат картинки, но, как оказалось, нарисовать релизный цикл так, что бы это не превратилось в суп из стрелочек, квадратиков и т.д. довольно сложно.
Перепробовав несколько разных вариантов, нашел вот это. Имхо, если у Вас нет такой картинки, то надо срочно нарисовать, потому что, во-первых, это просто красиво! Для сравнения, аналогичная по смыслу sequence диаграмма выглядит как помесь ежа с ужом(длинная и со стрелками во все стороны). Рисуется все это великолепие за пол часа в draw.io
1.8K views19:16
Открыть/Комментировать
2021-02-09 11:58:29 #книги
Microservices Patterns - Chris Richardson

Наконец-то дочитал эту книгу, потребовалось всего лишь полгода.
Интересная книжка, которая покрывает достаточно широкий спектр проблем, связанных с разделением системы на микросервисы, а также их возможные решения.

Кому интересно: разработчикам и архитекторам, занимающимся построением микросервисных систем.

Что понравилось: книга довольно подробно и постепенно рассказывает о переходе серверного приложения от монолитной к распределенной архитектуре, о том, с какими сложностями это связано, и как их решать. Помимо этого, каждый паттерн сопровождается описанием плюсов и минусов его применения, которым отводится достаточное место.

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

Как гласит название - это книга с примерами на Java. И это как раз та книга, где от их изобилия становится неприятно. Кроме того, автор постоянно рекламирует фреймворк, который разработан его собственным стартапом. В этом, в принципе, ничего плохого нет, но половина из примеров на Java являются примерами по решению задач с использованием этого фреймворка. С какого-то момента я просто начал проматывать листинги, так как толку от них для меня никакого.

Кроме того, что свойственно Java разработке, автор во многих местах начинает очень сильно переусложнять. Главы 4, 5, 6 прямо-таки отличный пример того, почему не стоит применять микросервисную архитектуру - в них показано, как простейшие для монолита вещи можно настолько усложнить, что разгребать придется введением дополнительных паттернов, которые, в свою очередь, придется разгребать еще несколько глав. При этом я так и не увидел, чтобы проблемы тех же распределенных транзакций были решены. Автор оперирует оркестрируемыми сагами так, как будто это простейший в реализации паттерн, учитывая предлагаемые над ним надстройки для приближенного выполнения ACID требований.

На деле это в какой-то момент превращается в абсурд и фарс, поверх которого ровным слоем намазана реклама разработанного автором фреймворка. Неподготовленный читатель может купиться на элегантность, с которой автор описывает эти решения, но на деле это сложнейшие в поддержке архитектурные элементы, которые изобилуют ограничениями и краевыми условиями.

В книге уделяется много внимания объяснению паттернов и дается много примеров их реализации (хоть и на Java). В целом много информации, покрывающей полный цикл разработки микросервисных приложений, начиная от архитектуры и декомпозиции, заканчивая тестированием, развертыванием, мониторингом и запуском в облачных средах. Хорошее пособие для разработчиков микросенвисов, а также неплохая матчасть по этой теме, здорово упорядочивающаяся знания.

В целом книга интересная и довольно хорошая в плане пользы для читателя. Даже несмотря на огромное количество Java листингов, рекламы и явного переусложнения некоторых решений, материал все еще очень полезен для людей, испытывающих проблемы в поддержании и реализации микросервисных систем. Читать однозначно стоит, более того, книга построена таким образом, что к ней можно возвращаться за какими-то уточнениями по реализации паттернов, в конце по ним есть удобный указатель.
1.5K views08:58
Открыть/Комментировать
2021-02-01 10:20:37 По поводу последнего (S02E15) выпуска @generictalks

Дебаг кубов. Я не знаю, что может быть лучше этого. Удивите и скиньте, если есть.

Правда вещь отличная, ты просто идешь по стрелочками и понимаешь, что не так. Обрадую, скорее всего вы получите ответ.

https://learnk8s.io/troubleshooting-deployments
959 views07:20
Открыть/Комментировать
2021-01-28 17:19:31 #management
Наконец-то посмотрел доклад моего хорошего друга Коли Архипова с прошедшего РИТа. Если интересуетесь темой проверки продуктовых гипотез(да и если не интересуетесь ), то крайне рекомендую к просмотру!
1.3K views14:19
Открыть/Комментировать
2021-01-25 21:29:28 А еще я каким-то образом вдруг сделал вклад в опенсорс и написал (ну не только я, а еще с помощью моих коллег из ситимобил) ansible роли для разворачивания victoriametrics.

https://github.com/VictoriaMetrics/ansible-playbooks
1.0K views18:29
Открыть/Комментировать
2021-01-25 14:20:01 #api
Нашел шикарное(хоть и древнее) эссе про дизайн Rest api от чувака который работал над Red Hat Enterprise Virtualization API. Очень рекомендую, узнал много интересного!
Например, вы знали, что если вам нужно уметь работать с версиями ресурсов, то в Rest'е есть нативный механизм для этого под названием variants?
Или про Link headers, позволяющие получить все ссылки из ответа на запрос без парсинга самого ответа?
2.5K views11:20
Открыть/Комментировать
2021-01-22 10:36:57 Вышел Apache Superset 1.0: https://preset.io/blog/2021-01-18-superset-1-0/
1.3K views07:36
Открыть/Комментировать