Atnaujinkite slapukų nuostatas

Serverless Architectures on AWS 2nd edition [Minkštas viršelis]

3.94/5 (145 ratings by Goodreads)
  • Formatas: Paperback / softback, 290 pages, aukštis x plotis x storis: 232x186x14 mm, weight: 440 g
  • Išleidimo metai: 23-Mar-2022
  • Leidėjas: Manning Publications
  • ISBN-10: 1617295426
  • ISBN-13: 9781617295423
Kitos knygos pagal šią temą:
  • Formatas: Paperback / softback, 290 pages, aukštis x plotis x storis: 232x186x14 mm, weight: 440 g
  • Išleidimo metai: 23-Mar-2022
  • Leidėjas: Manning Publications
  • ISBN-10: 1617295426
  • ISBN-13: 9781617295423
Kitos knygos pagal šią temą:
Serverless Architectures on AWS, Second Edition teaches you how to design, secure, and manage serverless backend APIs for web and mobile applications on the AWS platform. You'll get going quickly with this book's relevant real-world examples, code listings, diagrams, and clearly-described architectures that you can readily apply to your own work. Youll master serverless systems using AWS Lambda and the myriad other services on the AWS platform.

 

This new edition has been fully updated to reflect the newest serverless design best practices and changes to AWS. It features two entirely new chapters dedicated to DevOps, monitoring, and microservices, as well as working with DynamoDB, GraphQL and Kinesis.

 

Key Features

·   First steps with serverless computing

·   The principles of serverless design

·   Transitioning from servers to services

·   Writing AWS Lambda functions and using the API Gateway

 

Audience

This book is for server-side and full-stack software developers with some experience using Node.js and AWS.

 

Author Bio

