
000
ОтложитьЧитал
Лучшие рецензии на LiveLib:
long399. Оценка 30 из 10
Данную книгу мне дал почитать коллега по работе. Я по роду своей деятельности имею непосредственное отношение к разработке программ с применением микросервисной архитектуры, поэтому я охотно согласился прочитать данный труд. Ранее Криса Рачардсона я не читал, эта книга стала первым знакомством с автором.Сразу хочу сказать, что книга не рассчитана на начинающих программистов. Описываемые в ней термины, технологии, программы и паттерны будут лучше поняты и восприняты более опытными профессионалами.Итак, в чем же прелесть микросервисов, чем они помогают разработчикам и бизнесу? Дело в том, что приложения, написанные с применением этого подхода легче поддерживаются, лучше масштабируются и быстрее доставляются в промышленную среду. Хотя и без недостатков не обошлось: в некоторых случаях разработка и тестирование(сквозное тестирование в частности) микросервисного приложения сложнее и трудозатратнее, чем разработка и тестирование монолитного приложения.Архитектура и проектирование в конечном итоге сводятся к принятию решений. Вам нужно решить, какая архитектура лучше всего подходит для вашего приложения – монолитная или микросервисная. Делая этот выбор, вы должны взвесить большое количество за и против. Если остановитесь на микросервисах, вам придется столкнуться с множеством вызовов.Автор рассматривает в книге конкретный пример программы – «FTGO». Это приложение для доставки пищи из ресторанов. Изначально оно представляет собой монолитное приложение, которое постепенно разделяется на микросервисы. Из него выносятся обособленные части бизнес-логики, такие как «ресторан», «кухня», «заказ» и «доставка». Это позволит назначить на каждую часть свою команду разработки, которая будет отвечать только за данный сервис.В книге описывается ряд методик и паттернов, которые присущи микросервисной архитектуре, например:1) синхронное и асинхронное межпроцессные взаимодействия;2) предметно-ориентированное проектирование;3) управление транзакциями с помощью повествований; повествования на основе хореографии и оркестрации;4) доменные модели и агрегаты;5) порождение событий;6) объединение API и CQRS;7) API-шлюз;8) способы развертывания микросервисов: виртуальные машины, контейнеры, бессерверные платформы (лямбда-функции);9) и многое другое.Также автором рассмотрено и описано множество программ и технологий, которые можно использовать при разработке микросервисов:1) DynamoDB – система управления базами данных класса NoSQL в формате «ключ – значение», предлагаемая Amazon.com как часть пакета Amazon Web Services;2) GraphQL – язык запросов данных и язык манипулирования данными с открытым исходным кодом для построения веб ориентированных программных интерфейсов;3) Gherkin – человеко-читаемый язык для описания поведения системы;4) Docker – программное обеспечение для автоматизации развёртывания и управления приложениями в средах с поддержкой контейнеризации, контейнеризатор приложений;5) Kubernetes – открытое программное обеспечение для оркестровки контейнеризированных приложений, автоматизации их развёртывания, масштабирования и координации в условиях кластера;6) AWS Lambda – платформенная услуга в рамках Amazon Web Services в модели «функция как услуга», обеспечивающая событийно-ориентированные бессерверные вычисления;Это лишь малая часть, того, что Вы можете найти в этой книге.Я рекомендую прочитать ее тем, кто занимается разработкой микросервисов, из книги можно почерпнуть много нового и интересного как по теме разработки, так и по теме администрирования.Небольшими минусами являются пара опечаток, что встретились в книге, и довольно сложная, временами, подача материала. Читать залпом эту книгу не получится, она довольно быстро утомляет, ввиду сложности описываемых тем и технологий.Моя оценка 4/5.
Leseren. Оценка 14 из 10
В первый раз прочитала примерно 1/3. Поняла, что не хватает базы. Ушла учиться.Вернулась уже с определенным бэкграундом. Вот без него читать не советую – белый шум.Описаны актуальные инструменты для разбивки монолита на микросервисы и для создания архитектуры с нуля. Частями можно использовать как инструкцию. Прям пошагово объяснили. Отдельное спасибо Ричардсону за детальное разжовывание модели доменных событий. Наконец-то кто-то написал об этом понятно.Минутка личной боли. Ну почему американцы так любят лирические отступления в профильной литературе? ЗАЧЕМ ОНИ ТАМ? Зачем мне знать, что Мэри любит пить кофе по утрам, а Стив жрет пончики упаковками, пока они там пилят свои микросервисы? Что бы я ассоциировала себя с Мэри? Со Стивом? Да что б им подавиться этими пончиками в свей Силиконовой долине! Страниц 50 текста вообще можно выкинуть!
alexxrin. Оценка 8 из 10
Микросервисы это уже давно очень модно. Об этом все вокруг говорят, все давно хотят раздробить свои монолиты на кучу маленьких монолитиков, но никто не знает как. Приметно такая же задумка/задача/план на будущее стоит и в моей профессиональной деятельности. Есть довольно большое веб приложение и много хотелок на его счёт. Чтобы понять как правильно хотеть и решил почитать данную книгу. И ответов там нашел даже больше чем ожидал. Практически всё расписано по полочкам: как, зачем и почему. Так подробно, что аж даже немного страшно стало переходить на микросервисы, просто раньше не задумывался о сложности подобной архитектуры. Зато и плюсы её теперь стал тоже понимать гораздо отчётливее. В общем, если вы ещё не имели дело с микросервисами, но хотите начать, то эта книга для вас.
Издательство:
Питер (Айлиб)Книги этой серии:
- Экстремальное программирование. Разработка через тестирование
- Как пасти котов. Наставление для программистов, руководящих другими программистами
- Дефрагментация мозга. Софтостроение изнутри
- Чистый код: создание, анализ и рефакторинг (pdf+epub)
- Карьера программиста
- Программист-фанатик
- Отъявленный программист. Лайфхакинг из первых рук
- HTML5 и CSS3. Веб-разработка по стандартам нового поколения
- UML 2.0. Объектно-ориентированное моделирование и разработка
- Идеальный программист. Как стать профессионалом разработки ПО
- Приемы объектно-ориентированного проектирования. Паттерны проектирования
- Приложения для Windows 8 на C# и XAML
- Release it! Проектирование и дизайн ПО для тех, кому не всё равно
- Реактивные шаблоны проектирования (pdf+epub)
- В работу с головой. Паттерны успеха от IT-специалиста
- Swift. Основы разработки приложений под iOS, iPadOS и macOS (pdf + epub)
- Машинное обучение (pdf+epub)
- Kali Linux в действии. Аудит безопасности информационных систем (pdf+epub)
- Изучаем Python. Программирование игр, визуализация данных, веб-приложения (pdf+epub)
- Глубокое обучение. Погружение в мир нейронных сетей
- Психбольница в руках пациентов. Алан Купер об интерфейсах
- Angular и TypeScript. Сайтостроение для профессионалов (pdf+epub)
- С++17 STL. Стандартная библиотека шаблонов
- Хакинг. Искусство эксплойта (pdf+epub)
- Глубокое обучение на Python (pdf+epub)
- Чистая архитектура. Искусство разработки программного обеспечения
- Чистый Python. Тонкости программирования для профи (pdf+epub)
- Глубокое обучение на R (pdf+epub)
- Linux API. Исчерпывающее руководство
- Теоретический минимум по Big Data. Всё что нужно знать о больших данных (pdf+epub)
- Машинное обучение и TensorFlow (pdf+epub)
- Совершенный алгоритм. Основы
- Python. Экспресс-курс (pdf+epub)
- Вероятностное программирование на Python: байесовский вывод и алгоритмы
- Грокаем глубокое обучение (pdf+epub)
- Java для всех (pdf+epub)
- Микросервисы. Паттерны разработки и рефакторинга (pdf+epub)
- Linux в действии (pdf+epub)
- Разработка с использованием квантовых компьютеров (pdf+epub)
- Квантовые вычисления для настоящих айтишников
- Классические задачи Computer Science на языке Python
- Изучаем Python: программирование игр, визуализация данных, веб-приложения
- Глубокое обучение в картинках. Визуальный гид по искусственному интеллекту
- Spring Boot 2: лучшие практики для профессионалов
- Паттерны объектно-ориентированного проектирования
- Время UNIX. A History and a Memoir (pdf + epub)
- Гид по Computer Science. Расширенное издание
- Глубокое обучение: легкая разработка проектов на Python
- Ловушка для багов. Полевое руководство по веб-хакингу (pdf + epub)
- Совершенный алгоритм. Алгоритмы для NP-трудных задач (pdf + epub)
- Vue.js в действии (pdf+epub)
- React быстро (pdf+epub)
- Искусство программирования на R. Погружение в большие данные (pdf+epub)
- Java. Быстрый старт (pdf + epub)
- Python. Быстрый старт (pdf + epub)
- Безопасно by design
- Наглядный CSS
- Scala. Профессиональное программирование
- Обработка естественного языка. Python и spaCy на практике
- Python. Лучшие практики и инструменты
- Байесовская статистика: Star Wars, LEGO, резиновые уточки и многое другое
- Программируй & типизируй. С примерами на TypeScript
- JavaScript с нуля
- Data Science для карьериста
- Облачные архитектуры: разработка устойчивых и экономичных облачных приложений
- Python, например
- Классические задачи Computer Science на языке Java (pdf+epub)
- JavaScript для глубокого обучения: TensorFlow.js (pdf+epub)
- Эффективный C. Профессиональное программирование (pdf+epub)
- {Вы пока еще не знаете JS} Область видимости и замыкания (pdf+epub)
- {Вы пока еще не знаете JS} Познакомьтесь, JavaScript (pdf+epub)
- Путь Python. Черный пояс по разработке, масштабированию, тестированию и развертыванию (+ epub)
- Глубокое обучение с подкреплением на Python. OpenAI Gym и TensorFlow для профи (pdf + epub)
- Стильный Java. Код, который работает всегда и везде
- Глубокое обучение с подкреплением. Теория и практика на языке Python
- System Design. Подготовка к сложному интервью
- Большая книга проектов Python
- Отзывчивый дизайн на HTML5 и CSS3 для любых устройств (pdf + epub)
- Профессиональный бенчмарк. Искусство измерения производительности (pdf + epub)
- Компьютерная графика. Рейтрейсинг и растеризация (pdf+epub)
- Этичный хакинг. Практическое руководство по взлому (pdf+epub)
- Python. Чистый код для продолжающих
- Scala. Профессиональное программирование
- SQL. Быстрое погружение (pdf + epub)
- Теоретический минимум по Computer Science. Сети, криптография и data science (pdf + epub)
- Идеальная работа. Программирование без прикрас
- Управление проектами с нуля (pdf + epub)
- Алгоритмы неформально. Инструкция для начинающих питонистов (pdf + epub)
- Кибердзюцу. Кибербезопасность для современных ниндзя (pdf + epub)
- Тестирование JavaScript
- Грокаем стриминг. Обработка событий в реальном времени
- PyTorch. Освещая глубокое обучение (+ epub)
- Знакомство с Python (+ epub)
- Python без проблем. Решаем реальные задачи и пишем полезный код (+ epub)
- Black Hat Go. Программирование для хакеров и пентестеров (+ epub)
- Создание приложений машинного обучения. От идеи к продукту (+ epub)
- Пять строк кода (+ epub)
- Математические алгоритмы для программистов. 3D-графика, машинное обучение и моделирование на Python (pdf + epub)
- Основы Python для Data Science (pdf + epub)
- Pandas в действии (pdf + epub)
- Kafka Streams и ksqlDB. Данные в реальном времени (pdf + epub)
- Машинное обучение. Портфолио реальных проектов (pdf + epub)
- Внутри CPython. Гид по интерпретатору Python (pdf + epub)
- 40 алгоритмов, которые должен знать каждый программист на Python (pdf + epub)
- Алгоритмы на практике. Решение реальных задач (pdf + epub)
- Объекты. Стильное ООП (pdf + epub)
- Python для хакеров. Нетривиальные задачи и проекты (pdf+epub)
- Software. Ошибки и компромиссы при разработке ПО (pdf+epub)
- Паттерны проектирования API (pdf+epub)
- Код, который умещается в голове: эвристики для разработчиков (pdf+epub)
- Python за 7 дней. Краткий курс для начинающих (pdf+epub)
- README. Суровые реалии разработчиков (pdf+epub)
- Python для data science (pdf+epub)
- SQL Server. Наладка и оптимизация для профессионалов (pdf+epub)
- Аппаратный хакинг: взлом реальных вещей (pdf+epub)
- Рекурсивная книга о рекурсии (pdf+epub)
- JavaScript с нуля до профи (pdf+epub)
- Грокаем функциональное мышление
- Карьера продакт-менеджера. Все что нужно знать для успешной работы в технологической компании
- Грокаем глубокое обучение с подкреплением (pdf + epub)
- Искусство чистого кода (pdf + epub)
- Кодер с улицы. Правила нарушать рекомендуется (pdf + epub)
- Киберкрепость. Всестороннее руководство по компьютерной безопасности
- Прикладные структуры данных и алгоритмы. Прокачиваем навыки (+epub)
- Изучаем vi и Vim. Не просто редакторы (+epub)
- Грокаем функциональное программирование
- Настоящий CTO: думай как технический директор
- Грокаем машинное обучение (pdf + epub)
- Linux для сетевых инженеров (pdf + epub)
- Гейм-дизайн: как создаются игры
- Путь 1С-разработки. Не спеша, эффективно и правильно (pdf + epub)
- Python с нуля (pdf + epub)
- System Design. Машинное обучение. Подготовка к сложному интервью (pdf + epub)
- Основы компиляции: инкрементный подход (pdf + epub)
- Продвинутые алгоритмы и структуры данных (pdf + epub)
- Грокаем Continuous Delivery
- Дизайн для разработчиков (+ epub)
- Тестирование веб-API (+ epub)
- Объектно-ориентированный Python (+ epub)
- Чистый код: создание, анализ и рефакторинг (pdf+epub)
- Основы Dart (pdf+epub)
- Алгоритмы с нуля (pdf+epub)
- Java для опытных разработчиков (pdf+epub)
- Сам себе тестировщик. Пошаговое руководство по тестированию ПО (pdf+epub)
- Основы TypeScript (pdf+epub)
- Антипаттерны SQL. Как избежать ловушек при работе с базами данных (pdf+epub)
- Тюнинг систем. Экспериментирование для инженеров от A/B-тестирования до байесовской оптимизации (pdf+epub)
- Рецепты Python. Коллекция лучших техник программирования (pdf+epub)
- Микросервисы и API (pdf+epub)
- Алгоритмы? Аха! (pdf + epub)
- Программирование на Python с помощью GitHub Copilot и ChatGPT (pdf + epub)
- Hypermedia-разработка. htmx и Hyperview (pdf + epub)
- Поговорим на Python. Разработка ПО для начинающих (pdf + epub)
- Алгоритмы и структуры данных на Python (PDF + EPUB)
- PowerShell: практическая автоматизация. Эффективная разработка скриптов от консоли до облака (PDF + EPUB)
- Грокаем конкурентность
- Тестирование программного обеспечения. Контекстно ориентированный подход (pdf+epub)
- Простое объектно-ориентированное проектирование. Чистый и гибкий код (pdf+epub)
- HTML/CSS. Вся веб-разработка в схемах и иллюстрациях
Метки:
искусство программирования, микросервисы, паттерны программирования, рефакторинг программного кода, системное программирование, технология программирования