更新时间:2021-06-25 21:51:27
封面
版权信息
Packt Upsell
Why subscribe?
PacktPub.com
Contributors
About the author
About the reviewer
Packt is searching for authors like you
Preface
Who this book is for
What this book covers
To get the most out of this book
Download the example code files
Download the color images
Conventions used
Get in touch
Reviews
Introducing DevOps and Continuous Delivery
Introducing DevOps
How fast is fast?
The Agile wheel of wheels
Beware the cargo cult Agile fallacy
DevOps and ITIL
Summary
A View from Orbit
The DevOps process and CD – an overview
The developers
The Revision Control System
The build server
The artifact repository
Package managers
Test environments
Staging/production
Release management
Scrum Kanban and the delivery pipeline
Wrapping up – a complete example
Identifying bottlenecks
How DevOps Affects Architecture
Introducing software architecture
The monolithic scenario
The Twelve Factors
Factor 1 – code base
Factor 2 – dependencies
Factor 3 – config
Factor 4 – backing services
Factor 5 – build release run
Factor 6 – processes
Factor 7 – port binding
Factor 8 – concurrency
Factor 9 – disposability
Factor 10 – dev/prod parity
Factor 11 – logs
Factor 12 – admin processes
Architecture rules of thumb
The separation of concerns
The principle of cohesion
Coupling
Back to the monolithic scenario
A practical example
Three-tier systems
The presentation tier
The logic tier
The data tier
Handling database migrations
Rolling upgrades
Hello world in Liquibase
The changelog file
The pom.xml file
Manual installation
Microservices
Interlude – Conway's law
How to keep service interfaces forward compatible
Microservices and the data tier
DevOps architecture and resilience
Everything is Code
The need for source code control
The history of source code management
Roles and code
Which source code management system?
A word about source code management system migrations
Choosing a branching strategy
Branching problem areas
Artifact version naming
Choosing a client
Setting up a basic Git server
Shared authentication
Hosted Git servers
Large binary files
Trying out different Git server implementations
Docker intermission
Gerrit
Installing the git-review package
The value of history revisionism
The pull request model
GitLab
Building the Code