Skip to content
Snippets Groups Projects
Commit 8734a3a5 authored by Alex Ellis's avatar Alex Ellis
Browse files

Merge branch 'draft_1' of https://github.com/alexellis/faas into draft_1

parents 9656b530 57317167
No related branches found
No related tags found
No related merge requests found
# faas
Functions as a service
# faas - Functions As A Service
This project provides a way to run Docker containers as functions on Swarm Mode.
* Each container has a watchdog process that hosts a web server allowing a JSON post request to be fowarded to a desired process via STDIN. The respose is sent to the caller via STDOUT.
* A gateway provides a view to the containers/functions to the public Internet and collects metrics for Prometheus and in a future version will manage replicas and scale as throughput increases.
Minimum requirements: Docker 1.13
......@@ -10,9 +14,9 @@ This container acts in a similar way to the API Gateway on AWS. Requests can be
Features:
* auto-scaling of replicas as load increases
* backing off of replicas as load reduces
* unique URL routes for serverless functions
* [todo] auto-scaling of replicas as load increases
* [todo] backing off of replicas as load reduces
* [todo] unique URL routes for serverless functions
* instrumentation via Prometheus metrics at GET /metrics
watchdog
......@@ -23,7 +27,7 @@ This binary fwatchdog acts as a watchdog for your function. Features:
* Static binary in Go
* Listens to HTTP requests over swarm overlay network
* Spawns process set in `fprocess` ENV variable for each HTTP connection
* Only lets processes run for set duration i.e. 500ms, 2s, 3s.
* [todo] Only lets processes run for set duration i.e. 500ms, 2s, 3s.
* Language/binding independent
Complete example:
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment