New open source programming framework Jaws claims it can be used to create "serverless applications" on Amazon AWS Lambda -- applications that consist of little more than snippets of code linked by APIs, with no formal server infrastructure.
Unveiled during a breakout session at AWS Re:Invent, Jaws is the brainchild of developer Austen Collins and DoApp engineer Ryan Pendergast. Jaws deploys existing Node.js or Java 8 code to AWS Lambda through a command-line interface, and it imposes a common structure and automation methodology on the lambdas used.
In a slide deck that went public with the breakout session, Collins and Pendergast detailed Jaws' fit in a serverless design, with many of the functions normally handled by a stand-alone server delegated to AWS utilities. Instead of spinning up a full-blown server to handle requests from the Web, Jaws apps can use the AWS API Gateway as a front end.
Jaws can also leverage existing Amazon resources for deployment and management, rather than trying to provide similar features from scratch. This is due in part to Gateway and Lambda automatically handling rate liming and scaling, as well as the availability of logging and metrics in the AWS platform. But Jaws also leverages CloudFormation templates to deploy resources, so again the capabilities are specified through a mechanism familiar to AWS users.
Jaws also helps with cost. The math for a 16,000-request-per-day scenario works out to 5 cents a day for a Lambda app, versus $2.97 each day for two EC2 instances paid a year in advance. Deploying with "as little devops as possible," as the framework's creators put it, is its own benefit, since a Jaws user doesn't need to maintain a server or manage container infrastructure.
One possible concern with Jaws actually reflects more on AWS itself. Since AWS -- Lambda, Gateway, and all -- is proprietary, application lock-ins could result from building Lambda-centric apps with Jaws. That said, Jaws is MIT-licensed, and Amazon's services are among the best-understood and most-emulated (on the API level) in the business.
Jaws is still in an early and protean state, with the last upgrade to 1.3 breaking compatibility with earlier versions for certain features. A product road map details the current and future (1.4-targeted) fixes, with the team concentrating on items like a better workflow for CloudFormations and changes to the REST API after it returns from Re:Invent.