The document discusses cloud native applications and architectures. It explains that cloud native applications are designed to take advantage of cloud computing abilities like scaling up and down on demand and limitless compute. Being cloud native isn't just an architectural pattern but a combination of practices like agile development, continuous delivery, automation, containers, and microservices that change development culture and move to a DevOps model. It also discusses concepts like serverless computing, functions as a service, microservices, and twelve factor applications.
94. 1. One codebase in version control,
multiple deploys.
2. Explicitly define your dependencies.
3. Configuration must be separate from
the code.
4. Backing services are just attached
resources.
5. Build, release, run.
95. 6. Stateless - share nothing.
7. Export services via port binding.
8. Scale via process.
9. Start up fast, shut down gracefully.
10.Dev/Prod parity.
11.Logs as event streams.
12.Admin tasks run as one off
processes.
178. –Simon Brown
“If you can't build a monolith, what makes
you think microservices are the answer?”
http://www.codingthearchitecture.com/2014/07/06/
distributed_big_balls_of_mud.html
179. Sometimes the right answer is a
modular monolith…
https://www.youtube.com/watch?v=kbKxmEeuvc4
184. Application Server
Authentication
Site Pages
Customer Profile
Management
Search and Discovery Product Catalog
Session Store/
Shopping Cart
Order Processing Fulfillment Analytics
Product Catalog
Manager
Site Manager
Order Fulfillment Application Business Intelligence
Message Queue
185. • Session store
• Cache server
• Search engine
• Time-series database
• Analytics database
• Message Broker