FaaS applications have many advantages. However, as with most technology, there are also equally as many challenges and tradeoffs.
Functions are not always available in memory. The resulting delay in execution disqualifies FaaS from certain types of applications or forces developers to deploy workarounds that add to the cost of deployment.
Functions deployed to AWS Lambda may become difficult to push to a different cloud provider, especially if other AWS services like S3 or RDS are critical components of your application's architecture.
Testing or reproducing vendor platform functionality on local infrastructure is complex and may rely on community-supported workarounds (e.g., Miniflare).
FaaS platforms are fully managed services obscure to the user and often create unintended costs during peak activity if left unsupervised.
Fully managed platforms may be slow to remediate security issues or may not fully adhere to regulations specific to your business needs (e.g., GDPR, SOX, HIPPA, etc.)
Wasmer enables precompilation of Wasm modules for ultra-fast and responsive startup times.
Wasm modules get compiled to universal binaries that can be adapted to run on any provider's infrastructure quickly.
The Wasmer Runtime makes it possible to run and test all of your service components locally.
Compile legacy server-side code to WebAssembly and run it as a function.
Eliminate extraneous development costs and enable developers to work with languages they know and love.
Wasmer is an open-source runtime for executing WebAssembly on the Server.