3 options
Hands-on serverless applications with Go : build real-world, production-ready applications with AWS Lambda / Mohamed Labouardy.
- Format:
- Book
- Author/Creator:
- Labouardy, Mohamed, author.
- Language:
- English
- Subjects (All):
- Amazon Web Services (Firm).
- Application software--Development.
- Application software.
- Physical Description:
- 1 online resource (403 pages)
- Edition:
- 1st edition
- Place of Publication:
- Birmingham, UK : Packt Publishing, [2018]
- System Details:
- text file
- Biography/History:
- Labouardy Mohamed: Mohamed Labouardy is the CTO and co-founder of Crew, and a DevSecOps evangelist. He is the founder of Komiser, a regular conference speaker, and author of several books around Serverless and Distributed Applications. He is also a contributor to numerous open-source projects such as Jenkins, Docker, and Telegraf.
- Summary:
- Learn to build, secure, deploy, and manage your serverless application in Golang with AWS Lambda Key Features Implement AWS lambda to build scalable and cost-efficient applications in Go Design and set the data flow between cloud services and custom business logic Learn to design Lambda functions using real-world examples and implementation scenarios Book Description Serverless architecture is popular in the tech community due to AWS Lambda. Go is simple to learn, straightforward to work with, and easy to read for other developers; and now it's been heralded as a supported language for AWS Lambda. This book is your optimal guide to designing a Go serverless application and deploying it to Lambda. This book starts with a quick introduction to the world of serverless architecture and its benefits, and then delves into AWS Lambda using practical examples. You'll then learn how to design and build a production-ready application in Go using AWS serverless services with zero upfront infrastructure investment. The book will help you learn how to scale up serverless applications and handle distributed serverless systems in production. You will also learn how to log and test your application. Along the way, you'll also discover how to set up a CI/CD pipeline to automate the deployment process of your Lambda functions. Moreover, you'll learn how to troubleshoot and monitor your apps in near real-time with services such as AWS CloudWatch and X-ray. This book will also teach you how to secure the access with AWS Cognito. By the end of this book, you will have mastered designing, building, and deploying a Go serverless application. What you will learn Understand how AWS Lambda works and use it to create an application Understand how to scaleup serverless applications Design a cost-effective serverless application in AWS Build a highly scalable and fault-tolerant CI/CD pipeline Understand how to troubleshoot and monitor serverless apps in AWS Discover the working of APIs and single page applications Build a production-ready serverless application in Go Who this book is for This book is for Go developers who would like to learn about serverless architecture. Go programming knowledge is assumed. DevOps and Solution Architects who are interested in building serverless applications in Go can also choose this book. Downloading the example code for this book You can download the example code files for all Packt books you have purchased from your account at http:/...
- Contents:
- Cover
- Title Page
- Copyright and Credits
- Packt Upsell
- Contributors
- Table of Contents
- Preface
- Chapter 1: Go Serverless
- The serverless paradigm
- The cloud-computing evolution
- Infrastructure as a Service
- Platform as a Service
- Container as a Service
- Function as a Service
- Serverless architecture
- Benefits of going serverless
- Drawbacks of going serverless
- Serverless cloud providers
- AWS Lambda
- Source events
- Use cases
- Go serverless
- Summary
- Questions
- Chapter 2: Getting Started with AWS Lambda
- Technical requirements
- Setting up the AWS environment
- The AWS command line
- Installing the AWS CLI
- AWS Management Console
- Configuration
- Testing
- Setting up the Go environment
- The runtime environment
- The development environment
- Chapter 3: Developing a Serverless Function with Lambda
- Writing a Lambda function in Go
- Execution role
- Deployment package
- Uploading a ZIP file
- Uploading from Amazon S3
- Event testing
- Chapter 4: Setting up API Endpoints with API Gateway
- Getting started with API Gateway
- Setting up an API endpoint
- Debugging and troubleshooting
- Invoking the function with an HTTP request
- Building a RESTful API
- API architecture
- Endpoints design
- The GET method
- The GET method with parameters
- The POST method
- Chapter 5: Managing Data Persistence with DynamoDB
- Setting up DynamoDB
- Creating a table
- Loading sample data
- Working with DynamoDB
- Scan request
- GetItem request
- PutItem request
- DeleteItem request
- Chapter 6: Deploying Your Serverless Application
- Lambda CLI commands
- The list-functions command
- The create-function command.
- The update-function-code command
- The get-function-configuration command
- The invoke command
- The delete-function command
- Versions and aliases
- Versioning
- FindAllMovies v1.0.0
- FindAllMovies v1.1.0
- Semantic Versioning
- Aliases
- Stage variables
- Chapter 7: Implementing a CI/CD Pipeline
- Continuous Integration and deployment workflow
- Continuous Integration
- Continuous Deployment
- Continuous Delivery
- Automating the deployment of Lambda functions
- Continuous Deployment with CodePipeline and CodeBuild
- Source provider
- Build provider
- Deploy provider
- Continuous Pipeline with Jenkins
- Distributed builds
- Setting up a Jenkins job
- Git Hooks
- Continuous Integration with Circle CI
- Identity and access management
- Configuring the CI Pipeline
- Chapter 8: Scaling Up Your Application
- Load testing and scaling
- Lambda autoscaling
- Downstream resources
- Private Lambda functions
- Concurrent execution
- Lambda throttling
- Concurrency reservation
- Chapter 9: Building the Frontend with S3
- Single Page Application
- Developing web applications with Angular
- Generating your first Angular component
- Accessing Rest web services with Angular
- Cross Origin Resource Sharing
- S3 static website hosting
- Setting up an S3 bucket
- Setting up Route 53
- Certificate Manager
- CloudFront distribution
- CI/CD workflow
- API documentation
- Chapter 10: Testing Your Serverless Application
- Unit testing
- Automated unit tests
- Integration testing
- RPC communications
- Serverless Application Model
- Load testing
- Chapter 11: Monitoring and Troubleshooting.
- Monitoring and debugging with AWS CloudWatch
- CloudWatch metrics
- CloudWatch alarms
- CloudWatch logs
- Tracing with AWS X-Ray
- Chapter 12: Securing Your Serverless Application
- Authentication and user control access
- Securing API access
- User management with AWS Cognito
- Setting up a test user via the AWS Management Console
- Setup using Cognito Golang SDK
- Encrypted environment variables
- Data encryption at rest
- Data encryption in transit
- Logging AWS Lambda API calls with CloudTrail
- Vulnerability scanning for your dependencies
- Chapter 13: Designing Cost-Effective Applications
- Lambda pricing model
- Lambda cost calculator
- Optimal memory size
- Code optimization
- Lambda cost and memory tracking
- Chapter 14: Infrastructure as Code
- Deploying AWS Lambda with Terraform
- Creating the Lambda function
- Setting up DynamoDB table
- Configuring API Gateway
- Cleaning up
- Deploying AWS Lambda with CloudFormation
- CloudFormation designer
- Deploying AWS Lambda with SAM
- Exporting a serverless application
- Assessments
- Other Books You May Enjoy
- Index.
- Notes:
- Description based on print version record.
- ISBN:
- 9781789133837
- 1789133831
- OCLC:
- 1053901428
The Penn Libraries is committed to describing library materials using current, accurate, and responsible language. If you discover outdated or inaccurate language, please fill out this feedback form to report it and suggest alternative language.