Cloud Native Applications with Jakarta EE
- Length: 232 pages
- Edition: 1
- Language: English
- Publisher: BPB Publications
- Publication Date: 2021-04-24
- ISBN-10: 9390684897
- ISBN-13: 9789390684892
- Sales Rank: #8733280 (See Top 100 Books)
Deploy serverless and scalable cloud-native applications with Jakarta EE
Key Features
● Example-driven approach crafted specially for developers and architects.
● Covers all core areas for cloud-native development.
● Step-by-step implementation of core concepts, including application scalability and security, serverless, and containerization.
Description
The book helps readers to get a basic understanding of features provided by the cloud and core concepts of cloud native development. A hands-on approach makes sure that after reading the book, one can straight away implement the concepts in their daily design and development activities. The book starts with the basics of cloud computing and moves on to understanding the core concepts to create a production-ready cloud-native application. The book helps readers to develop a code that is testable and maintainable to support Agile cloud native development. This book also talks about the security and scalability aspects of applications which are the backbone of any large-scale application. The book covers advanced cloud native application development approaches using containers and serverless approaches.
The book will help readers to get ready for a cloud native development journey. Whether one is creating a small application or a large scale application, core concepts explained in this book remain relevant and will work as a guiding light for developers and architects.
What you will learn
● Explains the core features that are part of cloud computing.
● Build applications that are fast to market due to testability and maintainability.
● Build applications that are secured against vulnerabilities.
● Build applications that are easy to scale.
Who this book is for
The book is meant for software developers, architects and technical readers who want to learn about Cloud-based application development. Basic knowledge of the Java programming language or Jakarta EE platform is expected to understand code examples used in the book.
Table of Contents
1. Introduction to Cloud Computing
2. Design for Cloud
3. Major Players in Cloud Computing
4. Sample Application Using Jakarta EE
5. Testing Cloud-Native Applications
6. Continuous Integration and Continuous Delivery
7. Securing Cloud-Based Applications
8. Scalability
9. Monitoring, Alerting, and Reporting
10. Containers
11. Serverless Computing
12. Best Practices for Developing Cloud-Native Applications
About the Authors
Kamalmeet Singh, has 16 years of experience in the IT Industry. He has worked in bootstrapping startups as well as Fortune 500 companies. He has worked in different technologies and domains. The technologies he has worked on range from Cloud computing, Machine Learning, Augmented reality, Serverless applications, Microservices, Mobile applications, Java, Python, ROR, C#, and so on.
He has co-authored two books on Java design patterns and microservices. He is passionate about cloud computing and exploring the power of the
LinkedIn profile: https://www.linkedin.com/in/meenukohli78/
Cover Page Title Page Copyright Page Dedication Page About the Author About the Reviewer Acknowledgement Preface Errata Table of Contents 1. Introduction to Cloud Computing Structure Objectives What is Cloud? Pay As You Go How does cloud work? Major service providers for Cloud Understanding IaaS, PaaS, SaaS, and FaaS Traditional software development and deployment Infrastructure as a Service Platform as a Service Software as a Service Functions as a Service Major services provided by cloud Compute Storage Database Networking Security Resource and cost management Additional noteworthy services Summary Questions 2. Design for Cloud Structure Objectives Cloud Native versus Conventional Development From monolithic to microservices Monolith Service-Oriented Architecture Microservices Design factors to be considered for cloud Think in terms of services Design for failure No single point of failure Stay Stateless Fail fast Gracefully handle failure Think scalability Automate Self-healing system Manage data Cache whenever possible Go asynchronous Common mistakes Unoptimized usages Lack of monitoring Design not optimized for cloud Consider containers, serverless, and off the shelf Summary Questions 3. Major Players in Cloud Computing Structure Objectives Amazon Web Services Compute Storage Databases Other services Microsoft’s Azure Compute Storage Databases Other services Google Cloud Other important players Summary Questions 4. Sample Application Using Jakarta EE Structure Objectives What is Jakarta EE? Creating a sample application Creating a Jakarta EE Application Eclipse MicroProfile Using MicroProfile Implementing with Spring Deploying to the cloud Ways to deploy on the cloud Deploying web service with virtual machines Summary Questions 5. Testing Cloud-Native Applications Structure Objectives Unit Testing Integration testing Service Testing End-to-End System Testing Performance Testing Additional testing Test-driven development Static code analysis and code coverage Summary Questions 6. Continuous Integration and Continuous Delivery Structure Objectives CI and CD - An Introduction Branching strategies Feature-based branching Single development branch Infrastructure as code AWS CloudFormation Azure ARM templates Continuous Integration Setting up Jenkins Continuous Integration example Continuous Delivery Continuous Delivery versus Continuous Deployment Why Continuous Delivery? Challenges with Continuous Delivery Continuous Delivery example Cloud support for CI and CD Summary Questions 7. Securing Cloud-Based Applications Structure Objectives Security in Cloud Securing Infrastructure Monitoring infrastructure changes Securing resources in virtual networks Automated deployment of resources Additional security tools Common threats and defence HTTPS - Securing your APIs Encryption DDOS attack Code and SQL Injections Understanding security with an example An E-Commerce example Summary Questions 8. Scalability Structure Objectives Introduction to scalability Cloud-based scalability Compute scalability Database scalability Storage scalability Design for scalability An example implementation of a scalable application Summary Questions 9. Monitoring, Alerting, and Reporting Structure Objectives Need for monitoring Cloud-based monitoring, alerting, and reporting Amazon CloudWatch Step-by-step example of CloudWatch Azure Monitor Cost management in Cloud Application Logs Management Prometheus Prometheus server Pushgateway Alert Manager ELK Stack Elastic Search Logstash Kibana Additional tools for logs management Summary Questions 10. Containers Structure Objectives Introduction to containers Docker Installing Docker Docker commands Docker volumes Kubernetes What is container orchestration? Kubernetes architecture Master node Worker node Example – Container-based application Creating an application with Docker Managing with Kubernetes Summary Questions 11. Serverless Computing Structure Objectives Serverless Computing – An Introduction Functions as a Service Advantages of FaaS Disadvantages of FaaS AWS Lambda Example Hello-World function example AWS Lambda with API Gateway Advanced examples for serverless computing Summary Questions 12. Best Practices for Developing Cloud-Native Applications Structure Objectives Revisiting Cloud-Native development Cloud-native development 12-factor application Factor 1 – Codebase 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 Common design patterns for Cloud-native applications SAGA pattern Choreography based SAGA Orchestration-based SAGA Choreography versus orchestrations CQRS - Command Query Responsibility Segregation Distributed tracing Strangler pattern Service Registry and Discovery Pattern API Gateway Routing and Aggregator Pattern Blue-Green deployment pattern Sidecar pattern Service mesh Bulkhead pattern Circuit breaker pattern Summary Questions Index
Donate to keep this site alive
1. Disable the AdBlock plugin. Otherwise, you may not get any links.
2. Solve the CAPTCHA.
3. Click download link.
4. Lead to download server to download.