Amazon just recently announced native Golang support for AWS Lambda. Together with the Serverless Application Model (SAM) you can easily deploy your Golang code and create an HTTP interface using Amazon API Gateway.
I created an example project on GitHub with multiple binaries that are deployed using CircleCI and the AWS Command-Line interface. Thanks to the Serverless Application Model the needed CloudFormation template is minimal, compared to creating all resources individually:
AWSTemplateFormatVersion: 2010-09-09 Transform: AWS::Serverless-2016-10-31 Resources: People: Type: AWS::Serverless::Function Properties: Handler: dist/handler/people Runtime: go1.x Tracing: Active Events: GetEvent: Type: Api Properties: Path: /people Method: get
You can easily notice, the Serverless Application Model is heavily influenced by the serverless project. Together with improved AWS performance, using Golang, AWS Lambda, and SAM seem to create a perfect setup to deploy serverless applications.
You can find plenty of frameworks and tools to provision your AWS resources. Some of them do a great job for a specific purpose, others are more generic. Nevertheless, I do prefer to use native CloudFormation templates as much as possible.605 words, posted on May 1
The more projects you work on, the more streamlined your tooling gets. Hopefully. Various services using different languages have different tooling requirements, of course. A sweet Makefile can be the entry to a unified tooling interface.263 words, posted on April 30
With AWS AppSync, it’s easy to run your own serverless GraphQL service API. Thanks to Velocity Mapping Templates, DynamoDB, and AWS Lambda your can aim for an architecture without any maintenance at all.280 words, posted on April 7