Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Go Serverless! Stop worrying about infrastructure and ship more

Rob Sutter
January 21, 2020

Go Serverless! Stop worrying about infrastructure and ship more

Do you want to spend more time solving problems and less time fighting infrastructure? Have you heard of serverless but don’t know where to start? This workshop is for you!

In this workshop, you will learn by:
• using Go and the AWS Serverless Application Model (SAM) to create a simple web service using AWS Lambda functions
• testing and debugging your web service locally with SAM
• monitoring and troubleshooting your web service with distributed tracing using AWS X-Ray

After this workshop, you will be able to create your own web services with Go that scale automatically without having to manage any infrastructure.

To get the most benefit from this workshop, you should have Go version 1.11 or later and Docker Community Edition installed. You should already have an introductory level knowledge of the Go language and its build tools, but no prior experience with AWS is required.

Rob Sutter

January 21, 2020
Tweet

More Decks by Rob Sutter

Other Decks in Technology

Transcript

  1. © 2020, Amazon Web Services, Inc. or its Affiliates. Rob

    Sutter GoDays Berlin – 21 January 2020 Go Serverless! Stop worrying about infrastructure and ship more
  2. © 2020, Amazon Web Services, Inc. or its Affiliates. Agenda

    • What is serverless? • Why serverless? • Why Go? • How do we build? • Let’s build!
  3. © 2020, Amazon Web Services, Inc. or its Affiliates. Who

    am I? Rob Sutter – [email protected], @rts_rob • Senior Developer Advocate – Serverless • Gopher (and Scala type – shhh…) • Previously: • Co-founded WorkFone, a SaaS startup • Infrastructure at Le Tote, an e-commerce startup • Consulting, government, odd jobs here and there • The Florida State University, Management Information Systems ‘05
  4. © 2020, Amazon Web Services, Inc. or its Affiliates. What

    is serverless? No infrastructure provisioning, no management Automatic scaling Pay for value Highly available and secure
  5. © 2020, Amazon Web Services, Inc. or its Affiliates. Comparison

    of operational responsibility AWS Lambda Serverless functions AWS Fargate Serverless containers ECS/EKS Container-management as a service EC2 Infrastructure-as-a-Service More opinionated Less opinionated AWS manages Customer manages • Data source integrations • Physical hardware, software, networking, and facilities • Provisioning • Application code • Container orchestration, provisioning • Cluster scaling • Physical hardware, host OS/kernel, networking, and facilities • Application code • Data source integrations • Security config and updates, network config, management tasks • Container orchestration control plane • Physical hardware software, networking, and facilities • Application code • Data source integrations • Work clusters • Security config and updates, network config, firewall, management tasks • Physical hardware software, networking, and facilities • Application code • Data source integrations • Scaling • Security config and updates, network config, management tasks • Provisioning, managing scaling and patching of servers
  6. © 2020, Amazon Web Services, Inc. or its Affiliates. Why

    serverless? • Focus on your customer’s needs • Faster iteration • Greater economic and environmental efficiency • Reduce undifferentiated heavy lifting
  7. © 2020, Amazon Web Services, Inc. or its Affiliates. Why

    Go? • Long support life • Faster cold starts • More performant == cheaper • Type safety • Developer joy!
  8. © 2020, Amazon Web Services, Inc. or its Affiliates. How

    do we build? • Event-driven architectures • AWS Lambda • Amazon API Gateway • Amazon DynamoDB • Amazon CloudWatch • AWS X-Ray
  9. © 2020, Amazon Web Services, Inc. or its Affiliates. AWS

    X-Ray is built for modern applications Analyze and debug issues quickly End-to-end view of individual services Identify customer impact Support for Serverless
  10. © 2020, Amazon Web Services, Inc. or its Affiliates. Let’s

    build! https://golang.serverlessworkshops.io