舉報

會員
Mastering Microservices with Java 9(Second Edition)
最新章節:
Summary
ThisbookisforJavadeveloperswhoarefamiliarwiththemicroservicesarchitectureandnowwantstotakeadeeperdiveintoeffectivelyimplementingmicroservicesatanenterpriselevel.Areasonableknowledgelevelandunderstandingofcoremicroserviceelementsandapplicationsisexpected.
目錄(273章)
倒序
- 封面
- 版權信息
- Credits
- About the Author
- About the Reviewer
- www.PacktPub.com
- Why subscribe?
- Customer Feedback
- Preface
- What this book covers
- What you need for this book
- Who this book is for
- Conventions
- Reader feedback
- Customer support
- Downloading the example code
- Errata
- Piracy
- Questions
- A Solution Approach
- Evolution of microservices
- Monolithic architecture overview
- Limitation of monolithic architecture versus its solution with microservices
- Traditional monolithic design
- Monolithic design with services
- Services design
- One dimension scalability
- Release rollback in case of failure
- Problems in adopting new technologies
- Alignment with Agile practices
- Ease of development – could be done better
- Microservices build pipeline
- Deployment using a container such as Docker
- Containers
- Docker
- Docker's architecture
- Deployment
- Summary
- Setting Up the Development Environment
- NetBeans IDE installation and setup
- Spring Boot configuration
- Spring Boot overview
- Adding Spring Boot to our main project
- Sample REST program
- Writing the REST controller class
- The @RestController annotation
- The @RequestMapping annotation
- The @RequestParam annotation
- The @PathVariable annotation
- Making a sample REST application executable
- Adding a Jetty-embedded server
- Setting up the application build
- Running the Maven tool
- Executing with the Java command
- REST API testing using the Postman Chrome extension
- Some more positive test scenarios
- Negative test scenarios
- Summary
- Domain-Driven Design
- Domain-driven design fundamentals
- Fundamentals of DDD
- Ubiquitous language
- Multilayered architecture
- Presentation layer
- Application layer
- Domain layer
- Infrastructure layer
- Artifacts of domain-driven design
- Entities
- Value objects
- FAQs
- Services
- Aggregates
- Repository
- Factory
- Modules
- Strategic design and principles
- Bounded context
- Continuous integration
- Context map
- Shared kernel
- Customer-supplier
- Conformist
- Anticorruption layer
- Separate ways
- Open Host Service
- Distillation
- Sample domain service
- Entity implementation
- Repository implementation
- Service implementation
- Summary
- Implementing a Microservice
- OTRS overview
- Developing and implementing microservices
- Restaurant microservice
- OTRS implementation
- Controller class
- API versioning
- Service classes
- Repository classes
- Entity classes
- Registration and discovery service (Eureka service)
- Eureka client
- Booking and user services
- Execution
- Testing
- References
- Summary
- Deployment and Testing
- Mandatory services for good microservices
- Service discovery and registration
- Edge servers
- Load balancing
- Circuit breakers
- Monitoring
- An overview of microservice architecture using Netflix OSS
- Load balancing
- Server-side load balancing
- Client-side load balancing
- Circuit breakers and monitoring
- Using Hystrix's fallback methods
- Monitoring
- Setting up the Hystrix dashboard
- Creating Turbine services
- Building and running the OTRS application
- Microservice deployment using containers
- Installation and configuration
- Docker machine with 4 GB
- Building Docker images with Maven
- Running Docker using Maven
- Integration testing with Docker
- Pushing the image to a registry
- Managing Docker containers
- References
- Summary
- Reactive Microservices
- An overview of the reactive microservice architecture
- Responsive
- Resilient
- Elastic
- Message driven
- Implementing reactive microservices
- Producing an event
- Consuming the event
- References
- Summary
- Securing Microservices
- Enabling Secure Socket Layer
- Authentication and authorization
- OAuth 2.0
- Usage of OAuth
- OAuth 2.0 specification - concise details
- OAuth 2.0 roles
- Resource owner
- Resource server
- Client
- Authorization server
- OAuth 2.0 client registration
- Client types
- Client profiles
- Client identifier
- Client authentication
- OAuth 2.0 protocol endpoints
- Authorization endpoint
- Token endpoint
- Redirection endpoint
- OAuth 2.0 grant types
- Authorization code grant
- Implicit grant
- Resource owner password credentials grant
- Client credentials grant
- OAuth implementation using Spring Security
- Authorization code grant
- Implicit grant
- Resource owner password credential grant
- Client credentials grant
- References
- Summary
- Consuming Services Using a Microservice Web Application
- AngularJS framework overview
- MVC
- MVVM
- Modules
- Providers and services
- Scopes
- Controllers
- Filters
- Directives
- UI-Router
- Development of OTRS features
- Home page/restaurant list page
- index.html
- app.js
- restaurants.js
- restaurants.html
- Search restaurants
- Restaurant details with reservation option
- restaurant.html
- Login page
- login.html
- login.js
- Reservation confirmation
- Setting up the web application
- References
- Summary
- Best Practices and Common Principles
- Overview and mindset
- Best practices and principles
- Nanoservice size and monolithic
- Continuous integration and deployment
- System/end-to-end test automation
- Self-monitoring and logging
- A separate data store for each microservice
- Transaction boundaries
- Microservices frameworks and tools
- Netflix Open Source Software (OSS)
- Build - Nebula
- Deployment and delivery - Spinnaker with Aminator
- Service registration and discovery - Eureka
- Service communication - Ribbon
- Circuit breaker - Hystrix
- Edge (proxy) server - Zuul
- Operational monitoring - Atlas
- Reliability monitoring service - Simian Army
- AWS resource monitoring - Edda
- On-host performance monitoring - Vector
- Distributed configuration management - Archaius
- Scheduler for Apache Mesos - Fenzo
- Cost and cloud utilization - Ice
- Other security tools - Scumblr and FIDO
- Scumblr
- Fully Integrated Defence Operation (FIDO)
- References
- Summary
- Troubleshooting Guide
- Logging and the ELK stack
- A brief overview
- Elasticsearch
- Logstash
- Kibana
- ELK stack setup
- Installing Elasticsearch
- Installing Logstash
- Installing Kibana
- Running the ELK stack using Docker Compose
- Pushing logs to the ELK stack
- Tips for ELK stack implementation
- Use of correlation ID for service calls
- Let's see how we can tackle this problem
- Use of Zipkin and Sleuth for tracking
- Dependencies and versions
- Cyclic dependencies and their impact
- Analyzing dependencies while designing the system
- Maintaining different versions
- Let's explore more
- References
- Summary
- Migrating a Monolithic Application to Microservice-Based Application
- Do you need to migrate?
- Cloud versus on-premise versus both cloud and on-premise
- Cloud only solution
- On-premise only solution
- Both cloud and on-premise solution
- Approaches and keys to successful migration
- Incremental migration
- Process automation and tools setup
- Pilot project
- Standalone user interface applications
- Migrating modules to microservices
- How to accommodate a new functionality during migration
- References
- Summary 更新時間:2021-07-02 21:55:26
推薦閱讀
- Building a Game with Unity and Blender
- PHP基礎案例教程
- Designing Hyper-V Solutions
- 高級C/C++編譯技術(典藏版)
- 正則表達式經典實例(第2版)
- Mastering Apache Spark 2.x(Second Edition)
- C語言程序設計同步訓練與上機指導(第三版)
- 大學計算機基礎實驗指導
- Python之光:Python編程入門與實戰
- Multithreading in C# 5.0 Cookbook
- 物聯網系統架構設計與邊緣計算(原書第2版)
- Using Yocto Project with BeagleBone Black
- Wearable:Tech Projects with the Raspberry Pi Zero
- JavaScript程序設計基礎教程(慕課版)
- 狼書(卷2):Node.js Web應用開發
- GitHub Essentials
- Spark Cookbook
- Node.js入門指南
- IBM AIX 5L/v6系統管理指南
- Instant RubyMine Assimilation
- GraalVM與Java靜態編譯:原理與應用
- JavaScript Projects for Kids
- 大學計算機基礎
- RT-Thread內核實現與應用開發實戰指南:基于STM32
- Scala并發編程(第2版)
- Java程序員面試筆試寶典
- 軟件架構設計:實用方法及實踐
- Python安全攻防:滲透測試實戰指南
- 馴服爛代碼:在編程操練中悟道
- 程序員2007精華本(下)