Peter Sbarski is VP of Engineering at A Cloud Guru and the head organizer of Serverlessconf, the worlds first conference dedicated entirely to serverless architectures and technologies. Throughout his extensive IT career, Peter has led teams across large enterprise solutions with a focus on web and AWS cloud technologies.
preface xiii
acknowledgments xv
About this Book xviii
About the Authors xx
About the Cover Illustration xxii
Part 1 First steps
1(54)
1 Going serverless
3(15)
1.1 What's in a name?
4(1)
1.2 Understanding serverless architectures
5(6)
Service-oriented architecture and microservices
7(1)
Implementing architecture the conventional way
7(2)
Implementing architecture the serverless way
9(2)
1.3 Making the call to go serverless
11(3)
1.4 Serverless pros and cons
14(2)
1.5 What's new in this second edition?
16(2)
2 First steps to serverless
18(22)
2.1 Building a video-encoding pipeline
19(2)
A quick note on AWS costs
19(1)
Using Amazon Web Services (AWS)
20(1)
2.2 Preparing your system
21(8)
Setting up your system
22(1)
Working with Identity and Access Management (JAM)
22(3)
Let's make a bucket
25(1)
Creating an IAM role
26(2)
Using AWS Elemental MediaConvert
28(1)
Using MediaConvert Role
29(1)
2.3 Starting with the Serverless Framework
29(7)
Setting up the Serverless Framework
29(2)
Bringing Serverless Framework to The 24-Hour Video
31(2)
Creating your first Lambda function
33(3)
2.4 Testing in AWS
36(1)
2.5 Looking at logs
37(3)
3 Architectures and patterns
40(15)
3.1 Use cases
40(5)
Backend compute
41(1)
Internet of Things (IoT)
41(1)
Data processing and manipulation
42(1)
Real-time analytics
42(1)
Legacy API proxy
43(1)
Scheduled services
44(1)
Bots and skills
44(1)
Hybrids
44(1)
3.2 Patterns
45(10)
GraphQL
45(1)
Command pattern
46(1)
Messaging pattern
47(2)
Priority queue pattern
49(1)
Fan-out pattern
50(1)
Compute as glue
51(1)
Pipes and filters pattern
52(3)
Part 2 Use cases
55(42)
4 Yubl: Architecture highlights, lessons learned
57(13)
4.1 The original Yubl architecture
58(3)
Scalability problems
59(1)
Performance problems
59(1)
Long feature delivery cycles
59(1)
Why serverless?
60(1)
4.2 The new serverless Yubl architecture
61(3)
Rearchitecting and rewriting
62(1)
The new search API
62(2)
4.3 Migrating to new microservices gracefully
64(6)
5 Cloud Guru: Architecture highlights, lessons learned
70(14)
5.1 The original architecture
71(11)
The journey to 43 microservices
75(2)
What is GraphQL
77(2)
Moving to GraphQL
79(1)
Service discovery
80(2)
Security in the BFF world
82(1)
5.2 Remnants of the legacy
82(2)
6 Yle: Architecture highlights, lessons learned
84(13)
6.1 Ingesting events at scale with Fargate
85(1)
Cost considerations
85(1)
Performance considerations
85(1)
6.2 Processing events in real-time
86(5)
Kinesis Data Streams
86(1)
SQS dead-letter queue (DLQ)
87(1)
The Router Lambda function
88(1)
Kinesis Data Firehose
88(1)
Kinesis Data Analytics
89(1)
Putting it altogether
90(1)
6.3 Lessons learned
91(6)
Know your service limits
91(2)
Build with failure in mind
93(1)
Batching is good for cost and efficiency
94(1)
Cost estimation is tricky
95(2)
Part 3 Practicum
97(68)
7 Building a scheduling service for ad hoc tasks
99(33)
7.1 Defining nonfunctional requirements
101(1)
7.2 Cron job with EventBridge
102(7)
Your scores
104(1)
Our scores
105(2)
Tweaking the solution
107(2)
Final thoughts
109(1)
7.3 DynamoDB TTL
109(4)
Your scores
110(1)
Our scores
111(2)
Final thoughts
113(1)
7.4 Step Functions
113(6)
Your scores
115(1)
Our scores
115(1)
Tweaking the solution
116(3)
Final thoughts
119(1)
7.5 SQS
119(3)
Your scores
120(1)
Our scores
120(2)
Final thoughts
122(1)
7.6 Combining DynamoDB TTL with SQS
122(3)
Your scores
123(1)
Our scores
124(1)
Final thoughts
125(1)
7.7 Choosing the right solution for your application
125(1)
7.8 The applications
125(7)
Your weights
126(1)
Our weights
126(2)
Scoring the solutions for each application
128(4)
8 Architecting serverless parallel computing
132(14)
8.1 Introduction to MapReduce
133(4)
How to transcode a video
134(1)
Architecture overview
135(2)
8.2 Architecture deep dive
137(7)
Maintaining state
138(3)
Step Functions
141(3)
8.3 An alternative architecture
144(2)
9 Code Developer University
146(19)
9.1 Solution overview
147(3)
Requirements listed
147(1)
Solution architecture
148(2)
9.2 The Code Scoring Service
150(3)
Submissions Queue
152(1)
Code Scoring Service summary
153(1)
9.3 Student Profile Service
153(4)
Update Student Scores function
155(2)
9.4 Analytics Service
157(8)
Kinesis Firehose
158(2)
AWS Glue and Amazon Athena
160(3)
QuickSight
163(2)
Part 4 The future
165(30)
10 Blackbelt Lambda
167(16)
10.1 Where to optimize?
167(2)
10.2 Before we get started
169(7)
How a Lambda function handles requests
169(4)
Latency: Cold vs. warm
173(1)
Load generation on your function and application
173(1)
Tracking performance and availability
174(2)
10.3 Optimizing latency
176(4)
Minimize deployment artifact size
176(2)
Allocate sufficient resources to your execution environment
178(1)
Optimize function logic
179(1)
10.4 Concurrency
180(3)
Correlation between requests, latency, and concurrency
181(1)
Managing concurrency
181(2)
11 Emerging practices
183(12)
11.1 Using multiple AWS accounts
184(2)
Isolate security breaches
184(1)
Eliminate contention for shared service limits
185(1)
Better cost monitoring
185(1)
Better autonomy for your teams
185(1)
Infrastructure-as-code for AWS Organizations
186(1)
11.2 Using temporary stacks
186(2)
Common AWS account structure
186(1)
Use temporary stacks for feature branches
187(1)
Use temporary stacks for e2e tests
188(1)
11.3 Avoid sensitive data in plain text in environment variables
188(2)
Attackers can still get in
189(1)
Handle sensitive data securely
189(1)
11.4 Use EventBridge in event-driven architectures
190(5)
Content-based filtering
190(1)
Schema discovery
191(1)
Archive and replay events
191(1)
More targets
192(1)
Topology
192(3)
Appendix A Services for your serverless architecture 195(5)
Appendix B Setting up your cloud 200(12)
Appendix C Deployment frameworks 212(13)
Index 225
Peter Sbarski is VP of Engineering at A Cloud Guru and the head organizer of Serverlessconf, the worlds first conference dedicated entirely to serverless architectures and technologies. Throughout his extensive IT career, Peter has led teams across large enterprise solutions with a focus on web and AWS cloud technologies.