Micro -Service Architecture Design модель модели Служба разделения транзакций Управление транзакциями запросы и кросс -сервисная связь Микро -сервисная архитектура структура разработка дизайна книга дизайнер дизайнер

Вес товара: ~0.7 кг. Указан усредненный вес, который может отличаться от фактического. Не включен в цену, оплачивается при получении.
Описание товара
- Информация о товаре
- Фотографии





C3
Название книги: Модель дизайна архитектуры микросервиса
Автор: Крис Ричардсон Написано и переведено Ю Юн
Цена: 139,00 Юань
Пресса: Machinery Industry Press
ISBN: 9787111624127
Издание: 1


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

Напишите в китайскую версию читателей
Переводчик
Китайское издание Предисловие Один
Китайское издание Предисловие II
Предисловие
введение
Глава 1 побег из одиночного ада/1
1.1 Долгое путешествие к одиночному аду/2
1.1.1 Application Application Architecture/3
1.1.2 Преимущества монолитной архитектуры/4
1.1.3 Что такое одинокий ад/4
1.2 Почему эта книга связана с вами/7
1.3 Что вы узнаете в этой книге/8
1.4 Способ сэкономить: Microservice Architecture/8
1.4.1 Расширенные кубики и услуги/9
1.4.2 Архитектура микросервиса как форма модульности/11
1.4.3 Каждая служба имеет свою собственную базу данных/12
1.4.4ftgo по микросервисной архитектуре/12
1.4.5 Сходства и различия между архитектурой микросервиса и SOA/14
1.5 Преимущества и недостатки микросервисной архитектуры/15
1.5.1 Преимущества микросервисной архитектуры/15
1.5.2 Недостатки микросервисной архитектуры/17
1.6 Язык с образцом архитектуры микросервиса/19
1.6.1 Архитектура микросервиса не“ серебряная бомба”/20
1.6.2 Паттерны и языки шаблонов/21
1.6.3 Обзор языка шаблона микросервисной архитектуры/24
1.7Above Microservices: процесс и организация/29
1.7.1 Организация для разработки и доставки программного обеспечения/30
1.7.2 Процесс разработки и доставки программного обеспечения/31
1.7.3 Человеческий фактор при принятии архитектуры микросервиса/32
Глава 2 Стратегия разделения услуг/34
2.1 Что такое архитектура микросервиса/35
2.1.1 Что такое архитектура программного обеспечения и почему она так важна /35
2.1.2 Что такое стиль архитектуры/37
2.1.3 Microservice Architecture - это архитектурный стиль/40
2.2 Определение архитектуры микросервиса для приложения/43
2.2.1 Определить системные операции/45
2.2.2 Расщепление услуг на основе бизнес -возможностей/50
2.2.3 Расщепление обслуживания в соответствии с субдоменом/53
2.2.4 Руководящие принципы для разделения/54
2.2.5 Трудности при разделении применения отдельных единиц в качестве услуг/56
2.2.6 Определение API обслуживания/59
Глава 3 Межпроцессная связь в микросервисной архитектуре/63
3.1 Обзор межпроцессной связи в микросервисной архитектуре/64
3.1.1 Метод взаимодействия/64
3.1.2 Определение API/66 в архитектуре микросервиса
3.1.3 Эволюция API/67
3.1.4 Формат сообщения/69
3.2 Связь на основе синхронной дистанционной процедуры режим вызовов/70
3.2.1 Используйте отдых/71
3.2.2 Используйте GRPC/74
3.2.3 Используйте режим автоматического выключателя для обработки локальных неисправностей/75
3.2.4 Используйте Service Discovery/78
3.3 Связь на основе асинхронного режима сообщений/82
3.3.1 Что такое сообщения/83
3.3.2 Используйте механизм сообщения для реализации режима взаимодействия/84
3.3.3 Создание спецификаций API для API -интерфейсов на основе механизма сообщений/86
3.3.4 Использование сообщения сообщения/87
3.3.5 Обработка параллелизма и порядка сообщений /91
3.3.6 Обработка дубликатов сообщений/92
3.3.7 Транзакционное сообщение/93
3.3.8 Библиотека классов, связанных с сообщением,/97
3.4 Улучшение доступности с помощью асинхронных сообщений/99
3.4.1 Синхронизировать сообщения для снижения доступности/99
3.4.2 Устранение синхронного взаимодействия/101
Глава 4 Использование SAGA для управления транзакциями/106
4.1 Управление транзакциями в архитектуре микросервиса/107
4.1.1 Требования к распределенным транзакциям в микросервисной архитектуре/108
4.1.2 Проблемы распределенных транзакций/109
4.1.3 Используйте режим SAGA для поддержания согласованности данных/109
4.2saga's Modering Moder/113
4.2.1 Совместная сага/113
4.2.2 Сага оркестровки/117
4.3 Решить проблему изоляции/121
4.3.1 Проблемы, вызванные отсутствием изоляции/122
4.3.2 Контрмеры для реализации изоляции в режиме SAGA/123
4.4 Дизайн orderservice и createordersaga/127
4.4.1orderservice Class/128
4.4.2 Реализация Createordersaga/129
4.4.3 dordercommandhandlers Class/136
4.4.4orderserviceConfiguration Class/138
Глава 5 Дизайн бизнес -логики в микросервисной архитектуре/141
5.1 модель организации бизнес -логики/142
5.1.1 Разработка бизнес -логики с использованием сценария транзакций/143
5.1.2 Дизайн бизнес -логики с использованием модели домена/144
5.1.3 о дизайне с доменом/146
5.2 Модели доменов дизайна с использованием режима агрегации/146
5.2.1 Проблемы, вызванные размытыми границами/147
5.2.2 Агрегация имеет четкие границы/149
5.2.3 Правила для агрегации/150
5.2.4 Размер частиц полимеризации/152
5.2.5. Бизнес -логика дизайна с использованием агрегации/153
5.3 Выпуск полевых событий/154
5.3.1 Почему необходимо опубликовать события/154
5.3.2 Что такое доменное событие/155
5.3.3 Улучшение событий/155
5.3.4 Определите события домена/156
5.3.5 Сгенерировать и публиковать полевые события/157
5.3.6 События в области потребителя/161
Business Logic 5.4 Kitchenservice/162
Бизнес -логика 5.5orderservice/167
5.5.1 агрегация/169
5.5.2erderservice Class/173
Глава 6 Используйте прослеживаемость события для разработки бизнес -логики/176
6.1 Обзор разработки бизнес -логики с использованием трассируемости событий/177
6.1.1 Проблемы с традиционной технологией настойчивости/177
6.1.2 Что такое отслеживание событий/179
6.1.3 Используйте оптимистичные замки для обработки одновременных обновлений/186
6.1.4 События и выпуска событий/186
6.1.5 Используйте снимки для повышения производительности/188
6.1.6 Обработка импотенциальных сообщений/189
6.1.7 Эволюция доменных событий/190
6.1.8 Преимущества отслеживания мероприятий/192
6.1.9 Недостатки трассировки инцидентов/193
6.2 Реализация репозитория событий/194
6.2.1 Какова eventuateLocal Event Repository Works/195
6.2.2 Eventuate Java Client Framework/198
6.3 Используйте сагу и прослеживаемость событий/201
6.3.1 Используйте прослеживаемость события для достижения совместной саги/203
6.3.2 Создать оркестрированную сагу/203
6.3.3 Реализация участников SAGA на основе прослеживаемости событий/205
6.3.4 Реализация саги -оркестратора на основе отслеживания событий/208
Глава 7 Реализация запроса в архитектуре микросервиса/212
7.1 Используйте режим комбинации API для запроса/213
7.1.1findorder () Операция запроса/213
7.1.2 Что такое режим комбинации API/214
7.1.3 Используйте режим комбинации API для реализации операции запроса findorder ()/215
7.1.4 Дизайн дефектов комбинации API/216
7.1.5 Преимущества и недостатки режима комбинации API/219
7.2 Используйте режим CQRS/220
7.2.1 Зачем использовать CQRS/220
7.2.2 Что такое CQRS/223
7.2.3 Преимущества CQRS/226
7.2.4 Недостатки CQRS/227
7.3 Design CQRS View/228
7.3.1 Выберите View Repository/229
7.3.2 Модуль доступа к данным проектирования/230
7.3.3 Добавить и обновить представление CQRS/232
7.4 Реализация представления CQRS на основе AWSDyMamoDB/233
7.4.1 dorderhistoryeventhandlers Module/234
7.4.2 Моделирование данных и дизайн запроса в DynamoDB/235
7.4.3 dorderhistorydaodymanmodb Class/239
Глава 8 Внешний режим API/244
8.1 Дизайн головоломок для внешнего API/245
8.1.1 Дизайн головоломок FTGO Mobile Client API/246
8.1.2 Проблемы проектирования других типов клиентских API/248
8.2Apigateway режим/250
8.2.1 Что такое режим Apigateway/250
8.2.2 Преимущества и недостатки режима Apigateway/256
8.2.3 Apigateway/257 с Netflix в качестве примера
8.2.4 Design's Puzzle/258
8.3 Реализуйте Apigateway/260
8.3.1 Используйте готовые продукты или услуги Apigateway/261
8.3.2 Разработать свой собственный apigateway/262
8.3.3 Реализация apigateway/269 с использованием GraphQL
Глава 9 Стратегии тестирования в архитектуре микросервиса (часть 1)/282
9.1 Обзор стратегий тестирования в микросервисной архитектуре/284
9.1.1 Что такое тест/284
9.1.2 Проблемы испытаний в архитектуре микросервиса/289
9.1.3 ТИПЕВОД развертывания/295
9.2 Написание модульных тестов для услуг/296
9.2.1 Написание модульных тестов для организаций/298
9.2.2 Написание модульных тестов для объектов значения/299
9.2.3 Написание модульных тестов для SAGA/300
9.2.4 Написание модульных тестов для доменных служб/302
9.2.5 Написание модульных тестов для контроллера/303
9.2.6 Написание модульных тестов для обработчиков событий и сообщений/305
Глава 10 Стратегии тестирования в архитектуре микросервиса (часть 2)/308
10.1 Написание интеграционных тестов/308
10.1.1 Интеграционный тест для упорного уровня/311
10.1.2 Интеграционное тестирование для запроса на основе отдыха/адаптивных взаимодействий/312
10.1.3 Интеграционное тестирование для публикации/подписки взаимодействия/316
10.1.4 Интегрированное тестирование контракта для асинхронного запроса/адаптивных взаимодействий/320
10.2 Написание тестов компонентов/324
10.2.1.
10.2.2 Используйте Gherkin для написания приемных тестов/326
10.2.3 Тест компонента проектирования/328
10.2.4 Написание компонентных тестов для FTGO Orderservice/330
10.3
10.3.1 Дизайн сквозного теста/335
10.3.2 Написание сквозных тестов/335
10.3.3 Запустить сквозные тесты/336
Глава 11 Разработка приложений для микросервиса для производственных сред/338
11.1 Разработка безопасных услуг/339
11.1.1 Безопасность традиционных монолитных приложений/340
11.1.2 Реализация безопасности в архитектуре микросервиса/343
11.2 Служба конструкции/349
11.2.1 Используйте внешнюю конфигурацию на основе push/350
11.2.2 Использование внешней конфигурации на основе тяги/352
11.3 Проектируйте наблюдаемые услуги/353
11.3.1 Использование режима API проверки здоровья/355
11.3.2 Использование режима агрегации журнала/357
11.3.3 Используйте режим распределенного отслеживания/358
11.3.4 Использование режима метрик приложений/361
11.3.5 Используйте режим отслеживания исключений/364
11.3.6 Используйте режим журнала аудита/365
11.4 Разработка услуг с использованием базовой модели микросервиса/367
11.4.1 Использование базы микросервисов/368
11.4.2 От базы микросервис. До сервисной сетки/368
Глава 12 Развертывание приложений микросервиса/371
12.1 Режим развертывания: Формат релиза, специфичный для языка программирования/374
12.1.1 Преимущества развертывания с использованием форматов издательских пакетов для конкретного языка программирования/376
12.1.2 Недостатки использования форматов издательских пакетов, специфичных для языка программирования,/377
12.2 Режим развертывания: развернуть службу в качестве виртуальной машины/378
12.2.1 Преимущества развертывания услуг как виртуальные машины/380
12.2.2 Недостатки услуг развертывания в качестве виртуальных машин/380
12.3 Режим развертывания: развернуть службу в качестве контейнера/381
12.3.1 развернуть службу с помощью Docker/383
12.3.2 Преимущества развертывания услуг в качестве контейнеров/385
12.3.3 Недостатки услуг развертывания в качестве контейнеров/386
12.4 Развертывание приложений FTGO с использованием Kubernetes/386
12.4.1 Что такое kubernetes/386
12.4.2 Развертывание ресторанов/389 на Kubernetes
12.4.3 Deploy Apigateway/392
12.4.4 Развертывание времени простоя/393
12.4.5 Используйте сервисную сетку для разделения процесса развертывания и выпуска/394
12.5 Режим развертывания: без сервера развертывание/402
12.5.1 Без сервера развертывание с использованием awslambda/403
12.5.2 Разработка функций Lambda/404
12.5.3 Вызовая лямбда функция/404
12.5.4 Преимущества использования функций Lambda/405
12.5.5 Недостатки использования функций Lambda/406
12.6 Deploy Restful Services/406 с использованием Awslambda и Awsgateway
12.6.1awslambda версия ресторана/407
12.6.2 Пакет Сервис в виде файла ZIP/411
12.6.3 Развертывание функций Lambda/412 с использованием Server Server Framework
Глава 13 Стратегия рефакторинга для архитектуры микросервиса/415
13.1 Проблемы, которые необходимо учитывать для рефакторирования микросервисам/416
13.1.1 Почему реконструировать мономерные приложения/416
13.1.2 Задуманное мономерное приложение/417
13.2 Несколько стратегий рефакторирования монолитных применений в архитектуру микросервиса/420
13.2.1 Реализация новой функции в качестве сервиса/420
13.2.
13.2.3 Извлечение бизнес -возможностей в обслуживание/423
13.3 Сотрудничество между дизайнерскими услугами и частными лицами/429
13.3.1 Дизайн интегрированный клей/430
13.3.2 Поддерживать согласованность данных между услугами и мономерами/434
13.3.3 Обработка аутентификации и разрешения доступа/438
13.4 Реализация новой функции в качестве услуги: обработка неправильных заказов на доставку/440
13.4.1delayedDeliveryService Design/441
13.4.2 Дизайн интегрированный клей для задержки -керниоверсиперсервей/442
13.5 Извлечение функций управления доставкой продуктов питания из синглов/444
13.5.1 Существующие функции управления доставкой продуктов питания/444
13.5.2DeliveryService Обзор/446
13.5.3 Разработка модели домена DeliveryService/447
13.5.4DeliveryService Integrated Glue Design/450
13.5.
......










