faastjs / faast.js
- суббота, 4 мая 2019 г. в 00:18:12
TypeScript
Serverless batch computing made simple.

Faast.js makes regular functions callable as serverless functions on AWS Lambda and Google Cloud. It handles the details of uploading your code, creating cloud infrastructure, and cleaning up. Scale up your functions to a thousand cores in seconds
Faast.js is a pure library with no service dependencies, operational overhead, or unnecessary complexity.
Faast.js requires node version 8+.
$ npm install faastjsFirst write the functions you want to run in a serverless function. Make sure to export them:
// functions.ts
export function hello(name: string) {
return "hello " + name;
}Use faast.js to turn this into a serverless function:
// main.ts
import { faast } from "faastjs";
import * as funcs from "./functions";
(async () => {
const m = await faast("aws", funcs);
const { hello } = m.functions;
const result = await hello("world!");
console.log(result);
await m.cleanup();
})();Make 1000 concurrent calls if you like:
const promises: string[] = [];
for (let i = 0; i < 1000; i++) {
promises.push(hello(`world ${i}!`));
}
await Promise.all(promises);How much did that cost...?
const cost = await m.costSnapshot();
console.log(`$${cost.total()}`);Relax. It's just half a penny:
$0.00420858
Check out our getting started documentation.
Work through some examples
Review the detailed API documentation.
Join our slack channel. Already joined? sign in.
Follow us on twitter.
See contributing.