The serverless pay-as-you go, on-demand compute model promises the opportunity to focus more of your time on delivering business value and less time managing infrastructure.
However, there are times when a more traditional application server model is appropriate. For instance,
- You started serverless, but are now running into AWS Lambda Limits.
- You have an existing application server and would like a gradual migration path to move routes to serverless.
- You’d like to try out an APIGateway to Lambda front end, and an SQS-backed worker pool in the background.
- You’d like to use the new Application Load Balancer and HTTP/2 or WebSockets together with Lambda.
- You’d like to run #serverless in Docker in #serverless and start a Twitter war.
Beginning with Sparta 0.8.0, you can now:
- Define your service’s responsibility in a single Go application.
- Deploy, in a single CloudFormation operation:
- Specific functions to AWS Lambda.
- A Docker-ized version of the application to ECS.
Sparta can build a statically-linked version of your Go application, create a Docker image from it, push it to the EC2 Container Registry, and provision a CloudFormation stack with the new image.
See SpartaDocker for an example as well as the Sparta documentation. In the next post I’ll walk through how Sparta supports deploying to Docker/ECS and serverless from the same codebase, at the same time.### Sparta 0.8.0 — Make #serverless Servers Great Again

