Today, we're bringing Serverless Framework Components out of beta, and introducing several new features, including a "serverless dev mode" that enables you to develop on the cloud, via an experience that looks and feels local...
Check out the video overview and register for our Serverless Components Webinar, if you would like to join us.
Serverless Components are a Serverless Framework feature that enables you to deploy applications and use-cases on auto-scaling, pay-per-request, serverless cloud infrastructure—without a lot of infrastructure knowledge.
An example is Serverless Express, one of a handful of Components that are part of today's release. You can use it to rapidly build Express.js applications on AWS Lambda and AWS HTTP API, to deliver an API that auto-scales massively, and only charges you when it runs ($0.0000002 and $0.0000009 per request).
Here are the new features of the GA release, which you can use with Serverless Express and other Components, like Serverless Website, AWS DynamoDB, and more...
Fast Deployments
When it comes to development, speed is a killer feature.
Serverless Components is now powered by our innovative Components Engine, which performs all deployments, and reduces deployment time to under 8 seconds.
With fast deployments, it becomes much easier to develop directly on real cloud services, rather than maintain a local emulation of those services.
Now, you can develop on the same cloud infrastructure your application will use in production, without compromising on development velocity.
Dev Mode
Getting logs from cloud services while developing on them has previously been slow and difficult.
Serverless Components features a new "Dev Mode", which speeds up the feedback cycle during development, just run serverless dev
in your Component.
First, "Dev Mode" watches your code, detects changes and auto-deploys it rapidly using our Components Engine.
Second, when you interact with your application using "Dev Mode", transactions, logs and errors stream from your application to your CLI in real-time.
It looks and feels as fast as if your application is running locally.
Advanced Functionality
Every Component is rich in advanced functionality.
For example, the Express Component can set up a custom domain for you, as well as a free AWS ACM SSL certificate.
This Component also ships with canary deployment support, so you can roll out code changes that affect a subset of your HTTP requests. Just merge in your new experimental code, and set the percentage of requests you wish for it to receive.
Every Component now stores its state automatically in the cloud, so you can easily collaborate on them and run them in CI/CD.
Components also feature better support for staging. Pass in a --stage
flag to deploy a separate instance of your Component.
Lastly, Components export outputs, which are saved in the cloud and therefore easy to reference as inputs for other Components. You can even use outputs from Components in different stages.
Components are free to use with the Serverless Framework. Check them out at https://github.com/serverless/components.