Архитектура ИТ-решений
В принципе, этот обзор сервисных сеток https://www.infoq.com/articles/service-mesh-ultimate-guide/ можно было бы пропустить если бы не несколько обстоятельств: 1. Автор Daniel Bryant 2. Полнота обзора и большое количество интересных ссылок внутри него 3.…
InfoQ настойчиво продвигает этот обзор. Вслед за парой картинок появилось и слайд- шоу https://twitter.com/InfoQ/status/1235626270622453760
Twitter
InfoQ
Get ahead of other companies by bringing innovative solutions used by LinkedIn, Airbnb and Google. Learn all you need to know about service meshes: what they are, how they work, etc. https://t.co/ChKgFK0l3G #servicemesh #microservices #istio @kubernetesio…
Шаблон проектирования DDD-агрегата https://domaincentric.net/blog/modelling-aggregates-with-aggregate-design-canvas
Domain Centric
Modelling aggregates with "Aggregate Design Canvas" — Domain Centric
Designing a good aggregate with the right boundaries and clear responsibilities is not a trivial task. A lot of times when I discuss various design options with people, I learn that they rely on gut feeling or implicit heuristics to guide modelling decisions.…
Моя довольно старая заметка с множеством открытых вопросов https://mxsmirnov.com/2014/05/04/technical-debt/ Что думаете?
Архитектура ИТ-решений
Шаблон проектирования DDD-агрегата https://domaincentric.net/blog/modelling-aggregates-with-aggregate-design-canvas
Ну и для полноты коллекции https://medium.com/nick-tune-tech-strategy-blog/bounded-context-canvas-v2-simplifications-and-additions-229ed35f825f
Обязательно посмотрите предыдущую статью Modelling Bounded Contexts with the Bounded Context Canvas: A Workshop Recipe - подробный сценарий воркшопа, включающего в себя сессию EventStorming и последующую обработку её результатов
Обязательно посмотрите предыдущую статью Modelling Bounded Contexts with the Bounded Context Canvas: A Workshop Recipe - подробный сценарий воркшопа, включающего в себя сессию EventStorming и последующую обработку её результатов
Medium
Bounded Context Canvas V3: Simplifications and Additions
Six months ago I shared a blog post introducing the Bounded Context Canvas. Since that post six months, I’ve received feedback from my own…
Мне не нравится термин Multi-Runtime Microservices. Но мне нравится идея: выжать максимум из SideCar паттерна, получившего популярность вместе с решениями класса ServiceMesh. Идея, собственно, в том, чтоб реализовывать общий или повторно-используемый функционал в виде отдельных процессов внутри микросервиса. Эти процессы могут взаимодействовать между собой через сеть, реализуя, например, общие сервисы данных или еще что-либо. В общем, читайте очередное короткое интервью с Bilgin Ibryam, смотрите слайды, задавайте вопросы в группе по кнопке под этим каналом https://www.infoq.com/news/2020/03/multi-runtime-microservices/ Да, и вряд ли это следующая большая вещь, скорее всего только одна из них. Хотя для ИТ-архитектора, конечно, тема крайне занимательная
InfoQ
What Comes after Microservices? Multi-Runtime Microservices with Bilgin Ibryam at QCon London
Bilgin Ibryam talked at QCon London about the evolution of distributed systems on Kubernetes and the future architecture trends. Ibryam said that the next trend would be to decouple infrastructure concerns from microservices. Ibryam calls this multi-runtime…
Гради Буч примерил капитанскую фуражку:
All complex systems will fail, in one way or another. Between the small and the large, between the perfect and the flawed, there is some person or persons who had a vision for the shape of things to come; we call such people “architects”https://twitter.com/Grady_Booch/status/1239742754067845121
Twitter
Grady Booch
All complex systems will fail, in one way or another. Between the small and the large, between the perfect and the flawed, there is some person or persons who had a vision for the shape of things to come; we call such people “architects”
Опрос группе архитекторов (на текущий момент 263 голоса) https://yangx.top/itarchitect/59104 показывает, что больше 40% работают из дома. Это хорошо. Если тема приживется, то может надо будет скоро и резюме обновлять :-D
Telegram
Maxim Smirnov in Архитектура ИТ-решений
Банальный опрос :( сегодня вы работаете
В офисе / Из дома
В офисе / Из дома
Архитектура ИТ-решений
Опрос группе архитекторов (на текущий момент 263 голоса) https://yangx.top/itarchitect/59104 показывает, что больше 40% работают из дома. Это хорошо. Если тема приживется, то может надо будет скоро и резюме обновлять :-D
Больше 400 голосов и 53% - из дома. После трех рабочих дней недели - наступил перевес дистанционщиков. Каким станет мир после этого кризиса даже сложно себе представить. Неужели кому-то еще хочется иметь свой датацентр?
ERyIVTDXkAAAXrS.jpg
38.3 KB
Всё время забываю написать, что в bpmn.io можно делать не привычные конструкторские чертежи, а вполне человеческие скетчи https://github.com/bpmn-io/bpmn-js-sketchy Демо есть здесь: https://cdn.statically.io/gh/bpmn-io/bpmn-js-sketchy/v0.5.0/demo/index.html
18 карточек по книжке Digital Practitioner Body of Knowledge™ Standard https://publications.opengroup.org/n201 Внутри 12 компетенций, 2 странички про сам стандарт и еще 4 чего-то, что я не увидел (похоже, что коллеги спешили) Но карточки неплохие. Надо будет воспользоваться для некоммерческих целей, естественно
Forwarded from Мастерская ИТ-тренера
Не знаю, стоит ли разбираться в GitHub Classroom. Я как-то в гугловском освоился, но может кому пригодится https://github.blog/2020-03-18-set-up-your-digital-classroom-with-github-classroom/
The GitHub Blog
Set up your digital classroom with GitHub Classroom
Many teachers are moving to virtual solutions for managing student assignments, projects, and grading. Join webinars hosted by GitHub Education Experts to share how teachers can manage and organize their class with GitHub Classroom.
офф-топик:
Любой кризис оставляет за собой трущобы унаследованных приложений и обломки незавершенных проектов. ИТ-архитекторы называют это браунфилд. Это хотели переделать, да не успели. А это начали, но потом денег не стало, а потому бросили. В общем, всё как мы любим. Очень скоро заказчики захотят построить поверх этого новые воздушные замки силами сотрудников с удалёнки. Так что архитекторА будут востребованы. Вот только сначала HR-ы пройдутся дружными рядами туда-сюда и можно приступать.Еще одна картинка о жизненном цикле архитектуры решений (solution architecture). От других её принципиально отличает попытка предоставить список возможных вариантов реализации (см. внизу секцию options) https://dalbanger.wordpress.com/2017/05/07/the-solution-architecture-life-cycle/
Thoughts from the Systems front line....
The Solution Architecture Life Cycle
Recently I posted a work in progress picture on Linkedin on the Solution Architecture Lifecycle – with a 1000+ views, I thought I would post a more detailed picture on my blog accompanied with some…
В своем учебном курсе про микросервисы https://itexpert.ru/msa/ (который переезжает в онлайн, ну разумеется) хочу перенести демо/лабы по docker и kubernetes с katakoda.com на какой-либо отечественный kubernetes-as-a-service. Если среди подписчиков кто-то такое предоставляет, напишите, плз. @mxsmirnov
Классификация микросервисов.
Совершенно разные вещи понимают под микросервисами те или иные эксперты. Для кого-то это компоненты без состояния (stateless), участвующие в обработке команд. В другом случае микросервис отвечает не только за обработку, но за хранение данных, причем не только в оперативной памяти, но и на внешних носителях. Часто микросервисом считают реплику данных, предназначенную только для чтения. Один и тот же набор данных может поступать в множество различных представлений, оптимизированных для определенного типа запросов. Все эти случаи разные. И характеристики компонент, называем ли мы их микросервисами или нет, так же различаются. Мы запутаемся если не признаем, что под общим термином мы понимает несколько непохожих вещей. Возможно, классификация микросервисов уже существует, но мне она не известна. В этом случае её придется создать
Совершенно разные вещи понимают под микросервисами те или иные эксперты. Для кого-то это компоненты без состояния (stateless), участвующие в обработке команд. В другом случае микросервис отвечает не только за обработку, но за хранение данных, причем не только в оперативной памяти, но и на внешних носителях. Часто микросервисом считают реплику данных, предназначенную только для чтения. Один и тот же набор данных может поступать в множество различных представлений, оптимизированных для определенного типа запросов. Все эти случаи разные. И характеристики компонент, называем ли мы их микросервисами или нет, так же различаются. Мы запутаемся если не признаем, что под общим термином мы понимает несколько непохожих вещей. Возможно, классификация микросервисов уже существует, но мне она не известна. В этом случае её придется создать
Похожая ситуация была с архитектурным стилем REST. Автор этого стиля Рой Филдинг (Roy Fielding) описал его в своей диссертации немного сложно https://www.ics.uci.edu/~fielding/pubs/dissertation/rest_arch_style.htm Что не помешало разработчикам добавлять слово REST к любым API, реализованным поверх HTTP. И только одно нарушало их энтузиазм. Заметки Филдинга в его блоге о том, что очередной как бы REST API таковым не является
Ситуацию разрядил Leonard Richardson, предложив модель зрелости API по степени их соответствия идеям REST http://restcookbook.com/Miscellaneous/richardsonmaturitymodel/
I am getting frustrated by the number of people calling any HTTP-based interface a REST API. Today’s example is the SocialSite REST API. That is RPC. It screams RPChttps://roy.gbiv.com/untangled/2008/rest-apis-must-be-hypertext-driven
Ситуацию разрядил Leonard Richardson, предложив модель зрелости API по степени их соответствия идеям REST http://restcookbook.com/Miscellaneous/richardsonmaturitymodel/
На мой взгляд, наиболее адекватный сегодняшним технологиям способ классификации взаимодействий между сервисами представлен на рисунке. Любое взаимодействие — это либо команда (command), запрос(query) или событие(event). Команды устремлены в будущее. Они несут намерение клиента изменить состояние ресурса на сервере. Это может произойти при успешной обработке команды, как правило осуществляемой асинхронно, либо не произойти. Запросы не собираются ничего менять. Они хотят предоставить клиенту информацию о текущем состоянии ресурса (это тоже может не всегда получиться). Команды – про настоящее. Вернее, про очень недавнее прошлое. И события – это уведомления сервера о том, что где-то за его границами что-то случилось с одним из ресурсов и сервису может быть интересно об этом узнать. События – следы прошлого. Они не могут закончится неудачей, т.к. уже произошли, хотя сервис, конечно, может их проигнорировать
Архитектура ИТ-решений
18 карточек по книжке Digital Practitioner Body of Knowledge™ Standard https://publications.opengroup.org/n201 Внутри 12 компетенций, 2 странички про сам стандарт и еще 4 чего-то, что я не увидел (похоже, что коллеги спешили) Но карточки неплохие. Надо будет…
The Open Group начал выкладывать этот документ в твиттер https://twitter.com/DPBoK_TM/status/1243150725263302656 по страничкам
Иногда краткий обзор книжки бывает не так уж плох. Нашел такой для знаменитой "Дилеммы инноватора" Клейтона Кристенсена. Всё перечисленное там полностью применимо к ИТ-продуктам