Function Pod serves HTTP requests received from the clients. It consists of two containers:
- Environment Container
Fetcher is responsible to pull deployment archive from the StorageSvc and verify the checksum of file to ensure the integrity of file.
Environment Container runs user-defined functions and is language-specific. Each environment container must contain an HTTP server and a loader for functions.
Fig.1 Function Pod
- Fetcher gets the function information from the CRD.
- Pull the deployment archive from the StorageSvc.
- Save the archive to the shared volume.
- Call the specialized endpoint on the environment container to start function specialization.
- Environment Container loads the user function from the volume.
- Start serving the requests from Router.